diff --git a/3rdparty-extra/win32/accctrl.d b/3rdparty-extra/win32/accctrl.d deleted file mode 100644 index 856ae2eea..000000000 --- a/3rdparty-extra/win32/accctrl.d +++ /dev/null @@ -1,421 +0,0 @@ -/***********************************************************************\ -* accctrl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.accctrl; -version(Windows): - -private import win32.basetyps, win32.w32api, win32.winbase, win32.windef; - -// FIXME: check types and grouping of constants -// FIXME: check Windows version support - -alias LocalFree AccFree; - -const uint - ACTRL_RESERVED = 0x00000000, - ACTRL_ACCESS_PROTECTED = 0x00000001, - ACTRL_ACCESS_ALLOWED = 0x00000001, - ACTRL_ACCESS_DENIED = 0x00000002, - ACTRL_AUDIT_SUCCESS = 0x00000004, - ACTRL_AUDIT_FAILURE = 0x00000008, - ACTRL_SYSTEM_ACCESS = 0x04000000, - ACTRL_DELETE = 0x08000000, - ACTRL_READ_CONTROL = 0x10000000, - ACTRL_CHANGE_ACCESS = 0x20000000, - ACTRL_CHANGE_OWNER = 0x40000000, - ACTRL_SYNCHRONIZE = 0x80000000, - ACTRL_STD_RIGHTS_ALL = 0xf8000000; - -const uint - ACTRL_FILE_READ = 0x00000001, - ACTRL_FILE_WRITE = 0x00000002, - ACTRL_FILE_APPEND = 0x00000004, - ACTRL_FILE_READ_PROP = 0x00000008, - ACTRL_FILE_WRITE_PROP = 0x00000010, - ACTRL_FILE_EXECUTE = 0x00000020, - ACTRL_FILE_READ_ATTRIB = 0x00000080, - ACTRL_FILE_WRITE_ATTRIB = 0x00000100, - ACTRL_FILE_CREATE_PIPE = 0x00000200; - -const uint - ACTRL_DIR_LIST = 0x00000001, - ACTRL_DIR_CREATE_OBJECT = 0x00000002, - ACTRL_DIR_CREATE_CHILD = 0x00000004, - ACTRL_DIR_DELETE_CHILD = 0x00000040, - ACTRL_DIR_TRAVERSE = 0x00000020; - -const uint - ACTRL_KERNEL_TERMINATE = 0x00000001, - ACTRL_KERNEL_THREAD = 0x00000002, - ACTRL_KERNEL_VM = 0x00000004, - ACTRL_KERNEL_VM_READ = 0x00000008, - ACTRL_KERNEL_VM_WRITE = 0x00000010, - ACTRL_KERNEL_DUP_HANDLE = 0x00000020, - ACTRL_KERNEL_PROCESS = 0x00000040, - ACTRL_KERNEL_SET_INFO = 0x00000080, - ACTRL_KERNEL_GET_INFO = 0x00000100, - ACTRL_KERNEL_CONTROL = 0x00000200, - ACTRL_KERNEL_ALERT = 0x00000400, - ACTRL_KERNEL_GET_CONTEXT = 0x00000800, - ACTRL_KERNEL_SET_CONTEXT = 0x00001000, - ACTRL_KERNEL_TOKEN = 0x00002000, - ACTRL_KERNEL_IMPERSONATE = 0x00004000, - ACTRL_KERNEL_DIMPERSONATE = 0x00008000; - -const uint - ACTRL_PRINT_SADMIN = 0x00000001, - ACTRL_PRINT_SLIST = 0x00000002, - ACTRL_PRINT_PADMIN = 0x00000004, - ACTRL_PRINT_PUSE = 0x00000008, - ACTRL_PRINT_JADMIN = 0x00000010; - -const uint - ACTRL_SVC_GET_INFO = 0x00000001, - ACTRL_SVC_SET_INFO = 0x00000002, - ACTRL_SVC_STATUS = 0x00000004, - ACTRL_SVC_LIST = 0x00000008, - ACTRL_SVC_START = 0x00000010, - ACTRL_SVC_STOP = 0x00000020, - ACTRL_SVC_PAUSE = 0x00000040, - ACTRL_SVC_INTERROGATE = 0x00000080, - ACTRL_SVC_UCONTROL = 0x00000100; - -const uint - ACTRL_REG_QUERY = 0x00000001, - ACTRL_REG_SET = 0x00000002, - ACTRL_REG_CREATE_CHILD = 0x00000004, - ACTRL_REG_LIST = 0x00000008, - ACTRL_REG_NOTIFY = 0x00000010, - ACTRL_REG_LINK = 0x00000020; - -const uint - ACTRL_WIN_CLIPBRD = 0x00000001, - ACTRL_WIN_GLOBAL_ATOMS = 0x00000002, - ACTRL_WIN_CREATE = 0x00000004, - ACTRL_WIN_LIST_DESK = 0x00000008, - ACTRL_WIN_LIST = 0x00000010, - ACTRL_WIN_READ_ATTRIBS = 0x00000020, - ACTRL_WIN_WRITE_ATTRIBS = 0x00000040, - ACTRL_WIN_SCREEN = 0x00000080, - ACTRL_WIN_EXIT = 0x00000100; - -enum : uint { - ACTRL_ACCESS_NO_OPTIONS = 0x00000000, - ACTRL_ACCESS_SUPPORTS_OBJECT_ENTRIES = 0x00000001 -} - -const TCHAR[] ACCCTRL_DEFAULT_PROVIDER = "Windows NT Access Provider"; - -const uint - TRUSTEE_ACCESS_ALLOWED = 0x00000001, - TRUSTEE_ACCESS_READ = 0x00000002, - TRUSTEE_ACCESS_WRITE = 0x00000004, - TRUSTEE_ACCESS_EXPLICIT = 0x00000001, - TRUSTEE_ACCESS_READ_WRITE = 0x00000006, - TRUSTEE_ACCESS_ALL = 0xFFFFFFFF; - -const uint - NO_INHERITANCE = 0x0, - SUB_OBJECTS_ONLY_INHERIT = 0x1, - SUB_CONTAINERS_ONLY_INHERIT = 0x2, - SUB_CONTAINERS_AND_OBJECTS_INHERIT = 0x3, - INHERIT_NO_PROPAGATE = 0x4, - INHERIT_ONLY = 0x8, - INHERITED_ACCESS_ENTRY = 0x10, - INHERITED_PARENT = 0x10000000, - INHERITED_GRANDPARENT = 0x20000000; - -alias ULONG INHERIT_FLAGS, ACCESS_RIGHTS; -alias ULONG* PINHERIT_FLAGS, PACCESS_RIGHTS; - -enum ACCESS_MODE { - NOT_USED_ACCESS, - GRANT_ACCESS, - SET_ACCESS, - DENY_ACCESS, - REVOKE_ACCESS, - SET_AUDIT_SUCCESS, - SET_AUDIT_FAILURE -} - -enum SE_OBJECT_TYPE { - SE_UNKNOWN_OBJECT_TYPE, - SE_FILE_OBJECT, - SE_SERVICE, - SE_PRINTER, - SE_REGISTRY_KEY, - SE_LMSHARE, - SE_KERNEL_OBJECT, - SE_WINDOW_OBJECT, - SE_DS_OBJECT, - SE_DS_OBJECT_ALL, - SE_PROVIDER_DEFINED_OBJECT, - SE_WMIGUID_OBJECT, - SE_REGISTRY_WOW64_32KEY -} - -enum TRUSTEE_TYPE { - TRUSTEE_IS_UNKNOWN, - TRUSTEE_IS_USER, - TRUSTEE_IS_GROUP, - TRUSTEE_IS_DOMAIN, - TRUSTEE_IS_ALIAS, - TRUSTEE_IS_WELL_KNOWN_GROUP, - TRUSTEE_IS_DELETED, - TRUSTEE_IS_INVALID, - TRUSTEE_IS_COMPUTER -} - -enum TRUSTEE_FORM { - TRUSTEE_IS_SID, - TRUSTEE_IS_NAME, - TRUSTEE_BAD_FORM, - TRUSTEE_IS_OBJECTS_AND_SID, - TRUSTEE_IS_OBJECTS_AND_NAME -} - -enum MULTIPLE_TRUSTEE_OPERATION { - NO_MULTIPLE_TRUSTEE, - TRUSTEE_IS_IMPERSONATE -} - -struct TRUSTEE_A { - TRUSTEE_A* pMultipleTrustee; - MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation; - TRUSTEE_FORM TrusteeForm; - TRUSTEE_TYPE TrusteeType; - LPSTR ptstrName; -} -alias TRUSTEE_A TRUSTEEA; -alias TRUSTEE_A* PTRUSTEE_A, PTRUSTEEA; - -struct TRUSTEE_W { - TRUSTEE_W* pMultipleTrustee; - MULTIPLE_TRUSTEE_OPERATION MultipleTrusteeOperation; - TRUSTEE_FORM TrusteeForm; - TRUSTEE_TYPE TrusteeType; - LPWSTR ptstrName; -} -alias TRUSTEE_W TRUSTEEW; -alias TRUSTEEW* PTRUSTEE_W, PTRUSTEEW; - -struct ACTRL_ACCESS_ENTRYA { - TRUSTEE_A Trustee; - ULONG fAccessFlags; - ACCESS_RIGHTS Access; - ACCESS_RIGHTS ProvSpecificAccess; - INHERIT_FLAGS Inheritance; - LPCSTR lpInheritProperty; -} -alias ACTRL_ACCESS_ENTRYA* PACTRL_ACCESS_ENTRYA; - -struct ACTRL_ACCESS_ENTRYW { - TRUSTEE_W Trustee; - ULONG fAccessFlags; - ACCESS_RIGHTS Access; - ACCESS_RIGHTS ProvSpecificAccess; - INHERIT_FLAGS Inheritance; - LPCWSTR lpInheritProperty; -} -alias ACTRL_ACCESS_ENTRYW* PACTRL_ACCESS_ENTRYW; - -struct ACTRL_ACCESS_ENTRY_LISTA { - ULONG cEntries; - ACTRL_ACCESS_ENTRYA* pAccessList; -} -alias ACTRL_ACCESS_ENTRY_LISTA* PACTRL_ACCESS_ENTRY_LISTA; - -struct ACTRL_ACCESS_ENTRY_LISTW { - ULONG cEntries; - ACTRL_ACCESS_ENTRYW* pAccessList; -} -alias ACTRL_ACCESS_ENTRY_LISTW* PACTRL_ACCESS_ENTRY_LISTW; - -struct ACTRL_PROPERTY_ENTRYA { - LPCSTR lpProperty; - PACTRL_ACCESS_ENTRY_LISTA pAccessEntryList; - ULONG fListFlags; -} -alias ACTRL_PROPERTY_ENTRYA* PACTRL_PROPERTY_ENTRYA; - -struct ACTRL_PROPERTY_ENTRYW { - LPCWSTR lpProperty; - PACTRL_ACCESS_ENTRY_LISTW pAccessEntryList; - ULONG fListFlags; -} -alias ACTRL_PROPERTY_ENTRYW* PACTRL_PROPERTY_ENTRYW; - -struct ACTRL_ACCESSA { - ULONG cEntries; - PACTRL_PROPERTY_ENTRYA pPropertyAccessList; -} -alias ACTRL_ACCESSA ACTRL_AUDITA; -alias ACTRL_ACCESSA* PACTRL_ACCESSA, PACTRL_AUDITA; - -struct ACTRL_ACCESSW { - ULONG cEntries; - PACTRL_PROPERTY_ENTRYW pPropertyAccessList; -} -alias ACTRL_ACCESSW ACTRL_AUDITW; -alias ACTRL_ACCESSW* PACTRL_ACCESSW, PACTRL_AUDITW; - -struct TRUSTEE_ACCESSA { - LPSTR lpProperty; - ACCESS_RIGHTS Access; - ULONG fAccessFlags; - ULONG fReturnedAccess; -} -alias TRUSTEE_ACCESSA* PTRUSTEE_ACCESSA; - -struct TRUSTEE_ACCESSW { - LPWSTR lpProperty; - ACCESS_RIGHTS Access; - ULONG fAccessFlags; - ULONG fReturnedAccess; -} -alias TRUSTEE_ACCESSW* PTRUSTEE_ACCESSW; - -struct ACTRL_OVERLAPPED { - union { - PVOID Provider; - ULONG Reserved1; - } - ULONG Reserved2; - HANDLE hEvent; -} -alias ACTRL_OVERLAPPED* PACTRL_OVERLAPPED; - -struct ACTRL_ACCESS_INFOA { - ULONG fAccessPermission; - LPSTR lpAccessPermissionName; -} -alias ACTRL_ACCESS_INFOA* PACTRL_ACCESS_INFOA; - -struct ACTRL_ACCESS_INFOW { - ULONG fAccessPermission; - LPWSTR lpAccessPermissionName; -} -alias ACTRL_ACCESS_INFOW* PACTRL_ACCESS_INFOW; - -struct ACTRL_CONTROL_INFOA { - LPSTR lpControlId; - LPSTR lpControlName; -} -alias ACTRL_CONTROL_INFOA* PACTRL_CONTROL_INFOA; - -struct ACTRL_CONTROL_INFOW { - LPWSTR lpControlId; - LPWSTR lpControlName; -} -alias ACTRL_CONTROL_INFOW* PACTRL_CONTROL_INFOW; - -struct EXPLICIT_ACCESS_A { - DWORD grfAccessPermissions; - ACCESS_MODE grfAccessMode; - DWORD grfInheritance; - TRUSTEE_A Trustee; -} -alias EXPLICIT_ACCESS_A EXPLICIT_ACCESSA; -alias EXPLICIT_ACCESS_A* PEXPLICIT_ACCESS_A, PEXPLICIT_ACCESSA; - -struct EXPLICIT_ACCESS_W { - DWORD grfAccessPermissions; - ACCESS_MODE grfAccessMode; - DWORD grfInheritance; - TRUSTEE_W Trustee; -} -alias EXPLICIT_ACCESS_W EXPLICIT_ACCESSW; -alias EXPLICIT_ACCESS_W* PEXPLICIT_ACCESS_W, PEXPLICIT_ACCESSW; - -struct OBJECTS_AND_SID { - DWORD ObjectsPresent; - GUID ObjectTypeGuid; - GUID InheritedObjectTypeGuid; - SID* pSid; -} -alias OBJECTS_AND_SID* POBJECTS_AND_SID; - -struct OBJECTS_AND_NAME_A { - DWORD ObjectsPresent; - SE_OBJECT_TYPE ObjectType; - LPSTR ObjectTypeName; - LPSTR InheritedObjectTypeName; - LPSTR ptstrName; -} -alias OBJECTS_AND_NAME_A* POBJECTS_AND_NAME_A; - -struct OBJECTS_AND_NAME_W { - DWORD ObjectsPresent; - SE_OBJECT_TYPE ObjectType; - LPWSTR ObjectTypeName; - LPWSTR InheritedObjectTypeName; - LPWSTR ptstrName; -} -alias OBJECTS_AND_NAME_W* POBJECTS_AND_NAME_W; - -static if (_WIN32_WINNT >= 0x501) { - struct INHERITED_FROMA { - LONG GenerationGap; - LPSTR AncestorName; - } - alias INHERITED_FROMA* PINHERITED_FROMA; - - struct INHERITED_FROMW { - LONG GenerationGap; - LPWSTR AncestorName; - } - alias INHERITED_FROMW* PINHERITED_FROMW; -} - -version (Unicode) { - alias TRUSTEEW TRUSTEE; - alias ACTRL_ACCESSW ACTRL_ACCESS; - alias ACTRL_ACCESS_ENTRY_LISTW ACTRL_ACCESS_ENTRY_LIST; - alias ACTRL_ACCESS_INFOW ACTRL_ACCESS_INFO; - alias ACTRL_ACCESS_ENTRYW ACTRL_ACCESS_ENTRY; - alias ACTRL_AUDITW ACTRL_AUDIT; - alias ACTRL_CONTROL_INFOW ACTRL_CONTROL_INFO; - alias EXPLICIT_ACCESSW EXPLICIT_ACCESS; - alias TRUSTEE_ACCESSW TRUSTEE_ACCESS; - alias OBJECTS_AND_NAME_W OBJECTS_AND_NAME_; - static if (_WIN32_WINNT >= 0x501) { - alias INHERITED_FROMW INHERITED_FROM; - } -} else { - alias TRUSTEEA TRUSTEE; - alias ACTRL_ACCESSA ACTRL_ACCESS; - alias ACTRL_ACCESS_ENTRY_LISTA ACTRL_ACCESS_ENTRY_LIST; - alias ACTRL_ACCESS_INFOA ACTRL_ACCESS_INFO; - alias ACTRL_ACCESS_ENTRYA ACTRL_ACCESS_ENTRY; - alias ACTRL_AUDITA ACTRL_AUDIT; - alias ACTRL_CONTROL_INFOA ACTRL_CONTROL_INFO; - alias EXPLICIT_ACCESSA EXPLICIT_ACCESS; - alias TRUSTEE_ACCESSA TRUSTEE_ACCESS; - alias OBJECTS_AND_NAME_A OBJECTS_AND_NAME_; - static if (_WIN32_WINNT >= 0x501) { - alias INHERITED_FROMA INHERITED_FROM; - } -} - -alias TRUSTEE TRUSTEE_; -alias TRUSTEE* PTRUSTEE, PTRUSTEE_; -alias ACTRL_ACCESS* PACTRL_ACCESS; -alias ACTRL_ACCESS_ENTRY_LIST* PACTRL_ACCESS_ENTRY_LIST; -alias ACTRL_ACCESS_INFO* PACTRL_ACCESS_INFO; -alias ACTRL_ACCESS_ENTRY* PACTRL_ACCESS_ENTRY; -alias ACTRL_AUDIT* PACTRL_AUDIT; -alias ACTRL_CONTROL_INFO* PACTRL_CONTROL_INFO; -alias EXPLICIT_ACCESS EXPLICIT_ACCESS_; -alias EXPLICIT_ACCESS* PEXPLICIT_ACCESS, PEXPLICIT_ACCESS_; -alias TRUSTEE_ACCESS* PTRUSTEE_ACCESS; -alias OBJECTS_AND_NAME_* POBJECTS_AND_NAME_; -static if (_WIN32_WINNT >= 0x501) { - alias INHERITED_FROM* PINHERITED_FROM; -} diff --git a/3rdparty-extra/win32/aclapi.d b/3rdparty-extra/win32/aclapi.d deleted file mode 100644 index 712210306..000000000 --- a/3rdparty-extra/win32/aclapi.d +++ /dev/null @@ -1,138 +0,0 @@ -/***********************************************************************\ -* aclapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.aclapi; -version(Windows): -pragma(lib, "advapi32"); - -import win32.windows, win32.accctrl; - -extern (Windows) { - VOID BuildExplicitAccessWithNameA(PEXPLICIT_ACCESS_A, LPSTR, DWORD, - ACCESS_MODE, DWORD); - VOID BuildExplicitAccessWithNameW(PEXPLICIT_ACCESS_W, LPWSTR, DWORD, - ACCESS_MODE, DWORD); - DWORD BuildSecurityDescriptorA(PTRUSTEE_A, PTRUSTEE_A , ULONG, - PEXPLICIT_ACCESS_A, ULONG, PEXPLICIT_ACCESS_A, PSECURITY_DESCRIPTOR, - PULONG, PSECURITY_DESCRIPTOR*); - DWORD BuildSecurityDescriptorW(PTRUSTEE_W, PTRUSTEE_W , ULONG, - PEXPLICIT_ACCESS_W, ULONG, PEXPLICIT_ACCESS_W, PSECURITY_DESCRIPTOR, - PULONG, PSECURITY_DESCRIPTOR*); - VOID BuildTrusteeWithNameA(PTRUSTEE_A, LPSTR); - VOID BuildTrusteeWithNameW(PTRUSTEE_W, LPWSTR); - VOID BuildTrusteeWithObjectsAndNameA(PTRUSTEE_A, POBJECTS_AND_NAME_A, - SE_OBJECT_TYPE, LPSTR, LPSTR, LPSTR); - VOID BuildTrusteeWithObjectsAndNameW(PTRUSTEE_W, POBJECTS_AND_NAME_W, - SE_OBJECT_TYPE, LPWSTR, LPWSTR, LPWSTR); - VOID BuildTrusteeWithObjectsAndSidA(PTRUSTEE_A, POBJECTS_AND_SID, - GUID*, GUID*, PSID); - VOID BuildTrusteeWithObjectsAndSidW(PTRUSTEE_W, POBJECTS_AND_SID, - GUID*, GUID*, PSID); - VOID BuildTrusteeWithSidA(PTRUSTEE_A, PSID); - VOID BuildTrusteeWithSidW(PTRUSTEE_W, PSID); - DWORD GetAuditedPermissionsFromAclA(PACL, PTRUSTEE_A, PACCESS_MASK, - PACCESS_MASK); - DWORD GetAuditedPermissionsFromAclW(PACL, PTRUSTEE_W, PACCESS_MASK, - PACCESS_MASK); - DWORD GetEffectiveRightsFromAclA(PACL, PTRUSTEE_A, PACCESS_MASK); - DWORD GetEffectiveRightsFromAclW(PACL, PTRUSTEE_W, PACCESS_MASK); - DWORD GetExplicitEntriesFromAclA(PACL, PULONG, PEXPLICIT_ACCESS_A*); - DWORD GetExplicitEntriesFromAclW(PACL, PULONG, PEXPLICIT_ACCESS_W*); - static if (_WIN32_WINNT >= 0x501) { - DWORD GetInheritanceSourceA(LPSTR, SE_OBJECT_TYPE, - SECURITY_INFORMATION, BOOL, GUID**, DWORD, PACL, void*, - PGENERIC_MAPPING, PINHERITED_FROMA); - DWORD GetInheritanceSourceW(LPWSTR, SE_OBJECT_TYPE, - SECURITY_INFORMATION, BOOL, GUID**, DWORD, PACL, void*, - PGENERIC_MAPPING, PINHERITED_FROMW); - } - DWORD GetNamedSecurityInfoA(LPSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION, - PSID*, PSID*, PACL*, PACL*, PSECURITY_DESCRIPTOR*); - DWORD GetNamedSecurityInfoW(LPWSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION, - PSID*, PSID*, PACL*, PACL*, PSECURITY_DESCRIPTOR*); - DWORD GetSecurityInfo(HANDLE, SE_OBJECT_TYPE, SECURITY_INFORMATION, - PSID*, PSID*, PACL*, PACL*, PSECURITY_DESCRIPTOR*); - TRUSTEE_FORM GetTrusteeFormA(PTRUSTEE_A); - TRUSTEE_FORM GetTrusteeFormW(PTRUSTEE_W); - LPSTR GetTrusteeNameA(PTRUSTEE_A); - LPWSTR GetTrusteeNameW(PTRUSTEE_W); - TRUSTEE_TYPE GetTrusteeTypeA(PTRUSTEE_A); - TRUSTEE_TYPE GetTrusteeTypeW(PTRUSTEE_W); - DWORD LookupSecurityDescriptorPartsA(PTRUSTEE_A*, PTRUSTEE_A*, PULONG, - PEXPLICIT_ACCESS_A*, PULONG, PEXPLICIT_ACCESS_A*, - PSECURITY_DESCRIPTOR); - DWORD LookupSecurityDescriptorPartsW(PTRUSTEE_W*, PTRUSTEE_W*, PULONG, - PEXPLICIT_ACCESS_W*, PULONG, PEXPLICIT_ACCESS_W*, - PSECURITY_DESCRIPTOR); - DWORD SetEntriesInAclA(ULONG, PEXPLICIT_ACCESS_A, PACL, PACL*); - DWORD SetEntriesInAclW(ULONG, PEXPLICIT_ACCESS_W, PACL, PACL*); - DWORD SetNamedSecurityInfoA(LPSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION, - PSID, PSID, PACL, PACL); - DWORD SetNamedSecurityInfoW(LPWSTR, SE_OBJECT_TYPE, SECURITY_INFORMATION, - PSID, PSID, PACL, PACL); - DWORD SetSecurityInfo(HANDLE, SE_OBJECT_TYPE, SECURITY_INFORMATION, PSID, - PSID, PACL, PACL); - VOID BuildImpersonateExplicitAccessWithNameA(PEXPLICIT_ACCESS_A, LPSTR, - PTRUSTEE_A, DWORD, ACCESS_MODE, DWORD); - VOID BuildImpersonateExplicitAccessWithNameW(PEXPLICIT_ACCESS_W, LPWSTR, - PTRUSTEE_W, DWORD, ACCESS_MODE, DWORD); - VOID BuildImpersonateTrusteeA(PTRUSTEE_A, PTRUSTEE_A); - VOID BuildImpersonateTrusteeW(PTRUSTEE_W, PTRUSTEE_W); - PTRUSTEE_A GetMultipleTrusteeA(PTRUSTEE_A); - PTRUSTEE_W GetMultipleTrusteeW(PTRUSTEE_W); - MULTIPLE_TRUSTEE_OPERATION GetMultipleTrusteeOperationA(PTRUSTEE_A); - MULTIPLE_TRUSTEE_OPERATION GetMultipleTrusteeOperationW(PTRUSTEE_W); -} - -version (Unicode) { - alias BuildExplicitAccessWithNameW BuildExplicitAccessWithName; - alias BuildSecurityDescriptorW BuildSecurityDescriptor; - alias BuildTrusteeWithNameW BuildTrusteeWithName; - alias BuildTrusteeWithObjectsAndNameW BuildTrusteeWithObjectsAndName; - alias BuildTrusteeWithObjectsAndSidW BuildTrusteeWithObjectsAndSid; - alias BuildTrusteeWithSidW BuildTrusteeWithSid; - alias GetAuditedPermissionsFromAclW GetAuditedPermissionsFromAcl; - alias GetEffectiveRightsFromAclW GetEffectiveRightsFromAcl; - alias GetExplicitEntriesFromAclW GetExplicitEntriesFromAcl; - alias GetNamedSecurityInfoW GetNamedSecurityInfo; - alias GetTrusteeFormW GetTrusteeForm; - alias GetTrusteeNameW GetTrusteeName; - alias GetTrusteeTypeW GetTrusteeType; - alias LookupSecurityDescriptorPartsW LookupSecurityDescriptorParts; - alias SetEntriesInAclW SetEntriesInAcl; - alias SetNamedSecurityInfoW SetNamedSecurityInfo; - alias BuildImpersonateExplicitAccessWithNameW - BuildImpersonateExplicitAccessWithName; - alias BuildImpersonateTrusteeW BuildImpersonateTrustee; - alias GetMultipleTrusteeW GetMultipleTrustee; - alias GetMultipleTrusteeOperationW GetMultipleTrusteeOperation; -} else { - alias BuildExplicitAccessWithNameA BuildExplicitAccessWithName; - alias BuildSecurityDescriptorA BuildSecurityDescriptor; - alias BuildTrusteeWithNameA BuildTrusteeWithName; - alias BuildTrusteeWithObjectsAndNameA BuildTrusteeWithObjectsAndName; - alias BuildTrusteeWithObjectsAndSidA BuildTrusteeWithObjectsAndSid; - alias BuildTrusteeWithSidA BuildTrusteeWithSid; - alias GetAuditedPermissionsFromAclA GetAuditedPermissionsFromAcl; - alias GetEffectiveRightsFromAclA GetEffectiveRightsFromAcl; - alias GetExplicitEntriesFromAclA GetExplicitEntriesFromAcl; - alias GetNamedSecurityInfoA GetNamedSecurityInfo; - alias GetTrusteeFormA GetTrusteeForm; - alias GetTrusteeNameA GetTrusteeName; - alias GetTrusteeTypeA GetTrusteeType; - alias LookupSecurityDescriptorPartsA LookupSecurityDescriptorParts; - alias SetEntriesInAclA SetEntriesInAcl; - alias SetNamedSecurityInfoA SetNamedSecurityInfo; - alias BuildImpersonateExplicitAccessWithNameA - BuildImpersonateExplicitAccessWithName; - alias BuildImpersonateTrusteeA BuildImpersonateTrustee; - alias GetMultipleTrusteeA GetMultipleTrustee; - alias GetMultipleTrusteeOperationA GetMultipleTrusteeOperation; -} diff --git a/3rdparty-extra/win32/aclui.d b/3rdparty-extra/win32/aclui.d deleted file mode 100644 index 59db32538..000000000 --- a/3rdparty-extra/win32/aclui.d +++ /dev/null @@ -1,121 +0,0 @@ -/***********************************************************************\ -* aclui.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.aclui; -version(Windows): -pragma(lib, "aclui"); - -private import win32.w32api; - -static assert (_WIN32_WINNT >= 0x500, - "win32.aclui is available only if version Windows2000, WindowsXP, Windows2003 " - "or WindowsVista is set"); - -import win32.accctrl, win32.commctrl, win32.objbase; -private import win32.basetyps, win32.prsht, win32.unknwn, win32.windef, - win32.winuser; - - -struct SI_OBJECT_INFO { - DWORD dwFlags; - HINSTANCE hInstance; - LPWSTR pszServerName; - LPWSTR pszObjectName; - LPWSTR pszPageTitle; - GUID guidObjectType; -} -alias SI_OBJECT_INFO* PSI_OBJECT_INFO; - -// values for SI_OBJECT_INFO.dwFlags -const DWORD - SI_EDIT_PERMS = 0x00000000, - SI_EDIT_OWNER = 0x00000001, - SI_EDIT_AUDITS = 0x00000002, - SI_CONTAINER = 0x00000004, - SI_READONLY = 0x00000008, - SI_ADVANCED = 0x00000010, - SI_RESET = 0x00000020, - SI_OWNER_READONLY = 0x00000040, - SI_EDIT_PROPERTIES = 0x00000080, - SI_OWNER_RECURSE = 0x00000100, - SI_NO_ACL_PROTECT = 0x00000200, - SI_NO_TREE_APPLY = 0x00000400, - SI_PAGE_TITLE = 0x00000800, - SI_SERVER_IS_DC = 0x00001000, - SI_RESET_DACL_TREE = 0x00004000, - SI_RESET_SACL_TREE = 0x00008000, - SI_OBJECT_GUID = 0x00010000, - SI_EDIT_EFFECTIVE = 0x00020000, - SI_RESET_DACL = 0x00040000, - SI_RESET_SACL = 0x00080000, - SI_RESET_OWNER = 0x00100000, - SI_NO_ADDITIONAL_PERMISSION = 0x00200000, - SI_MAY_WRITE = 0x10000000, - SI_EDIT_ALL = SI_EDIT_PERMS | SI_EDIT_OWNER - | SI_EDIT_AUDITS; - -struct SI_ACCESS { - const(GUID)* pguid; - ACCESS_MASK mask; - LPCWSTR pszName; - DWORD dwFlags; -} -alias SI_ACCESS* PSI_ACCESS; - -// values for SI_ACCESS.dwFlags -const DWORD - SI_ACCESS_SPECIFIC = 0x00010000, - SI_ACCESS_GENERAL = 0x00020000, - SI_ACCESS_CONTAINER = 0x00040000, - SI_ACCESS_PROPERTY = 0x00080000; - - -struct SI_INHERIT_TYPE { - const(GUID)* pguid; - ULONG dwFlags; - LPCWSTR pszName; -} -alias SI_INHERIT_TYPE* PSI_INHERIT_TYPE; - -/* values for SI_INHERIT_TYPE.dwFlags - INHERIT_ONLY_ACE, CONTAINER_INHERIT_ACE, OBJECT_INHERIT_ACE - defined elsewhere */ - -enum SI_PAGE_TYPE { - SI_PAGE_PERM, - SI_PAGE_ADVPERM, - SI_PAGE_AUDIT, - SI_PAGE_OWNER -} - -const uint PSPCB_SI_INITDIALOG = WM_USER + 1; - -interface ISecurityInformation : IUnknown { - HRESULT GetObjectInformation(PSI_OBJECT_INFO); - HRESULT GetSecurity(SECURITY_INFORMATION, PSECURITY_DESCRIPTOR*, BOOL); - HRESULT SetSecurity(SECURITY_INFORMATION, PSECURITY_DESCRIPTOR); - HRESULT GetAccessRights(const(GUID)*, DWORD, PSI_ACCESS*, ULONG*, ULONG*); - HRESULT MapGeneric(const(GUID)*, UCHAR*, ACCESS_MASK*); - HRESULT GetInheritTypes(PSI_INHERIT_TYPE*, ULONG*); - HRESULT PropertySheetPageCallback(HWND, UINT, SI_PAGE_TYPE); -} -alias ISecurityInformation LPSECURITYINFO; - -/* Comment from MinGW - * TODO: ISecurityInformation2, IEffectivePermission, ISecurityObjectTypeInfo - */ - -// FIXME: linkage attribute? -extern (C) /+DECLSPEC_IMPORT+/ extern const IID IID_ISecurityInformation; - -extern (Windows) { - HPROPSHEETPAGE CreateSecurityPage(LPSECURITYINFO psi); - BOOL EditSecurity(HWND hwndOwner, LPSECURITYINFO psi); -} diff --git a/3rdparty-extra/win32/comcat.d b/3rdparty-extra/win32/comcat.d deleted file mode 100644 index 0873b220c..000000000 --- a/3rdparty-extra/win32/comcat.d +++ /dev/null @@ -1,74 +0,0 @@ -/***********************************************************************\ -* comcat.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.comcat; -version(Windows): - -import win32.windows, win32.ole2; -private import win32.basetyps, win32.cguid, win32.objbase, win32.unknwn, - win32.windef, win32.wtypes; - -alias IEnumGUID LPENUMGUID; - -interface IEnumGUID : IUnknown { - HRESULT Next(ULONG, GUID*, ULONG*); - HRESULT Skip(ULONG); - HRESULT Reset(); - HRESULT Clone(LPENUMGUID*); -} - -alias GUID CATID; -alias REFGUID REFCATID; -alias GUID_NULL CATID_NULL; -alias IsEqualGUID IsEqualCATID; - -struct CATEGORYINFO { - CATID catid; - LCID lcid; - OLECHAR[128] szDescription; -} -alias CATEGORYINFO* LPCATEGORYINFO; - -alias IEnumGUID IEnumCATID; -alias LPENUMGUID LPENUMCATID; -alias IID_IEnumGUID IID_IEnumCATID; - -alias IEnumGUID IEnumCLSID; -alias LPENUMGUID LPENUMCLSID; -alias IID_IEnumGUID IID_IEnumCLSID; - -interface ICatInformation : IUnknown { - HRESULT EnumCategories(LCID, LPENUMCATEGORYINFO*); - HRESULT GetCategoryDesc(REFCATID, LCID, PWCHAR*); - HRESULT EnumClassesOfCategories(ULONG, CATID*, ULONG, CATID*, - LPENUMCLSID*); - HRESULT IsClassOfCategories(REFCLSID, ULONG, CATID*, ULONG, CATID*); - HRESULT EnumImplCategoriesOfClass(REFCLSID, LPENUMCATID*); - HRESULT EnumReqCategoriesOfClass(REFCLSID, LPENUMCATID*); -} -alias ICatInformation LPCATINFORMATION; - -interface ICatRegister : IUnknown { - HRESULT RegisterCategories(ULONG, CATEGORYINFO*); - HRESULT UnRegisterCategories(ULONG, CATID*); - HRESULT RegisterClassImplCategories(REFCLSID, ULONG, CATID*); - HRESULT UnRegisterClassImplCategories(REFCLSID, ULONG, CATID*); - HRESULT RegisterClassReqCategories(REFCLSID, ULONG, CATID*); - HRESULT UnRegisterClassReqCategories(REFCLSID, ULONG, CATID*); -} -alias ICatRegister LPCATREGISTER; - -interface IEnumCATEGORYINFO : IUnknown { - HRESULT Next(ULONG, CATEGORYINFO*, ULONG*); - HRESULT Skip(ULONG); - HRESULT Reset(); - HRESULT Clone(LPENUMCATEGORYINFO*); -} -alias IEnumCATEGORYINFO LPENUMCATEGORYINFO; diff --git a/3rdparty-extra/win32/cpl.d b/3rdparty-extra/win32/cpl.d deleted file mode 100644 index fe5822d26..000000000 --- a/3rdparty-extra/win32/cpl.d +++ /dev/null @@ -1,78 +0,0 @@ -/***********************************************************************\ -* cpl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.cpl; -version(Windows): - -private import win32.windef, win32.winuser; - -enum : uint { - WM_CPL_LAUNCH = WM_USER + 1000, - WM_CPL_LAUNCHED -} - -enum : uint { - CPL_DYNAMIC_RES, - CPL_INIT, - CPL_GETCOUNT, - CPL_INQUIRE, - CPL_SELECT, - CPL_DBLCLK, - CPL_STOP, - CPL_EXIT, - CPL_NEWINQUIRE, - CPL_STARTWPARMSA, - CPL_STARTWPARMSW, // = 10 - CPL_SETUP = 200 -} - -extern (Windows) alias LONG function(HWND, UINT, LONG, LONG) APPLET_PROC; - -struct CPLINFO { - int idIcon; - int idName; - int idInfo; - LONG lData; -} -alias CPLINFO* LPCPLINFO; - -struct NEWCPLINFOA { - DWORD dwSize = NEWCPLINFOA.sizeof; - DWORD dwFlags; - DWORD dwHelpContext; - LONG lData; - HICON hIcon; - CHAR[32] szName; - CHAR[64] szInfo; - CHAR[128] szHelpFile; -} -alias NEWCPLINFOA* LPNEWCPLINFOA; - -struct NEWCPLINFOW { - DWORD dwSize = NEWCPLINFOW.sizeof; - DWORD dwFlags; - DWORD dwHelpContext; - LONG lData; - HICON hIcon; - WCHAR[32] szName; - WCHAR[64] szInfo; - WCHAR[128] szHelpFile; -} -alias NEWCPLINFOW* LPNEWCPLINFOW; - -version (Unicode) { - alias CPL_STARTWPARMSW CPL_STARTWPARMS; - alias NEWCPLINFOW NEWCPLINFO; -} else { - alias CPL_STARTWPARMSA CPL_STARTWPARMS; - alias NEWCPLINFOA NEWCPLINFO; -} - -alias NEWCPLINFO* LPNEWCPLINFO; diff --git a/3rdparty-extra/win32/cplext.d b/3rdparty-extra/win32/cplext.d deleted file mode 100644 index 9a4cf96c5..000000000 --- a/3rdparty-extra/win32/cplext.d +++ /dev/null @@ -1,20 +0,0 @@ -/***********************************************************************\ -* cplext.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.cplext; -version(Windows): - -enum : uint { - CPLPAGE_MOUSE_BUTTONS = 1, - CPLPAGE_MOUSE_PTRMOTION = 2, - CPLPAGE_MOUSE_WHEEL = 3, - CPLPAGE_KEYBOARD_SPEED = 1, - CPLPAGE_DISPLAY_BACKGROUND = 1 -} diff --git a/3rdparty-extra/win32/custcntl.d b/3rdparty-extra/win32/custcntl.d deleted file mode 100644 index 27cecef51..000000000 --- a/3rdparty-extra/win32/custcntl.d +++ /dev/null @@ -1,123 +0,0 @@ -/***********************************************************************\ -* custcntl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.custcntl; -version(Windows): - -private import win32.windef; - -// FIXME: check type -const CCF_NOTEXT = 1; - -const size_t - CCHCCCLASS = 32, - CCHCCDESC = 32, - CCHCCTEXT = 256; - -struct CCSTYLEA { - DWORD flStyle; - DWORD flExtStyle; - CHAR[CCHCCTEXT] szText; - LANGID lgid; - WORD wReserved1; -} -alias CCSTYLEA* LPCCSTYLEA; - -struct CCSTYLEW { - DWORD flStyle; - DWORD flExtStyle; - WCHAR[CCHCCTEXT] szText; - LANGID lgid; - WORD wReserved1; -} -alias CCSTYLEW* LPCCSTYLEW; - -struct CCSTYLEFLAGA { - DWORD flStyle; - DWORD flStyleMask; - LPSTR pszStyle; -} -alias CCSTYLEFLAGA* LPCCSTYLEFLAGA; - -struct CCSTYLEFLAGW { - DWORD flStyle; - DWORD flStyleMask; - LPWSTR pszStyle; -} -alias CCSTYLEFLAGW* LPCCSTYLEFLAGW; - -struct CCINFOA { - CHAR[CCHCCCLASS] szClass; - DWORD flOptions; - CHAR[CCHCCDESC] szDesc; - UINT cxDefault; - UINT cyDefault; - DWORD flStyleDefault; - DWORD flExtStyleDefault; - DWORD flCtrlTypeMask; - CHAR[CCHCCTEXT] szTextDefault; - INT cStyleFlags; - LPCCSTYLEFLAGA aStyleFlags; - LPFNCCSTYLEA lpfnStyle; - LPFNCCSIZETOTEXTA lpfnSizeToText; - DWORD dwReserved1; - DWORD dwReserved2; -} -alias CCINFOA* LPCCINFOA; - -struct CCINFOW { - WCHAR[CCHCCCLASS] szClass; - DWORD flOptions; - WCHAR[CCHCCDESC] szDesc; - UINT cxDefault; - UINT cyDefault; - DWORD flStyleDefault; - DWORD flExtStyleDefault; - DWORD flCtrlTypeMask; - WCHAR[CCHCCTEXT] szTextDefault; - INT cStyleFlags; - LPCCSTYLEFLAGW aStyleFlags; - LPFNCCSTYLEW lpfnStyle; - LPFNCCSIZETOTEXTW lpfnSizeToText; - DWORD dwReserved1; - DWORD dwReserved2; -} -alias CCINFOW* LPCCINFOW; - -extern (Windows) { - alias BOOL function(HWND, LPCCSTYLEA) LPFNCCSTYLEA; - alias BOOL function(HWND, LPCCSTYLEW) LPFNCCSTYLEW; - alias INT function(DWORD, DWORD, HFONT, LPSTR) LPFNCCSIZETOTEXTA; - alias INT function(DWORD, DWORD, HFONT, LPWSTR) LPFNCCSIZETOTEXTW; - alias UINT function(LPCCINFOA) LPFNCCINFOA; - alias UINT function(LPCCINFOW) LPFNCCINFOW; - UINT CustomControlInfoA(LPCCINFOA acci); - UINT CustomControlInfoW(LPCCINFOW acci); -} - -version (Unicode) { - alias CCSTYLEW CCSTYLE; - alias CCSTYLEFLAGW CCSTYLEFLAG; - alias CCINFOW CCINFO; - alias LPFNCCSTYLEW LPFNCCSTYLE; - alias LPFNCCSIZETOTEXTW LPFNCCSIZETOTEXT; - alias LPFNCCINFOW LPFNCCINFO; -} else { - alias CCSTYLEA CCSTYLE; - alias CCSTYLEFLAGA CCSTYLEFLAG; - alias CCINFOA CCINFO; - alias LPFNCCSTYLEA LPFNCCSTYLE; - alias LPFNCCSIZETOTEXTA LPFNCCSIZETOTEXT; - alias LPFNCCINFOA LPFNCCINFO; -} - -alias CCSTYLE* LPCCSTYLE; -alias CCSTYLEFLAG* LPCCSTYLEFLAG; -alias CCINFO* LPCCINFO; diff --git a/3rdparty-extra/win32/dbt.d b/3rdparty-extra/win32/dbt.d deleted file mode 100644 index 5a59a27e9..000000000 --- a/3rdparty-extra/win32/dbt.d +++ /dev/null @@ -1,190 +0,0 @@ -/***********************************************************************\ -* dbt.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Vladimir Vlasov * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.dbt; -version(Windows): - -import win32.w32api, win32.windef; -import win32.basetyps; // for GUID - -// FIXME: clean up Windows version support - -enum : DWORD { - DBT_NO_DISK_SPACE = 0x47, - DBT_CONFIGMGPRIVATE = 0x7FFF, - DBT_DEVICEARRIVAL = 0x8000, - DBT_DEVICEQUERYREMOVE = 0x8001, - DBT_DEVICEQUERYREMOVEFAILED = 0x8002, - DBT_DEVICEREMOVEPENDING = 0x8003, - DBT_DEVICEREMOVECOMPLETE = 0x8004, - DBT_DEVICETYPESPECIFIC = 0x8005, - DBT_DEVTYP_OEM = 0, - DBT_DEVTYP_DEVNODE, - DBT_DEVTYP_VOLUME, - DBT_DEVTYP_PORT, - DBT_DEVTYP_NET, - DBT_DEVTYP_DEVICEINTERFACE, - DBT_DEVTYP_HANDLE // = 6 -} - -enum : DWORD { - DBT_APPYBEGIN, - DBT_APPYEND, - DBT_DEVNODES_CHANGED = 7, - DBT_QUERYCHANGECONFIG = 0x17, - DBT_CONFIGCHANGED = 0x18, - DBT_CONFIGCHANGECANCELED = 0x19, - DBT_MONITORCHANGE = 0x1B, - DBT_SHELLLOGGEDON = 32, - DBT_CONFIGMGAPI32 = 34, - DBT_VXDINITCOMPLETE = 35, - DBT_VOLLOCKQUERYLOCK = 0x8041, - DBT_VOLLOCKLOCKTAKEN = 0x8042, - DBT_VOLLOCKLOCKFAILED = 0x8043, - DBT_VOLLOCKQUERYUNLOCK = 0x8044, - DBT_VOLLOCKLOCKRELEASED = 0x8045, - DBT_VOLLOCKUNLOCKFAILED = 0x8046, - DBT_USERDEFINED = 0xFFFF -} - -enum : WORD { - DBTF_MEDIA = 1, - DBTF_NET = 2 -} - -enum : DWORD { - BSM_ALLCOMPONENTS = 0, - BSM_APPLICATIONS = 8, - BSM_ALLDESKTOPS = 16, - BSM_INSTALLABLEDRIVERS = 4, - BSM_NETDRIVER = 2, - BSM_VXDS = 1, - BSF_FLUSHDISK = 0x00000004, - BSF_FORCEIFHUNG = 0x00000020, - BSF_IGNORECURRENTTASK = 0x00000002, - BSF_NOHANG = 0x00000008, - BSF_NOTIMEOUTIFNOTHUNG = 0x00000040, - BSF_POSTMESSAGE = 0x00000010, - BSF_QUERY = 0x00000001, - BSF_MSGSRV32ISOK_BIT = 31, - BSF_MSGSRV32ISOK = 0x80000000 -} - -static if (_WIN32_WINNT >= 0x500) { - enum : DWORD { - BSF_ALLOWSFW = 0x00000080, - BSF_SENDNOTIFYMESSAGE = 0x00000100 - } -} - -static if (_WIN32_WINNT >= 0x501) { - enum : DWORD { - BSF_LUID = 0x00000400, - BSF_RETURNHDESK = 0x00000200 - } -} - -struct DEV_BROADCAST_HDR { - DWORD dbch_size = DEV_BROADCAST_HDR.sizeof; - DWORD dbch_devicetype; - DWORD dbch_reserved; -} -alias DEV_BROADCAST_HDR* PDEV_BROADCAST_HDR; - -struct DEV_BROADCAST_OEM { - DWORD dbco_size = DEV_BROADCAST_OEM.sizeof; - DWORD dbco_devicetype; - DWORD dbco_reserved; - DWORD dbco_identifier; - DWORD dbco_suppfunc; -} -alias DEV_BROADCAST_OEM* PDEV_BROADCAST_OEM; - -struct DEV_BROADCAST_PORT_A { - DWORD dbcp_size = DEV_BROADCAST_PORT_A.sizeof; - DWORD dbcp_devicetype; - DWORD dbcp_reserved; - char _dbcp_name; - char* dbcp_name() { return &_dbcp_name; } -} -alias DEV_BROADCAST_PORT_A* PDEV_BROADCAST_PORT_A; - -struct DEV_BROADCAST_PORT_W { - DWORD dbcp_size = DEV_BROADCAST_PORT_W.sizeof; - DWORD dbcp_devicetype; - DWORD dbcp_reserved; - WCHAR _dbcp_name; - WCHAR* dbcp_name() { return &_dbcp_name; } -} -alias DEV_BROADCAST_PORT_W* PDEV_BROADCAST_PORT_W; - -struct DEV_BROADCAST_USERDEFINED { - DEV_BROADCAST_HDR dbud_dbh; - char _dbud_szName; - char* dbud_szName() { return &_dbud_szName; } -} - -struct DEV_BROADCAST_VOLUME { - DWORD dbcv_size = DEV_BROADCAST_VOLUME.sizeof; - DWORD dbcv_devicetype; - DWORD dbcv_reserved; - DWORD dbcv_unitmask; - WORD dbcv_flags; -} -alias DEV_BROADCAST_VOLUME* PDEV_BROADCAST_VOLUME; - -version (Unicode) { - alias DEV_BROADCAST_PORT_W DEV_BROADCAST_PORT; -} else { - alias DEV_BROADCAST_PORT_A DEV_BROADCAST_PORT; -} -alias DEV_BROADCAST_PORT* PDEV_BROADCAST_PORT; - -static if (_WIN32_WINNT >= 0x500) { - struct DEV_BROADCAST_DEVICEINTERFACE_A { - DWORD dbcc_size = DEV_BROADCAST_DEVICEINTERFACE_A.sizeof; - DWORD dbcc_devicetype; - DWORD dbcc_reserved; - GUID dbcc_classguid; - char _dbcc_name; - char* dbcc_name() { return &_dbcc_name; } - } - alias DEV_BROADCAST_DEVICEINTERFACE_A* PDEV_BROADCAST_DEVICEINTERFACE_A; - - struct DEV_BROADCAST_DEVICEINTERFACE_W { - DWORD dbcc_size = DEV_BROADCAST_DEVICEINTERFACE_W.sizeof; - DWORD dbcc_devicetype; - DWORD dbcc_reserved; - GUID dbcc_classguid; - WCHAR _dbcc_name; - WCHAR* dbcc_name() { return &_dbcc_name; } - } - alias DEV_BROADCAST_DEVICEINTERFACE_W* PDEV_BROADCAST_DEVICEINTERFACE_W; - - version (Unicode) { - alias DEV_BROADCAST_DEVICEINTERFACE_W DEV_BROADCAST_DEVICEINTERFACE; - } else { - alias DEV_BROADCAST_DEVICEINTERFACE_A DEV_BROADCAST_DEVICEINTERFACE; - } - alias DEV_BROADCAST_DEVICEINTERFACE* PDEV_BROADCAST_DEVICEINTERFACE; - - struct DEV_BROADCAST_HANDLE { - DWORD dbch_size = DEV_BROADCAST_HANDLE.sizeof; - DWORD dbch_devicetype; - DWORD dbch_reserved; - HANDLE dbch_handle; - DWORD dbch_hdevnotify; - GUID dbch_eventguid; - LONG dbch_nameoffset; - BYTE _dbch_data; - BYTE* dbch_data() { return &_dbch_data; } - } - alias DEV_BROADCAST_HANDLE* PDEV_BROADCAST_HANDLE; -} diff --git a/3rdparty-extra/win32/dhcpcsdk.d b/3rdparty-extra/win32/dhcpcsdk.d deleted file mode 100644 index cac966c4c..000000000 --- a/3rdparty-extra/win32/dhcpcsdk.d +++ /dev/null @@ -1,59 +0,0 @@ -/***********************************************************************\ -* dhcpcsdk.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.dhcpcsdk; -version(Windows): - -private import win32.w32api, win32.windef; - -static assert (_WIN32_WINNT >= 0x500, -"win32.dhcpcsdk is available only if version Windows2000, WindowsXP, Windows2003 -or WindowsVista is set"); - -//#if (_WIN32_WINNT >= 0x500) - -// FIXME: check type -const DHCPCAPI_REGISTER_HANDLE_EVENT = 1; -const DHCPCAPI_REQUEST_PERSISTENT = 1; -const DHCPCAPI_REQUEST_SYNCHRONOUS = 2; - -struct DHCPCAPI_CLASSID { - ULONG Flags; - LPBYTE Data; - ULONG nBytesData; -} -alias DHCPCAPI_CLASSID* PDHCPCAPI_CLASSID, LPDHCPCAPI_CLASSID; - -struct DHCPAPI_PARAMS { - ULONG Flags; - ULONG OptionId; - BOOL IsVendor; - LPBYTE Data; - DWORD nBytesData; -} -alias DHCPAPI_PARAMS* PDHCPAPI_PARAMS, LPDHCPAPI_PARAMS; - -struct DHCPCAPI_PARAMS_ARRAY { - ULONG nParams; - LPDHCPAPI_PARAMS Params; -} -alias DHCPCAPI_PARAMS_ARRAY* PDHCPCAPI_PARAMS_ARRAY, LPDHCPCAPI_PARAMS_ARRAY; - -extern (Windows) { - void DhcpCApiCleanup(); - DWORD DhcpCApiInitialize(LPDWORD); - DWORD DhcpDeRegisterParamChange(DWORD, LPVOID, LPVOID); - DWORD DhcpRegisterParamChange(DWORD, LPVOID, PWSTR, LPDHCPCAPI_CLASSID, - DHCPCAPI_PARAMS_ARRAY, LPVOID); - DWORD DhcpRemoveDNSRegistrations(); - DWORD DhcpUndoRequestParams(DWORD, LPVOID, LPWSTR, LPWSTR); -} - -//#endif // (_WIN32_WINNT >= 0x500) diff --git a/3rdparty-extra/win32/directx/d3d10.d b/3rdparty-extra/win32/directx/d3d10.d deleted file mode 100644 index c57472513..000000000 --- a/3rdparty-extra/win32/directx/d3d10.d +++ /dev/null @@ -1,1230 +0,0 @@ -/***********************************************************************\ -* d3d10.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.d3d10; -version(Windows): - -private import win32.windows; - -public import win32.directx.dxgitype; -public import win32.directx.dxgi; -public import win32.directx.d3d10misc; - -pragma(lib, "d3d10.lib"); - -const D3D10_16BIT_INDEX_STRIP_CUT_VALUE = 0xffff; -const D3D10_32BIT_INDEX_STRIP_CUT_VALUE = 0xffffffff; -const D3D10_8BIT_INDEX_STRIP_CUT_VALUE = 0xff; -const D3D10_ARRAY_AXIS_ADDRESS_RANGE_BIT_COUNT = 9; -const D3D10_CLIP_OR_CULL_DISTANCE_COUNT = 8; -const D3D10_CLIP_OR_CULL_DISTANCE_ELEMENT_COUNT = 2; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_API_SLOT_COUNT = 14; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENTS = 4; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_COMPONENT_BIT_COUNT = 32; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_HW_SLOT_COUNT = 15; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_COUNT = 15; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1; -const D3D10_COMMONSHADER_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1; -const D3D10_COMMONSHADER_FLOWCONTROL_NESTING_LIMIT = 64; -const D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COMPONENTS = 4; -const D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_COUNT = 1; -const D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READS_PER_INST = 1; -const D3D10_COMMONSHADER_IMMEDIATE_CONSTANT_BUFFER_REGISTER_READ_PORTS = 1; -const D3D10_COMMONSHADER_IMMEDIATE_VALUE_COMPONENT_BIT_COUNT = 32; -const D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COMPONENTS = 1; -const D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_COUNT = 128; -const D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READS_PER_INST = 1; -const D3D10_COMMONSHADER_INPUT_RESOURCE_REGISTER_READ_PORTS = 1; -const D3D10_COMMONSHADER_INPUT_RESOURCE_SLOT_COUNT = 128; -const D3D10_COMMONSHADER_SAMPLER_REGISTER_COMPONENTS = 1; -const D3D10_COMMONSHADER_SAMPLER_REGISTER_COUNT = 16; -const D3D10_COMMONSHADER_SAMPLER_REGISTER_READS_PER_INST = 1; -const D3D10_COMMONSHADER_SAMPLER_REGISTER_READ_PORTS = 1; -const D3D10_COMMONSHADER_SAMPLER_SLOT_COUNT = 16; -const D3D10_COMMONSHADER_SUBROUTINE_NESTING_LIMIT = 32; -const D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENTS = 4; -const D3D10_COMMONSHADER_TEMP_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_COMMONSHADER_TEMP_REGISTER_COUNT = 4096; -const D3D10_COMMONSHADER_TEMP_REGISTER_READS_PER_INST = 3; -const D3D10_COMMONSHADER_TEMP_REGISTER_READ_PORTS = 3; -const D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MAX = 10; -const D3D10_COMMONSHADER_TEXCOORD_RANGE_REDUCTION_MIN = -10; -const D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_NEGATIVE = -8; -const D3D10_COMMONSHADER_TEXEL_OFFSET_MAX_POSITIVE = 7; -const D3D10_DEFAULT_BLEND_FACTOR_ALPHA = 1.0f; -const D3D10_DEFAULT_BLEND_FACTOR_BLUE = 1.0f; -const D3D10_DEFAULT_BLEND_FACTOR_GREEN = 1.0f; -const D3D10_DEFAULT_BLEND_FACTOR_RED = 1.0f; -const D3D10_DEFAULT_BORDER_COLOR_COMPONENT = 0.0f; -const D3D10_DEFAULT_DEPTH_BIAS = 0; -const D3D10_DEFAULT_DEPTH_BIAS_CLAMP = 0.0f; -const D3D10_DEFAULT_MAX_ANISOTROPY = 16.0f; -const D3D10_DEFAULT_MIP_LOD_BIAS = 0.0f; -const D3D10_DEFAULT_RENDER_TARGET_ARRAY_INDEX = 0; -const D3D10_DEFAULT_SAMPLE_MASK = 0xffffffff; -const D3D10_DEFAULT_SCISSOR_ENDX = 0; -const D3D10_DEFAULT_SCISSOR_ENDY = 0; -const D3D10_DEFAULT_SCISSOR_STARTX = 0; -const D3D10_DEFAULT_SCISSOR_STARTY = 0; -const D3D10_DEFAULT_SLOPE_SCALED_DEPTH_BIAS = 0.0f; -const D3D10_DEFAULT_STENCIL_READ_MASK = 0xff; -const D3D10_DEFAULT_STENCIL_REFERENCE = 0; -const D3D10_DEFAULT_STENCIL_WRITE_MASK = 0xff; -const D3D10_DEFAULT_VIEWPORT_AND_SCISSORRECT_INDEX = 0; -const D3D10_DEFAULT_VIEWPORT_HEIGHT = 0; -const D3D10_DEFAULT_VIEWPORT_MAX_DEPTH = 0.0f; -const D3D10_DEFAULT_VIEWPORT_MIN_DEPTH = 0.0f; -const D3D10_DEFAULT_VIEWPORT_TOPLEFTX = 0; -const D3D10_DEFAULT_VIEWPORT_TOPLEFTY = 0; -const D3D10_DEFAULT_VIEWPORT_WIDTH = 0; -const D3D10_FLOAT16_FUSED_TOLERANCE_IN_ULP = 0.6; -const D3D10_FLOAT32_MAX = 3.402823466e+38f; -const D3D10_FLOAT32_TO_INTEGER_TOLERANCE_IN_ULP = 0.6f; -const D3D10_FLOAT_TO_SRGB_EXPONENT_DENOMINATOR = 2.4f; -const D3D10_FLOAT_TO_SRGB_EXPONENT_NUMERATOR = 1.0f; -const D3D10_FLOAT_TO_SRGB_OFFSET = 0.055f; -const D3D10_FLOAT_TO_SRGB_SCALE_1 = 12.92f; -const D3D10_FLOAT_TO_SRGB_SCALE_2 = 1.055f; -const D3D10_FLOAT_TO_SRGB_THRESHOLD = 0.0031308f; -const D3D10_FTOI_INSTRUCTION_MAX_INPUT = 2147483647.999f; -const D3D10_FTOI_INSTRUCTION_MIN_INPUT = -2147483648.999f; -const D3D10_FTOU_INSTRUCTION_MAX_INPUT = 4294967295.999f; -const D3D10_FTOU_INSTRUCTION_MIN_INPUT = 0.0f; -const D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENTS = 1; -const D3D10_GS_INPUT_PRIM_CONST_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_GS_INPUT_PRIM_CONST_REGISTER_COUNT = 1; -const D3D10_GS_INPUT_PRIM_CONST_REGISTER_READS_PER_INST = 2; -const D3D10_GS_INPUT_PRIM_CONST_REGISTER_READ_PORTS = 1; -const D3D10_GS_INPUT_REGISTER_COMPONENTS = 4; -const D3D10_GS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_GS_INPUT_REGISTER_COUNT = 16; -const D3D10_GS_INPUT_REGISTER_READS_PER_INST = 2; -const D3D10_GS_INPUT_REGISTER_READ_PORTS = 1; -const D3D10_GS_INPUT_REGISTER_VERTICES = 6; -const D3D10_GS_OUTPUT_ELEMENTS = 32; -const D3D10_GS_OUTPUT_REGISTER_COMPONENTS = 4; -const D3D10_GS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_GS_OUTPUT_REGISTER_COUNT = 32; -const D3D10_IA_DEFAULT_INDEX_BUFFER_OFFSET_IN_BYTES = 0; -const D3D10_IA_DEFAULT_PRIMITIVE_TOPOLOGY = 0; -const D3D10_IA_DEFAULT_VERTEX_BUFFER_OFFSET_IN_BYTES = 0; -const D3D10_IA_INDEX_INPUT_RESOURCE_SLOT_COUNT = 1; -const D3D10_IA_INSTANCE_ID_BIT_COUNT = 32; -const D3D10_IA_INTEGER_ARITHMETIC_BIT_COUNT = 32; -const D3D10_IA_PRIMITIVE_ID_BIT_COUNT = 32; -const D3D10_IA_VERTEX_ID_BIT_COUNT = 32; -const D3D10_IA_VERTEX_INPUT_RESOURCE_SLOT_COUNT = 16; -const D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENTS_COMPONENTS = 64; -const D3D10_IA_VERTEX_INPUT_STRUCTURE_ELEMENT_COUNT = 16; -const D3D10_INTEGER_DIVIDE_BY_ZERO_QUOTIENT = 0xffffffff; -const D3D10_INTEGER_DIVIDE_BY_ZERO_REMAINDER = 0xffffffff; -const D3D10_LINEAR_GAMMA = 1.0f; -const D3D10_MAX_BORDER_COLOR_COMPONENT = 1.0f; -const D3D10_MAX_DEPTH = 1.0f; -const D3D10_MAX_MAXANISOTROPY = 16; -const D3D10_MAX_MULTISAMPLE_SAMPLE_COUNT = 32; -const D3D10_MAX_POSITION_VALUE = 3.402823466e+34f; -const D3D10_MAX_TEXTURE_DIMENSION_2_TO_EXP = 17; -const D3D10_MIN_BORDER_COLOR_COMPONENT = 0.0f; -const D3D10_MIN_DEPTH = 0.0f; -const D3D10_MIN_MAXANISOTROPY = 0; -const D3D10_MIP_LOD_BIAS_MAX = 15.99f; -const D3D10_MIP_LOD_BIAS_MIN = -16.0f; -const D3D10_MIP_LOD_FRACTIONAL_BIT_COUNT = 6; -const D3D10_MIP_LOD_RANGE_BIT_COUNT = 8; -const D3D10_MULTISAMPLE_ANTIALIAS_LINE_WIDTH = 1.4f; -const D3D10_NONSAMPLE_FETCH_OUT_OF_RANGE_ACCESS_RESULT = 0; -const D3D10_PIXEL_ADDRESS_RANGE_BIT_COUNT = 13; -const D3D10_PRE_SCISSOR_PIXEL_ADDRESS_RANGE_BIT_COUNT = 15; -const D3D10_PS_FRONTFACING_DEFAULT_VALUE = 0xffffffff; -const D3D10_PS_FRONTFACING_FALSE_VALUE = 0; -const D3D10_PS_FRONTFACING_TRUE_VALUE = 0xffffffff; -const D3D10_PS_INPUT_REGISTER_COMPONENTS = 4; -const D3D10_PS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_PS_INPUT_REGISTER_COUNT = 32; -const D3D10_PS_INPUT_REGISTER_READS_PER_INST = 2; -const D3D10_PS_INPUT_REGISTER_READ_PORTS = 1; -const D3D10_PS_LEGACY_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.0f; -const D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENTS = 1; -const D3D10_PS_OUTPUT_DEPTH_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_PS_OUTPUT_DEPTH_REGISTER_COUNT = 1; -const D3D10_PS_OUTPUT_REGISTER_COMPONENTS = 4; -const D3D10_PS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_PS_OUTPUT_REGISTER_COUNT = 8; -const D3D10_PS_PIXEL_CENTER_FRACTIONAL_COMPONENT = 0.5f; -const D3D10_REQ_BLEND_OBJECT_COUNT_PER_CONTEXT = 4096; -const D3D10_REQ_BUFFER_RESOURCE_TEXEL_COUNT_2_TO_EXP = 27; -const D3D10_REQ_CONSTANT_BUFFER_ELEMENT_COUNT = 4096; -const D3D10_REQ_DEPTH_STENCIL_OBJECT_COUNT_PER_CONTEXT = 4096; -const D3D10_REQ_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 32; -const D3D10_REQ_DRAW_VERTEX_COUNT_2_TO_EXP = 32; -const D3D10_REQ_FILTERING_HW_ADDRESSABLE_RESOURCE_DIMENSION = 8192; -const D3D10_REQ_GS_INVOCATION_32BIT_OUTPUT_COMPONENT_LIMIT = 1024; -const D3D10_REQ_IMMEDIATE_CONSTANT_BUFFER_ELEMENT_COUNT = 4096; -const D3D10_REQ_MAXANISOTROPY = 16; -const D3D10_REQ_MIP_LEVELS = 14; -const D3D10_REQ_MULTI_ELEMENT_STRUCTURE_SIZE_IN_BYTES = 2048; -const D3D10_REQ_RASTERIZER_OBJECT_COUNT_PER_CONTEXT = 4096; -const D3D10_REQ_RENDER_TO_BUFFER_WINDOW_WIDTH = 8192; -const D3D10_REQ_RESOURCE_SIZE_IN_MEGABYTES = 128; -const D3D10_REQ_RESOURCE_VIEW_COUNT_PER_CONTEXT_2_TO_EXP = 20; -const D3D10_REQ_SAMPLER_OBJECT_COUNT_PER_CONTEXT = 4096; -const D3D10_REQ_TEXTURE1D_ARRAY_AXIS_DIMENSION = 512; -const D3D10_REQ_TEXTURE1D_U_DIMENSION = 8192; -const D3D10_REQ_TEXTURE2D_ARRAY_AXIS_DIMENSION = 512; -const D3D10_REQ_TEXTURE2D_U_OR_V_DIMENSION = 8192; -const D3D10_REQ_TEXTURE3D_U_V_OR_W_DIMENSION = 2048; -const D3D10_REQ_TEXTURECUBE_DIMENSION = 8192; -const D3D10_RESINFO_INSTRUCTION_MISSING_COMPONENT_RETVAL = 0; -const D3D10_SHADER_MAJOR_VERSION = 4; -const D3D10_SHADER_MINOR_VERSION = 0; -const D3D10_SHIFT_INSTRUCTION_PAD_VALUE = 0; -const D3D10_SHIFT_INSTRUCTION_SHIFT_VALUE_BIT_COUNT = 5; -const D3D10_SIMULTANEOUS_RENDER_TARGET_COUNT = 8; -const D3D10_SO_BUFFER_MAX_STRIDE_IN_BYTES = 2048; -const D3D10_SO_BUFFER_MAX_WRITE_WINDOW_IN_BYTES = 256; -const D3D10_SO_BUFFER_SLOT_COUNT = 4; -const D3D10_SO_DDI_REGISTER_INDEX_DENOTING_GAP = 0xffffffff; -const D3D10_SO_MULTIPLE_BUFFER_ELEMENTS_PER_BUFFER = 1; -const D3D10_SO_SINGLE_BUFFER_COMPONENT_LIMIT = 64; -const D3D10_SRGB_GAMMA = 2.2f; -const D3D10_SRGB_TO_FLOAT_DENOMINATOR_1 = 12.92f; -const D3D10_SRGB_TO_FLOAT_DENOMINATOR_2 = 1.055f; -const D3D10_SRGB_TO_FLOAT_EXPONENT = 2.4f; -const D3D10_SRGB_TO_FLOAT_OFFSET = 0.055f; -const D3D10_SRGB_TO_FLOAT_THRESHOLD = 0.04045f; -const D3D10_SRGB_TO_FLOAT_TOLERANCE_IN_ULP = 0.5f; -const D3D10_STANDARD_COMPONENT_BIT_COUNT = 32; -const D3D10_STANDARD_COMPONENT_BIT_COUNT_DOUBLED = 64; -const D3D10_STANDARD_MAXIMUM_ELEMENT_ALIGNMENT_BYTE_MULTIPLE = 4; -const D3D10_STANDARD_PIXEL_COMPONENT_COUNT = 128; -const D3D10_STANDARD_PIXEL_ELEMENT_COUNT = 32; -const D3D10_STANDARD_VECTOR_SIZE = 4; -const D3D10_STANDARD_VERTEX_ELEMENT_COUNT = 16; -const D3D10_STANDARD_VERTEX_TOTAL_COMPONENT_COUNT = 64; -const D3D10_SUBPIXEL_FRACTIONAL_BIT_COUNT = 8; -const D3D10_SUBTEXEL_FRACTIONAL_BIT_COUNT = 6; -const D3D10_TEXEL_ADDRESS_RANGE_BIT_COUNT = 18; -const D3D10_UNBOUND_MEMORY_ACCESS_RESULT = 0; -const D3D10_VIEWPORT_AND_SCISSORRECT_MAX_INDEX = 15; -const D3D10_VIEWPORT_AND_SCISSORRECT_OBJECT_COUNT_PER_PIPELINE = 16; -const D3D10_VIEWPORT_BOUNDS_MAX = 16383; -const D3D10_VIEWPORT_BOUNDS_MIN = -16384; -const D3D10_VS_INPUT_REGISTER_COMPONENTS = 4; -const D3D10_VS_INPUT_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_VS_INPUT_REGISTER_COUNT = 16; -const D3D10_VS_INPUT_REGISTER_READS_PER_INST = 2; -const D3D10_VS_INPUT_REGISTER_READ_PORTS = 1; -const D3D10_VS_OUTPUT_REGISTER_COMPONENTS = 4; -const D3D10_VS_OUTPUT_REGISTER_COMPONENT_BIT_COUNT = 32; -const D3D10_VS_OUTPUT_REGISTER_COUNT = 16; -const D3D10_WHQL_CONTEXT_COUNT_FOR_RESOURCE_LIMIT = 10; -const D3D10_WHQL_DRAWINDEXED_INDEX_COUNT_2_TO_EXP = 25; -const D3D10_WHQL_DRAW_VERTEX_COUNT_2_TO_EXP = 25; -const D3D_MAJOR_VERSION = 10; -const D3D_MINOR_VERSION = 0; -const D3D_SPEC_DATE_DAY = 8; -const D3D_SPEC_DATE_MONTH = 8; -const D3D_SPEC_DATE_YEAR = 2006; -const D3D_SPEC_VERSION = 1.050005; - -const _FACD3D10 = 0x879; -const _FACD3D10DEBUG = _FACD3D10 + 1; - -HRESULT MAKE_D3D10_HRESULT(T)(T code) { - return MAKE_HRESULT(1, _FACD3D10, code); -} - -HRESULT MAKE_D3D10_STATUS(T)(T code) { - return MAKE_HRESULT(0, _FACD3D10, code); -} - -const D3D10_ERROR_TOO_MANY_UNIQUE_STATE_OBJECTS = MAKE_D3D10_HRESULT(1); -const D3D10_ERROR_FILE_NOT_FOUND = MAKE_D3D10_HRESULT(2); - -enum D3D10_INPUT_CLASSIFICATION { - D3D10_INPUT_PER_VERTEX_DATA = 0, - D3D10_INPUT_PER_INSTANCE_DATA = 1 -} - -const D3D10_APPEND_ALIGNED_ELEMENT = 0xffffffff; - -struct D3D10_INPUT_ELEMENT_DESC { - LPCSTR SemanticName; - UINT SemanticIndex; - DXGI_FORMAT Format; - UINT InputSlot; - UINT AlignedByteOffset; - D3D10_INPUT_CLASSIFICATION InputSlotClass; - UINT InstanceDataStepRate; -} - -enum D3D10_FILL_MODE { - D3D10_FILL_WIREFRAME = 2, - D3D10_FILL_SOLID = 3 -} - -enum D3D10_PRIMITIVE_TOPOLOGY { - D3D10_PRIMITIVE_TOPOLOGY_UNDEFINED = 0, - D3D10_PRIMITIVE_TOPOLOGY_POINTLIST = 1, - D3D10_PRIMITIVE_TOPOLOGY_LINELIST = 2, - D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP = 3, - D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST = 4, - D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP = 5, - D3D10_PRIMITIVE_TOPOLOGY_LINELIST_ADJ = 10, - D3D10_PRIMITIVE_TOPOLOGY_LINESTRIP_ADJ = 11, - D3D10_PRIMITIVE_TOPOLOGY_TRIANGLELIST_ADJ = 12, - D3D10_PRIMITIVE_TOPOLOGY_TRIANGLESTRIP_ADJ = 13 -} - -enum D3D10_PRIMITIVE { - D3D10_PRIMITIVE_UNDEFINED = 0, - D3D10_PRIMITIVE_POINT = 1, - D3D10_PRIMITIVE_LINE = 2, - D3D10_PRIMITIVE_TRIANGLE = 3, - D3D10_PRIMITIVE_LINE_ADJ = 6, - D3D10_PRIMITIVE_TRIANGLE_ADJ = 7 -} - -enum D3D10_CULL_MODE { - D3D10_CULL_NONE = 1, - D3D10_CULL_FRONT, - D3D10_CULL_BACK -} - -struct D3D10_SO_DECLARATION_ENTRY { - LPCSTR SemanticName; - UINT SemanticIndex; - BYTE StartComponent; - BYTE ComponentCount; - BYTE OutputSlot; -} - -struct D3D10_VIEWPORT { - INT TopLeftX; - INT TopLeftY; - UINT Width; - UINT Height; - FLOAT MinDepth; - FLOAT MaxDepth; -} - -enum D3D10_RESOURCE_DIMENSION { - D3D10_RESOURCE_DIMENSION_UNKNOWN = 0, - D3D10_RESOURCE_DIMENSION_BUFFER, - D3D10_RESOURCE_DIMENSION_TEXTURE1D, - D3D10_RESOURCE_DIMENSION_TEXTURE2D, - D3D10_RESOURCE_DIMENSION_TEXTURE3D -} - -enum D3D10_SRV_DIMENSION { - D3D10_SRV_DIMENSION_UNKNOWN = 0, - D3D10_SRV_DIMENSION_BUFFER, - D3D10_SRV_DIMENSION_TEXTURE1D, - D3D10_SRV_DIMENSION_TEXTURE1DARRAY, - D3D10_SRV_DIMENSION_TEXTURE2D, - D3D10_SRV_DIMENSION_TEXTURE2DARRAY, - D3D10_SRV_DIMENSION_TEXTURE2DMS, - D3D10_SRV_DIMENSION_TEXTURE2DMSARRAY, - D3D10_SRV_DIMENSION_TEXTURE3D, - D3D10_SRV_DIMENSION_TEXTURECUBE -} - -enum D3D10_DSV_DIMENSION { - D3D10_DSV_DIMENSION_UNKNOWN = 0, - D3D10_DSV_DIMENSION_TEXTURE1D, - D3D10_DSV_DIMENSION_TEXTURE1DARRAY, - D3D10_DSV_DIMENSION_TEXTURE2D, - D3D10_DSV_DIMENSION_TEXTURE2DARRAY, - D3D10_DSV_DIMENSION_TEXTURE2DMS, - D3D10_DSV_DIMENSION_TEXTURE2DMSARRAY6 -} - -enum D3D10_RTV_DIMENSION { - D3D10_RTV_DIMENSION_UNKNOWN = 0, - D3D10_RTV_DIMENSION_BUFFER, - D3D10_RTV_DIMENSION_TEXTURE1D, - D3D10_RTV_DIMENSION_TEXTURE1DARRAY, - D3D10_RTV_DIMENSION_TEXTURE2D, - D3D10_RTV_DIMENSION_TEXTURE2DARRAY, - D3D10_RTV_DIMENSION_TEXTURE2DMS, - D3D10_RTV_DIMENSION_TEXTURE2DMSARRAY, - D3D10_RTV_DIMENSION_TEXTURE3D -} - -enum D3D10_USAGE { - D3D10_USAGE_DEFAULT = 0, - D3D10_USAGE_IMMUTABLE, - D3D10_USAGE_DYNAMIC, - D3D10_USAGE_STAGING -} - -enum D3D10_BIND_FLAG { - D3D10_BIND_VERTEX_BUFFER = 0x01, - D3D10_BIND_INDEX_BUFFER = 0x02, - D3D10_BIND_CONSTANT_BUFFER = 0x04, - D3D10_BIND_SHADER_RESOURCE = 0x08, - D3D10_BIND_STREAM_OUTPUT = 0x10, - D3D10_BIND_RENDER_TARGET = 0x20, - D3D10_BIND_DEPTH_STENCIL = 0x40 -} - -enum D3D10_CPU_ACCESS_FLAG { - D3D10_CPU_ACCESS_WRITE = 0x10000, - D3D10_CPU_ACCESS_READ = 0x20000 -} - -enum D3D10_RESOURCE_MISC_FLAG { - D3D10_RESOURCE_MISC_GENERATE_MIPS = 0x01, - D3D10_RESOURCE_MISC_SHARED = 0x02, - D3D10_RESOURCE_MISC_TEXTURECUBE = 0x04 -} - -enum D3D10_MAP { - D3D10_MAP_READ = 1, - D3D10_MAP_WRITE, - D3D10_MAP_READ_WRITE, - D3D10_MAP_WRITE_DISCARD, - D3D10_MAP_WRITE_NO_OVERWRITE -} - -enum D3D10_MAP_FLAG { - D3D10_MAP_FLAG_DO_NOT_WAIT = 0x100000 -} - -enum D3D10_RAISE_FLAG { - D3D10_RAISE_FLAG_DRIVER_INTERNAL_ERROR = 0x01 -} - -enum D3D10_CLEAR_FLAG { - D3D10_CLEAR_DEPTH = 0x01, - D3D10_CLEAR_STENCIL = 0x02 -} - -alias RECT D3D10_RECT; - -struct D3D10_BOX { - UINT left; - UINT top; - UINT front; - UINT right; - UINT bottom; - UINT back; -} - -extern (Windows) interface ID3D10DeviceChild : IUnknown { - //extern(Windows) : - void GetDevice(ID3D10Device* ppDevice); - HRESULT GetPrivateData(REFGUID guid, UINT *pDataSize, void *pData); - HRESULT SetPrivateData(REFGUID guid, UINT DataSize, void *pData); - HRESULT SetPrivateDataInterface(REFGUID guid, IUnknown pData); -} - -enum D3D10_COMPARISON_FUNC { - D3D10_COMPARISON_NEVER = 1, - D3D10_COMPARISON_LESS, - D3D10_COMPARISON_EQUAL, - D3D10_COMPARISON_LESS_EQUAL, - D3D10_COMPARISON_GREATER, - D3D10_COMPARISON_NOT_EQUAL, - D3D10_COMPARISON_GREATER_EQUAL, - D3D10_COMPARISON_ALWAYS -} - -enum D3D10_DEPTH_WRITE_MASK { - D3D10_DEPTH_WRITE_MASK_ZERO = 0, - D3D10_DEPTH_WRITE_MASK_ALL -} - -enum D3D10_STENCIL_OP { - D3D10_STENCIL_OP_KEEP = 1, - D3D10_STENCIL_OP_ZERO, - D3D10_STENCIL_OP_REPLACE, - D3D10_STENCIL_OP_INCR_SAT, - D3D10_STENCIL_OP_DECR_SAT, - D3D10_STENCIL_OP_INVERT, - D3D10_STENCIL_OP_INCR, - D3D10_STENCIL_OP_DECR -} - -struct D3D10_DEPTH_STENCILOP_DESC { - D3D10_STENCIL_OP StencilFailOp; - D3D10_STENCIL_OP StencilDepthFailOp; - D3D10_STENCIL_OP StencilPassOp; - D3D10_COMPARISON_FUNC StencilFunc; -} - -struct D3D10_DEPTH_STENCIL_DESC { - BOOL DepthEnable; - D3D10_DEPTH_WRITE_MASK DepthWriteMask; - D3D10_COMPARISON_FUNC DepthFunc; - BOOL StencilEnable; - UINT8 StencilReadMask; - UINT8 StencilWriteMask; - D3D10_DEPTH_STENCILOP_DESC FrontFace; - D3D10_DEPTH_STENCILOP_DESC BackFace; -} - -interface ID3D10DepthStencilState : ID3D10DeviceChild { - extern(Windows) : - void GetDesc(D3D10_DEPTH_STENCIL_DESC *pDesc); -} - -enum D3D10_BLEND { - D3D10_BLEND_ZERO = 1, - D3D10_BLEND_ONE = 2, - D3D10_BLEND_SRC_COLOR = 3, - D3D10_BLEND_INV_SRC_COLOR = 4, - D3D10_BLEND_SRC_ALPHA = 5, - D3D10_BLEND_INV_SRC_ALPHA = 6, - D3D10_BLEND_DEST_ALPHA = 7, - D3D10_BLEND_INV_DEST_ALPHA = 8, - D3D10_BLEND_DEST_COLOR = 9, - D3D10_BLEND_INV_DEST_COLOR = 10, - D3D10_BLEND_SRC_ALPHA_SAT = 11, - D3D10_BLEND_BLEND_FACTOR = 14, - D3D10_BLEND_INV_BLEND_FACTOR = 15, - D3D10_BLEND_SRC1_COLOR = 16, - D3D10_BLEND_INV_SRC1_COLOR = 17, - D3D10_BLEND_SRC1_ALPHA = 18, - D3D10_BLEND_INV_SRC1_ALPHA = 19 -} - -enum D3D10_BLEND_OP { - D3D10_BLEND_OP_ADD = 1, - D3D10_BLEND_OP_SUBTRACT, - D3D10_BLEND_OP_REV_SUBTRACT, - D3D10_BLEND_OP_MIN, - D3D10_BLEND_OP_MAX -} - -enum D3D10_COLOR_WRITE_ENABLE { - D3D10_COLOR_WRITE_ENABLE_RED = 1, - D3D10_COLOR_WRITE_ENABLE_GREEN = 2, - D3D10_COLOR_WRITE_ENABLE_BLUE = 4, - D3D10_COLOR_WRITE_ENABLE_ALPHA = 8, - D3D10_COLOR_WRITE_ENABLE_ALL = (((D3D10_COLOR_WRITE_ENABLE_RED | D3D10_COLOR_WRITE_ENABLE_GREEN) | D3D10_COLOR_WRITE_ENABLE_BLUE) | D3D10_COLOR_WRITE_ENABLE_ALPHA) -} - -struct D3D10_BLEND_DESC { - BOOL AlphaToCoverageEnable; - BOOL[8] BlendEnable; - D3D10_BLEND SrcBlend; - D3D10_BLEND DestBlend; - D3D10_BLEND_OP BlendOp; - D3D10_BLEND SrcBlendAlpha; - D3D10_BLEND DestBlendAlpha; - D3D10_BLEND_OP BlendOpAlpha; - UINT8[8] RenderTargetWriteMask; -} - -interface ID3D10BlendState : ID3D10DeviceChild { - extern(Windows) : - void GetDesc(D3D10_BLEND_DESC *pDesc); -} - -struct D3D10_RASTERIZER_DESC { - D3D10_FILL_MODE FillMode; - D3D10_CULL_MODE CullMode; - BOOL FrontCounterClockwise; - INT DepthBias; - FLOAT DepthBiasClamp; - FLOAT SlopeScaledDepthBias; - BOOL DepthClipEnable; - BOOL ScissorEnable; - BOOL MultisampleEnable; - BOOL AntialiasedLineEnable; -} - -interface ID3D10RasterizerState : ID3D10DeviceChild { - extern(Windows) : - void GetDesc(D3D10_RASTERIZER_DESC *pDesc); -} - -UINT D3D10CalcSubresource(UINT MipSlice, UINT ArraySlice, UINT MipLevels) { - return MipSlice + ArraySlice * MipLevels; -} - -struct D3D10_SUBRESOURCE_DATA { - void *pSysMem; - UINT SysMemPitch; - UINT SysMemSlicePitch; -} - -interface ID3D10Resource : ID3D10DeviceChild { - extern(Windows) : - void GetType(D3D10_RESOURCE_DIMENSION *rType); - void SetEvictionPriority(UINT EvictionPriority); - UINT GetEvictionPriority(); -} - -struct D3D10_BUFFER_DESC { - UINT ByteWidth; - D3D10_USAGE Usage; - UINT BindFlags; - UINT CPUAccessFlags; - UINT MiscFlags; -} - -interface ID3D10Buffer : ID3D10Resource { - extern(Windows) : - HRESULT Map(D3D10_MAP MapType, UINT MapFlags, void **ppData); - void Unmap(); - void GetDesc(D3D10_BUFFER_DESC *pDesc); -} - -struct D3D10_TEXTURE1D_DESC { - UINT Width; - UINT MipLevels; - UINT ArraySize; - DXGI_FORMAT Format; - D3D10_USAGE Usage; - UINT BindFlags; - UINT CPUAccessFlags; - UINT MiscFlags; -} - -interface ID3D10Texture1D : ID3D10Resource { - extern(Windows) : - HRESULT Map(UINT Subresource, D3D10_MAP MapType, UINT MapFlags, void **ppData); - void Unmap(UINT Subresource); - void GetDesc(D3D10_TEXTURE1D_DESC *pDesc); -} - -struct D3D10_TEXTURE2D_DESC { - UINT Width; - UINT Height; - UINT MipLevels; - UINT ArraySize; - DXGI_FORMAT Format; - DXGI_SAMPLE_DESC SampleDesc; - D3D10_USAGE Usage; - UINT BindFlags; - UINT CPUAccessFlags; - UINT MiscFlags; -} - -struct D3D10_MAPPED_TEXTURE2D { - void *pData; - UINT RowPitch; -} - -interface ID3D10Texture2D : ID3D10Resource { - extern(Windows) : - HRESULT Map(UINT Subresource, D3D10_MAP MapType, UINT MapFlags, D3D10_MAPPED_TEXTURE2D *pMappedTex2D); - void Unmap(UINT Subresource); - void GetDesc(D3D10_TEXTURE2D_DESC *pDesc); -} - -struct D3D10_TEXTURE3D_DESC { - UINT Width; - UINT Height; - UINT Depth; - UINT MipLevels; - DXGI_FORMAT Format; - D3D10_USAGE Usage; - UINT BindFlags; - UINT CPUAccessFlags; - UINT MiscFlags; -} - -struct D3D10_MAPPED_TEXTURE3D { - void *pData; - UINT RowPitch; - UINT DepthPitch; -} - -interface ID3D10Texture3D : ID3D10Resource { - extern(Windows) : - HRESULT Map(UINT Subresource, D3D10_MAP MapType, UINT MapFlags, D3D10_MAPPED_TEXTURE3D *pMappedTex3D); - void Unmap(UINT Subresource); - void GetDesc(D3D10_TEXTURE3D_DESC *pDesc); -} - -enum D3D10_TEXTURECUBE_FACE { - D3D10_TEXTURECUBE_FACE_POSITIVE_X = 0, - D3D10_TEXTURECUBE_FACE_NEGATIVE_X, - D3D10_TEXTURECUBE_FACE_POSITIVE_Y, - D3D10_TEXTURECUBE_FACE_NEGATIVE_Y, - D3D10_TEXTURECUBE_FACE_POSITIVE_Z, - D3D10_TEXTURECUBE_FACE_NEGATIVE_Z -} - -interface ID3D10View : ID3D10DeviceChild { - extern(Windows) : - void GetResource(ID3D10Resource *ppResource); -} - -struct D3D10_BUFFER_SRV { - UINT ElementOffset; - UINT ElementWidth; -} - -struct D3D10_TEX1D_SRV { - UINT MostDetailedMip; - UINT MipLevels; -} - -struct D3D10_TEX1D_ARRAY_SRV { - UINT MostDetailedMip; - UINT MipLevels; - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX2D_SRV { - UINT MostDetailedMip; - UINT MipLevels; -} - -struct D3D10_TEX2D_ARRAY_SRV { - UINT MostDetailedMip; - UINT MipLevels; - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX3D_SRV { - UINT MostDetailedMip; - UINT MipLevels; -} - -struct D3D10_TEXCUBE_SRV { - UINT MostDetailedMip; - UINT MipLevels; -} - -struct D3D10_TEX2DMS_SRV { - UINT UnusedField_NothingToDefine; -} - -struct D3D10_TEX2DMS_ARRAY_SRV { - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_SHADER_RESOURCE_VIEW_DESC { - DXGI_FORMAT Format; - D3D10_SRV_DIMENSION ViewDimension; - union { - D3D10_BUFFER_SRV Buffer; - D3D10_TEX1D_SRV Texture1D; - D3D10_TEX1D_ARRAY_SRV Texture1DArray; - D3D10_TEX2D_SRV Texture2D; - D3D10_TEX2D_ARRAY_SRV Texture2DArray; - D3D10_TEX2DMS_SRV Texture2DMS; - D3D10_TEX2DMS_ARRAY_SRV Texture2DMSArray; - D3D10_TEX3D_SRV Texture3D; - D3D10_TEXCUBE_SRV TextureCube; - } -} - -interface ID3D10ShaderResourceView : ID3D10View { - extern(Windows) : - void GetDesc(D3D10_SHADER_RESOURCE_VIEW_DESC *pDesc); -} - -struct D3D10_BUFFER_RTV { - UINT ElementOffset; - UINT ElementWidth; -} - -struct D3D10_TEX1D_RTV { - UINT MipSlice; -} - -struct D3D10_TEX1D_ARRAY_RTV { - UINT MipSlice; - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX2D_RTV { - UINT MipSlice; -} - -struct D3D10_TEX2DMS_RTV { - UINT UnusedField_NothingToDefine; -} - -struct D3D10_TEX2D_ARRAY_RTV { - UINT MipSlice; - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX2DMS_ARRAY_RTV { - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX3D_RTV { - UINT MipSlice; - UINT FirstWSlice; - UINT WSize; -} - -struct D3D10_RENDER_TARGET_VIEW_DESC { - DXGI_FORMAT Format; - D3D10_RTV_DIMENSION ViewDimension; - union { - D3D10_BUFFER_RTV Buffer; - D3D10_TEX1D_RTV Texture1D; - D3D10_TEX1D_ARRAY_RTV Texture1DArray; - D3D10_TEX2D_RTV Texture2D; - D3D10_TEX2D_ARRAY_RTV Texture2DArray; - D3D10_TEX2DMS_RTV Texture2DMS; - D3D10_TEX2DMS_ARRAY_RTV Texture2DMSArray; - D3D10_TEX3D_RTV Texture3D; - } -} - -interface ID3D10RenderTargetView : ID3D10View { - extern(Windows) : - void GetDesc(D3D10_RENDER_TARGET_VIEW_DESC *pDesc); -} - -struct D3D10_TEX1D_DSV { - UINT MipSlice; -} - -struct D3D10_TEX1D_ARRAY_DSV { - UINT MipSlice; - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX2D_DSV { - UINT MipSlice; -} - -struct D3D10_TEX2D_ARRAY_DSV { - UINT MipSlice; - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_TEX2DMS_DSV { - UINT UnusedField_NothingToDefine; -} - -struct D3D10_TEX2DMS_ARRAY_DSV { - UINT FirstArraySlice; - UINT ArraySize; -} - -struct D3D10_DEPTH_STENCIL_VIEW_DESC { - DXGI_FORMAT Format; - D3D10_DSV_DIMENSION ViewDimension; - union { - D3D10_TEX1D_DSV Texture1D; - D3D10_TEX1D_ARRAY_DSV Texture1DArray; - D3D10_TEX2D_DSV Texture2D; - D3D10_TEX2D_ARRAY_DSV Texture2DArray; - D3D10_TEX2DMS_DSV Texture2DMS; - D3D10_TEX2DMS_ARRAY_DSV Texture2DMSArray; - } -} - -interface ID3D10DepthStencilView : ID3D10View { - extern(Windows) : - void GetDesc(D3D10_DEPTH_STENCIL_VIEW_DESC *pDesc); -} - -interface ID3D10VertexShader : ID3D10DeviceChild { } - -interface ID3D10GeometryShader : ID3D10DeviceChild { } - -interface ID3D10PixelShader : ID3D10DeviceChild { } - -interface ID3D10InputLayout : ID3D10DeviceChild { } - -enum D3D10_FILTER { - D3D10_FILTER_MIN_MAG_MIP_POINT = 0x00, - D3D10_FILTER_MIN_MAG_POINT_MIP_LINEAR = 0x01, - D3D10_FILTER_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x04, - D3D10_FILTER_MIN_POINT_MAG_MIP_LINEAR = 0x05, - D3D10_FILTER_MIN_LINEAR_MAG_MIP_POINT = 0x10, - D3D10_FILTER_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x11, - D3D10_FILTER_MIN_MAG_LINEAR_MIP_POINT = 0x14, - D3D10_FILTER_MIN_MAG_MIP_LINEAR = 0x15, - D3D10_FILTER_ANISOTROPIC = 0x55, - D3D10_FILTER_COMPARISON_MIN_MAG_MIP_POINT = 0x80, - D3D10_FILTER_COMPARISON_MIN_MAG_POINT_MIP_LINEAR = 0x81, - D3D10_FILTER_COMPARISON_MIN_POINT_MAG_LINEAR_MIP_POINT = 0x84, - D3D10_FILTER_COMPARISON_MIN_POINT_MAG_MIP_LINEAR = 0x85, - D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_MIP_POINT = 0x90, - D3D10_FILTER_COMPARISON_MIN_LINEAR_MAG_POINT_MIP_LINEAR = 0x91, - D3D10_FILTER_COMPARISON_MIN_MAG_LINEAR_MIP_POINT = 0x94, - D3D10_FILTER_COMPARISON_MIN_MAG_MIP_LINEAR = 0x95, - D3D10_FILTER_COMPARISON_ANISOTROPIC = 0xd5, - D3D10_FILTER_TEXT_1BIT = 0x80000000 -} - - -enum D3D10_FILTER_TYPE { - D3D10_FILTER_TYPE_POINT = 0, - D3D10_FILTER_TYPE_LINEAR -} - -const D3D10_FILTER_TYPE_MASK = 0x03; - -const D3D10_MIN_FILTER_SHIFT = 4; - -const D3D10_MAG_FILTER_SHIFT = 2; - -const D3D10_MIP_FILTER_SHIFT = 0; - -const D3D10_COMPARISON_FILTERING_BIT = 0x80; - -const D3D10_ANISOTROPIC_FILTERING_BIT = 0x40; - -const D3D10_TEXT_1BIT_BIT = 0x80000000; - -D3D10_FILTER D3D10_ENCODE_BASIC_FILTER(int min, int mag, int mip, bool bComparison) { - return cast(D3D10_FILTER)(((bComparison) ? D3D10_COMPARISON_FILTERING_BIT : 0) | - ((min & D3D10_FILTER_TYPE_MASK) << D3D10_MIN_FILTER_SHIFT) | - ((mag & D3D10_FILTER_TYPE_MASK) << D3D10_MAG_FILTER_SHIFT) | - ((mip & D3D10_FILTER_TYPE_MASK) << D3D10_MIP_FILTER_SHIFT)); -} - -D3D10_FILTER D3D10_ENCODE_ANISOTROPIC_FILTER(bool bComparison) { - return cast(D3D10_FILTER)(D3D10_ANISOTROPIC_FILTERING_BIT | - D3D10_ENCODE_BASIC_FILTER(D3D10_FILTER_TYPE.D3D10_FILTER_TYPE_LINEAR, - D3D10_FILTER_TYPE.D3D10_FILTER_TYPE_LINEAR, D3D10_FILTER_TYPE.D3D10_FILTER_TYPE_LINEAR, - bComparison)); -} - -D3D10_FILTER_TYPE D3D10_DECODE_MIN_FILTER(D3D10_FILTER d3d10Filter) { - return cast(D3D10_FILTER_TYPE)((d3d10Filter >> D3D10_MIN_FILTER_SHIFT) & D3D10_FILTER_TYPE_MASK); -} - -D3D10_FILTER_TYPE D3D10_DECODE_MAG_FILTER(D3D10_FILTER d3d10Filter) { - return cast(D3D10_FILTER_TYPE)((d3d10Filter >> D3D10_MAG_FILTER_SHIFT) & D3D10_FILTER_TYPE_MASK); -} - -D3D10_FILTER_TYPE D3D10_DECODE_MIP_FILTER(D3D10_FILTER d3d10Filter) { - return cast(D3D10_FILTER_TYPE)((d3d10Filter >> D3D10_MIP_FILTER_SHIFT) & D3D10_FILTER_TYPE_MASK); -} - -bool D3D10_DECODE_IS_COMPARISON_FILTER(D3D10_FILTER d3d10Filter) { - return (d3d10Filter & D3D10_COMPARISON_FILTERING_BIT) == D3D10_COMPARISON_FILTERING_BIT; -} - -bool D3D10_DECODE_IS_ANISOTROPIC_FILTER(D3D10_FILTER d3d10Filter) { - return ((d3d10Filter & D3D10_ANISOTROPIC_FILTERING_BIT) && - (D3D10_FILTER_TYPE.D3D10_FILTER_TYPE_LINEAR == D3D10_DECODE_MIN_FILTER(d3d10Filter)) && - (D3D10_FILTER_TYPE.D3D10_FILTER_TYPE_LINEAR == D3D10_DECODE_MAG_FILTER(d3d10Filter)) && - (D3D10_FILTER_TYPE.D3D10_FILTER_TYPE_LINEAR == D3D10_DECODE_MIP_FILTER(d3d10Filter))); -} - -bool D3D10_DECODE_IS_TEXT_1BIT_FILTER(D3D10_FILTER d3d10Filter) { - return d3d10Filter == D3D10_TEXT_1BIT_BIT; -} - -enum D3D10_TEXTURE_ADDRESS_MODE { - D3D10_TEXTURE_ADDRESS_WRAP = 1, - D3D10_TEXTURE_ADDRESS_MIRROR, - D3D10_TEXTURE_ADDRESS_CLAMP, - D3D10_TEXTURE_ADDRESS_BORDER, - D3D10_TEXTURE_ADDRESS_MIRROR_ONCE -} - -struct D3D10_SAMPLER_DESC { - D3D10_FILTER Filter; - D3D10_TEXTURE_ADDRESS_MODE AddressU; - D3D10_TEXTURE_ADDRESS_MODE AddressV; - D3D10_TEXTURE_ADDRESS_MODE AddressW; - FLOAT MipLODBias; - UINT MaxAnisotropy; - D3D10_COMPARISON_FUNC ComparisonFunc; - FLOAT[4] BorderColor; - FLOAT MinLOD; - FLOAT MaxLOD; -} - -interface ID3D10SamplerState : ID3D10DeviceChild { - extern(Windows) : - void GetDesc(D3D10_SAMPLER_DESC *pDesc); -} - -enum D3D10_FORMAT_SUPPORT { - D3D10_FORMAT_SUPPORT_BUFFER = 0x000001, - D3D10_FORMAT_SUPPORT_IA_VERTEX_BUFFER = 0x000002, - D3D10_FORMAT_SUPPORT_IA_INDEX_BUFFER = 0x000004, - D3D10_FORMAT_SUPPORT_SO_BUFFER = 0x000008, - D3D10_FORMAT_SUPPORT_TEXTURE1D = 0x000010, - D3D10_FORMAT_SUPPORT_TEXTURE2D = 0x000020, - D3D10_FORMAT_SUPPORT_TEXTURE3D = 0x000040, - D3D10_FORMAT_SUPPORT_TEXTURECUBE = 0x000080, - D3D10_FORMAT_SUPPORT_SHADER_LOAD = 0x000100, - D3D10_FORMAT_SUPPORT_SHADER_SAMPLE = 0x000200, - D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_COMPARISON = 0x000400, - D3D10_FORMAT_SUPPORT_SHADER_SAMPLE_MONO_TEXT = 0x000800, - D3D10_FORMAT_SUPPORT_MIP = 0x001000, - D3D10_FORMAT_SUPPORT_MIP_AUTOGEN = 0x002000, - D3D10_FORMAT_SUPPORT_RENDER_TARGET = 0x004000, - D3D10_FORMAT_SUPPORT_BLENDABLE = 0x008000, - D3D10_FORMAT_SUPPORT_DEPTH_STENCIL = 0x010000, - D3D10_FORMAT_SUPPORT_CPU_LOCKABLE = 0x020000, - D3D10_FORMAT_SUPPORT_MULTISAMPLE_RESOLVE = 0x040000, - D3D10_FORMAT_SUPPORT_DISPLAY = 0x080000, - D3D10_FORMAT_SUPPORT_CAST_WITHIN_BIT_LAYOUT = 0x100000, - D3D10_FORMAT_SUPPORT_MULTISAMPLE_RENDERTARGET = 0x200000, - D3D10_FORMAT_SUPPORT_MULTISAMPLE_LOAD = 0x400000, - D3D10_FORMAT_SUPPORT_SHADER_GATHER = 0x800000 -} - -interface ID3D10Asynchronous : ID3D10DeviceChild { - extern(Windows) : - void Begin(); - void End(); - HRESULT GetData(void *pData, UINT DataSize, UINT GetDataFlags); - UINT GetDataSize(); -} - -enum D3D10_ASYNC_GETDATA_FLAG { - D3D10_ASYNC_GETDATA_DONOTFLUSH = 0x1 -} - -enum D3D10_QUERY { - D3D10_QUERY_EVENT = 0, - D3D10_QUERY_OCCLUSION = (D3D10_QUERY_EVENT + 1), - D3D10_QUERY_TIMESTAMP = (D3D10_QUERY_OCCLUSION + 1), - D3D10_QUERY_TIMESTAMP_DISJOINT = (D3D10_QUERY_TIMESTAMP + 1), - D3D10_QUERY_PIPELINE_STATISTICS = (D3D10_QUERY_TIMESTAMP_DISJOINT + 1), - D3D10_QUERY_OCCLUSION_PREDICATE = (D3D10_QUERY_PIPELINE_STATISTICS + 1), - D3D10_QUERY_SO_STATISTICS = (D3D10_QUERY_OCCLUSION_PREDICATE + 1), - D3D10_QUERY_SO_OVERFLOW_PREDICATE = (D3D10_QUERY_SO_STATISTICS + 1) -} - -enum D3D10_QUERY_MISC_FLAG { - D3D10_QUERY_MISC_PREDICATEHINT = 0x01 -} - -struct D3D10_QUERY_DESC { - D3D10_QUERY Query; - UINT MiscFlags; -} - -interface ID3D10Query : ID3D10Asynchronous { - extern(Windows) : - void GetDesc(D3D10_QUERY_DESC *pDesc); -} - -interface ID3D10Predicate : ID3D10Query { } - -struct D3D10_QUERY_DATA_TIMESTAMP_DISJOINT { - UINT64 Frequency; - BOOL Disjoint; -} - -struct D3D10_QUERY_DATA_PIPELINE_STATISTICS { - UINT64 IAVertices; - UINT64 IAPrimitives; - UINT64 VSInvocations; - UINT64 GSInvocations; - UINT64 GSPrimitives; - UINT64 CInvocations; - UINT64 CPrimitives; - UINT64 PSInvocations; -} - -struct D3D10_QUERY_DATA_SO_STATISTICS { - UINT64 NumPrimitivesWritten; - UINT64 PrimitivesStorageNeeded; -} - -enum D3D10_COUNTER { - D3D10_COUNTER_GPU_IDLE = 0, - D3D10_COUNTER_VERTEX_PROCESSING = (D3D10_COUNTER_GPU_IDLE + 1), - D3D10_COUNTER_GEOMETRY_PROCESSING = (D3D10_COUNTER_VERTEX_PROCESSING + 1), - D3D10_COUNTER_PIXEL_PROCESSING = (D3D10_COUNTER_GEOMETRY_PROCESSING + 1), - D3D10_COUNTER_OTHER_GPU_PROCESSING = (D3D10_COUNTER_PIXEL_PROCESSING + 1), - D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION = (D3D10_COUNTER_OTHER_GPU_PROCESSING + 1), - D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION = (D3D10_COUNTER_HOST_ADAPTER_BANDWIDTH_UTILIZATION + 1), - D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION = (D3D10_COUNTER_LOCAL_VIDMEM_BANDWIDTH_UTILIZATION + 1), - D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION = (D3D10_COUNTER_VERTEX_THROUGHPUT_UTILIZATION + 1), - D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION = (D3D10_COUNTER_TRIANGLE_SETUP_THROUGHPUT_UTILIZATION + 1), - D3D10_COUNTER_VS_MEMORY_LIMITED = (D3D10_COUNTER_FILLRATE_THROUGHPUT_UTILIZATION + 1), - D3D10_COUNTER_VS_COMPUTATION_LIMITED = (D3D10_COUNTER_VS_MEMORY_LIMITED + 1), - D3D10_COUNTER_GS_MEMORY_LIMITED = (D3D10_COUNTER_VS_COMPUTATION_LIMITED + 1), - D3D10_COUNTER_GS_COMPUTATION_LIMITED = (D3D10_COUNTER_GS_MEMORY_LIMITED + 1), - D3D10_COUNTER_PS_MEMORY_LIMITED = (D3D10_COUNTER_GS_COMPUTATION_LIMITED + 1), - D3D10_COUNTER_PS_COMPUTATION_LIMITED = (D3D10_COUNTER_PS_MEMORY_LIMITED + 1), - D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE = (D3D10_COUNTER_PS_COMPUTATION_LIMITED + 1), - D3D10_COUNTER_TEXTURE_CACHE_HIT_RATE = (D3D10_COUNTER_POST_TRANSFORM_CACHE_HIT_RATE + 1), - D3D10_COUNTER_DEVICE_DEPENDENT_0 = 0x40000000 -} - -enum D3D10_COUNTER_TYPE { - D3D10_COUNTER_TYPE_FLOAT32 = 0, - D3D10_COUNTER_TYPE_UINT16 = (D3D10_COUNTER_TYPE_FLOAT32 + 1), - D3D10_COUNTER_TYPE_UINT32 = (D3D10_COUNTER_TYPE_UINT16 + 1), - D3D10_COUNTER_TYPE_UINT64 = (D3D10_COUNTER_TYPE_UINT32 + 1) -} - -struct D3D10_COUNTER_DESC { - D3D10_COUNTER Counter; - UINT MiscFlags; -} - -struct D3D10_COUNTER_INFO { - D3D10_COUNTER LastDeviceDependentCounter; - UINT NumSimultaneousCounters; - UINT8 NumDetectableParallelUnits; -} - -interface ID3D10Counter : ID3D10Asynchronous { - extern(Windows) : - void GetDesc(D3D10_COUNTER_DESC *pDesc); -} - -interface ID3D10Device : IUnknown { - extern(Windows) : - void VSSetConstantBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppConstantBuffers); - void PSSetShaderResources(UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView* ppShaderResourceViews); - void PSSetShader(ID3D10PixelShader pPixelShader); - void PSSetSamplers(UINT StartSlot, UINT NumSamplers, ID3D10SamplerState* ppSamplers); - void VSSetShader(ID3D10VertexShader pVertexShader); - void DrawIndexed(UINT IndexCount, UINT StartIndexLocation, INT BaseVertexLocation); - void Draw(UINT VertexCount, UINT StartVertexLocation); - void PSSetConstantBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppConstantBuffers); - void IASetInputLayout(ID3D10InputLayout pInputLayout); - void IASetVertexBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppVertexBuffers, UINT* pStrides, UINT* pOffsets); - void IASetIndexBuffer(ID3D10Buffer pIndexBuffer, DXGI_FORMAT Format, UINT Offset); - void DrawIndexedInstanced(UINT IndexCountPerInstance, UINT InstanceCount, UINT StartIndexLocation, INT BaseVertexLocation, UINT StartInstanceLocation); - void DrawInstanced(UINT VertexCountPerInstance, UINT InstanceCount, UINT StartVertexLocation, UINT StartInstanceLocation); - void GSSetConstantBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppConstantBuffers); - void GSSetShader(ID3D10GeometryShader pShader); - void IASetPrimitiveTopology(D3D10_PRIMITIVE_TOPOLOGY Topology); - void VSSetShaderResources(UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView* ppShaderResourceViews); - void VSSetSamplers(UINT StartSlot, UINT NumSamplers, ID3D10SamplerState* ppSamplers); - void SetPredication(ID3D10Predicate pPredicate, BOOL PredicateValue); - void GSSetShaderResources(UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView* ppShaderResourceViews); - void GSSetSamplers(UINT StartSlot, UINT NumSamplers, ID3D10SamplerState* ppSamplers); - void OMSetRenderTargets(UINT NumViews, ID3D10RenderTargetView* ppRenderTargetViews, ID3D10DepthStencilView pDepthStencilView); - void OMSetBlendState(ID3D10BlendState pBlendState, FLOAT[4] BlendFactor, UINT SampleMask); - void OMSetDepthStencilState(ID3D10DepthStencilState pDepthStencilState, UINT StencilRef); - void SOSetTargets(UINT NumBuffers, ID3D10Buffer* ppSOTargets, UINT* pOffsets); - void DrawAuto(); - void RSSetState(ID3D10RasterizerState pRasterizerState); - void RSSetViewports(UINT NumViewports, D3D10_VIEWPORT* pViewports); - void RSSetScissorRects(UINT NumRects, D3D10_RECT* pRects); - void CopySubresourceRegion(ID3D10Resource pDstResource, UINT DstSubresource, UINT DstX, UINT DstY, UINT DstZ, ID3D10Resource pSrcResource, UINT SrcSubresource, D3D10_BOX* pSrcBox); - void CopyResource(ID3D10Resource pDstResource, ID3D10Resource pSrcResource); - void UpdateSubresource(ID3D10Resource pDstResource, UINT DstSubresource, D3D10_BOX* pDstBox, void* pSrcData, UINT SrcRowPitch, UINT SrcDepthPitch); - void ClearRenderTargetView(ID3D10RenderTargetView pRenderTargetView, FLOAT[4]* ColorRGBA); - void ClearDepthStencilView(ID3D10DepthStencilView pDepthStencilView, UINT ClearFlags, FLOAT Depth, UINT8 Stencil); - void GenerateMips(ID3D10ShaderResourceView pShaderResourceView); - void ResolveSubresource(ID3D10Resource pDstResource, UINT DstSubresource, ID3D10Resource pSrcResource, UINT SrcSubresource, DXGI_FORMAT Format); - void VSGetConstantBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppConstantBuffers); - void PSGetShaderResources(UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView* ppShaderResourceViews); - void PSGetShader(ID3D10PixelShader* ppPixelShader); - void PSGetSamplers(UINT StartSlot, UINT NumSamplers, ID3D10SamplerState* ppSamplers); - void VSGetShader(ID3D10VertexShader* ppVertexShader); - void PSGetConstantBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppConstantBuffers); - void IAGetInputLayout(ID3D10InputLayout* ppInputLayout); - void IAGetVertexBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppVertexBuffers, UINT* pStrides, UINT* pOffsets); - void IAGetIndexBuffer(ID3D10Buffer* pIndexBuffer, DXGI_FORMAT* Format, UINT* Offset); - void GSGetConstantBuffers(UINT StartSlot, UINT NumBuffers, ID3D10Buffer* ppConstantBuffers); - void GSGetShader(ID3D10GeometryShader* ppGeometryShader); - void IAGetPrimitiveTopology(D3D10_PRIMITIVE_TOPOLOGY* pTopology); - void VSGetShaderResources(UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView* ppShaderResourceViews); - void VSGetSamplers(UINT StartSlot, UINT NumSamplers, ID3D10SamplerState* ppSamplers); - void GetPredication(ID3D10Predicate* ppPredicate, BOOL* pPredicateValue); - void GSGetShaderResources(UINT StartSlot, UINT NumViews, ID3D10ShaderResourceView* ppShaderResourceViews); - void GSGetSamplers(UINT StartSlot, UINT NumSamplers, ID3D10SamplerState* ppSamplers); - void OMGetRenderTargets(UINT NumViews, ID3D10RenderTargetView* ppRenderTargetViews, ID3D10DepthStencilView* ppDepthStencilView); - void OMGetBlendState(ID3D10BlendState* ppBlendState, FLOAT BlendFactor[ 4 ], UINT* pSampleMask); - void OMGetDepthStencilState(ID3D10DepthStencilState* ppDepthStencilState, UINT* pStencilRef); - void SOGetTargets(UINT NumBuffers, ID3D10Buffer* ppSOTargets, UINT* pOffsets); - void RSGetState(ID3D10RasterizerState* ppRasterizerState); - void RSGetViewports(UINT* NumViewports, D3D10_VIEWPORT* pViewports); - void RSGetScissorRects(UINT* NumRects, D3D10_RECT* pRects); - HRESULT GetDeviceRemovedReason(); - HRESULT SetExceptionMode(UINT RaiseFlags); - UINT GetExceptionMode(); - HRESULT GetPrivateData(REFGUID guid, UINT* pDataSize, void* pData); - HRESULT SetPrivateData(REFGUID guid, UINT DataSize, void* pData); - HRESULT SetPrivateDataInterface(REFGUID guid, IUnknown pData); - void ClearState(); - void Flush(); - HRESULT CreateBuffer(D3D10_BUFFER_DESC* pDesc, D3D10_SUBRESOURCE_DATA* pInitialData, ID3D10Buffer* ppBuffer); - HRESULT CreateTexture1D(D3D10_TEXTURE1D_DESC* pDesc, D3D10_SUBRESOURCE_DATA* pInitialData, ID3D10Texture1D* ppTexture1D); - HRESULT CreateTexture2D(D3D10_TEXTURE2D_DESC* pDesc, D3D10_SUBRESOURCE_DATA* pInitialData, ID3D10Texture2D* ppTexture2D); - HRESULT CreateTexture3D(D3D10_TEXTURE3D_DESC* pDesc, D3D10_SUBRESOURCE_DATA* pInitialData, ID3D10Texture3D* ppTexture3D); - HRESULT CreateShaderResourceView(ID3D10Resource pResource, D3D10_SHADER_RESOURCE_VIEW_DESC* pDesc, ID3D10ShaderResourceView* ppSRView); - HRESULT CreateRenderTargetView(ID3D10Resource pResource, D3D10_RENDER_TARGET_VIEW_DESC* pDesc, ID3D10RenderTargetView* ppRTView); - HRESULT CreateDepthStencilView(ID3D10Resource pResource, D3D10_DEPTH_STENCIL_VIEW_DESC* pDesc, ID3D10DepthStencilView* ppDepthStencilView); - HRESULT CreateInputLayout(D3D10_INPUT_ELEMENT_DESC* pInputElementDescs, UINT NumElements, void* pShaderBytecodeWithInputSignature, SIZE_T BytecodeLength, ID3D10InputLayout* ppInputLayout); - HRESULT CreateVertexShader(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10VertexShader* ppVertexShader); - HRESULT CreateGeometryShader(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10GeometryShader* ppGeometryShader); - HRESULT CreateGeometryShaderWithStreamOutput(void* pShaderBytecode, SIZE_T BytecodeLength, D3D10_SO_DECLARATION_ENTRY* pSODeclaration, UINT NumEntries, UINT OutputStreamStride, ID3D10GeometryShader* ppGeometryShader); - HRESULT CreatePixelShader(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10PixelShader* ppPixelShader); - HRESULT CreateBlendState(D3D10_BLEND_DESC* pBlendStateDesc, ID3D10BlendState* ppBlendState); - HRESULT CreateDepthStencilState(D3D10_DEPTH_STENCIL_DESC* pDepthStencilDesc, ID3D10DepthStencilState* ppDepthStencilState); - HRESULT CreateRasterizerState(D3D10_RASTERIZER_DESC* pRasterizerDesc, ID3D10RasterizerState* ppRasterizerState); - HRESULT CreateSamplerState(D3D10_SAMPLER_DESC* pSamplerDesc, ID3D10SamplerState* ppSamplerState); - HRESULT CreateQuery(D3D10_QUERY_DESC* pQueryDesc, ID3D10Query* ppQuery); - HRESULT CreatePredicate(D3D10_QUERY_DESC* pPredicateDesc, ID3D10Predicate* ppPredicate); - HRESULT CreateCounter(D3D10_COUNTER_DESC* pCounterDesc, ID3D10Counter* ppCounter); - HRESULT CheckFormatSupport(DXGI_FORMAT Format, UINT* pFormatSupport); - HRESULT CheckMultisampleQualityLevels(DXGI_FORMAT Format, UINT SampleCount, UINT* pNumQualityLevels); - void CheckCounterInfo(D3D10_COUNTER_INFO* pCounterInfo); - HRESULT CheckCounter(D3D10_COUNTER_DESC* pDesc, D3D10_COUNTER_TYPE* pType, UINT* pActiveCounters, LPSTR szName, UINT* pNameLength, LPSTR szUnits, UINT* pUnitsLength, LPSTR szDescription, UINT* pDescriptionLength); - UINT GetCreationFlags(); - HRESULT OpenSharedResource(HANDLE hResource, REFIID ReturnedInterface, void** ppResource); - void SetTextFilterSize(UINT Width, UINT Height); - void GetTextFilterSize(UINT* pWidth, UINT* pHeight); -} - -interface ID3D10Multithread : IUnknown { - extern(Windows) : - void Enter(); - void Leave(); - BOOL SetMultithreadProtected(BOOL bMTProtect); - BOOL GetMultithreadProtected(); -} - -enum D3D10_CREATE_DEVICE_FLAG { - D3D10_CREATE_DEVICE_SINGLETHREADED = 0x01, - D3D10_CREATE_DEVICE_DEBUG = 0x02, - D3D10_CREATE_DEVICE_SWITCH_TO_REF = 0x04, - D3D10_CREATE_DEVICE_PREVENT_INTERNAL_THREADING_OPTIMIZATIONS = 0x08 -} - -const D3D10_SDK_VERSION = 29; - -extern(C) const GUID IID_ID3D10DeviceChild = {0x9B7E4C00, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10DepthStencilState = {0x2B4B1CC8, 0xA4AD, 0x41f8, [0x83, 0x22, 0xCA, 0x86, 0xFC, 0x3E, 0xC6, 0x75]}; -extern(C) const GUID IID_ID3D10BlendState = {0xEDAD8D19, 0x8A35, 0x4d6d, [0x85, 0x66, 0x2E, 0xA2, 0x76, 0xCD, 0xE1, 0x61]}; -extern(C) const GUID IID_ID3D10RasterizerState = {0xA2A07292, 0x89AF, 0x4345, [0xBE, 0x2E, 0xC5, 0x3D, 0x9F, 0xBB, 0x6E, 0x9F]}; -extern(C) const GUID IID_ID3D10Resource = {0x9B7E4C01, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Buffer = {0x9B7E4C02, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Texture1D = {0x9B7E4C03, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Texture2D = {0x9B7E4C04, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Texture3D = {0x9B7E4C05, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10View = {0xC902B03F, 0x60A7, 0x49BA, [0x99, 0x36, 0x2A, 0x3A, 0xB3, 0x7A, 0x7E, 0x33]}; -extern(C) const GUID IID_ID3D10ShaderResourceView = {0x9B7E4C07, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10RenderTargetView = {0x9B7E4C08, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10DepthStencilView = {0x9B7E4C09, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10VertexShader = {0x9B7E4C0A, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10GeometryShader = {0x6316BE88, 0x54CD, 0x4040, [0xAB, 0x44, 0x20, 0x46, 0x1B, 0xC8, 0x1F, 0x68]}; -extern(C) const GUID IID_ID3D10PixelShader = {0x4968B601, 0x9D00, 0x4cde, [0x83, 0x46, 0x8E, 0x7F, 0x67, 0x58, 0x19, 0xB6]}; -extern(C) const GUID IID_ID3D10InputLayout = {0x9B7E4C0B, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10SamplerState = {0x9B7E4C0C, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Asynchronous = {0x9B7E4C0D, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Query = {0x9B7E4C0E, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Predicate = {0x9B7E4C10, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Counter = {0x9B7E4C11, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Device = {0x9B7E4C0F, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; -extern(C) const GUID IID_ID3D10Multithread = {0x9B7E4E00, 0x342C, 0x4106, [0xA1, 0x9F, 0x4F, 0x27, 0x04, 0xF6, 0x89, 0xF0]}; - -public import win32.directx.d3d10shader; -public import win32.directx.d3d10effect; diff --git a/3rdparty-extra/win32/directx/d3d10effect.d b/3rdparty-extra/win32/directx/d3d10effect.d deleted file mode 100644 index cde1f39c1..000000000 --- a/3rdparty-extra/win32/directx/d3d10effect.d +++ /dev/null @@ -1,796 +0,0 @@ -/***********************************************************************\ -* d3d10effect.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.d3d10effect; -version(Windows): - -private import win32.windows; -private import win32.directx.d3d10; - - -enum D3D10_DEVICE_STATE_TYPES { - D3D10_DST_SO_BUFFERS = 1, - D3D10_DST_OM_RENDER_TARGETS, - D3D10_DST_OM_DEPTH_STENCIL_STATE, - D3D10_DST_OM_BLEND_STATE, - D3D10_DST_VS, - D3D10_DST_VS_SAMPLERS, - D3D10_DST_VS_SHADER_RESOURCES, - D3D10_DST_VS_CONSTANT_BUFFERS, - D3D10_DST_GS, - D3D10_DST_GS_SAMPLERS, - D3D10_DST_GS_SHADER_RESOURCES, - D3D10_DST_GS_CONSTANT_BUFFERS, - D3D10_DST_PS, - D3D10_DST_PS_SAMPLERS, - D3D10_DST_PS_SHADER_RESOURCES, - D3D10_DST_PS_CONSTANT_BUFFERS, - D3D10_DST_IA_VERTEX_BUFFERS, - D3D10_DST_IA_INDEX_BUFFER, - D3D10_DST_IA_INPUT_LAYOUT, - D3D10_DST_IA_PRIMITIVE_TOPOLOGY, - D3D10_DST_RS_VIEWPORTS, - D3D10_DST_RS_SCISSOR_RECTS, - D3D10_DST_RS_RASTERIZER_STATE, - D3D10_DST_PREDICATION -} - -struct D3D10_STATE_BLOCK_MASK { - BYTE VS; - BYTE[2] VSSamplers; - BYTE[16] VSShaderResources; - BYTE[2] VSConstantBuffers; - BYTE GS; - BYTE[2] GSSamplers; - BYTE[16] GSShaderResources; - BYTE[2] GSConstantBuffers; - BYTE PS; - BYTE[2] PSSamplers; - BYTE[16] PSShaderResources; - BYTE[2] PSConstantBuffers; - BYTE[2] IAVertexBuffers; - BYTE IAIndexBuffer; - BYTE IAInputLayout; - BYTE IAPrimitiveTopology; - BYTE OMRenderTargets; - BYTE OMDepthStencilState; - BYTE OMBlendState; - BYTE RSViewports; - BYTE RSScissorRects; - BYTE RSRasterizerState; - BYTE SOBuffers; - BYTE Predication; -} - -extern (C) const GUID IID_ID3D10StateBlock = {0x803425a, 0x57f5, 0x4dd6, [0x94, 0x65, 0xa8, 0x75, 0x70, 0x83, 0x4a, 0x08]}; - -interface ID3D10StateBlock : IUnknown { - extern(Windows) : - HRESULT Capture(); - HRESULT Apply(); - HRESULT ReleaseAllDeviceObjects(); - HRESULT GetDevice(ID3D10Device ppDevice); -} - -HRESULT D3D10StateBlockMaskUnion(D3D10_STATE_BLOCK_MASK* pA, D3D10_STATE_BLOCK_MASK* pB, D3D10_STATE_BLOCK_MASK* pResult); -HRESULT D3D10StateBlockMaskIntersect(D3D10_STATE_BLOCK_MASK* pA, D3D10_STATE_BLOCK_MASK* pB, D3D10_STATE_BLOCK_MASK* pResult); -HRESULT D3D10StateBlockMaskDifference(D3D10_STATE_BLOCK_MASK* pA, D3D10_STATE_BLOCK_MASK* pB, D3D10_STATE_BLOCK_MASK* pResult); -HRESULT D3D10StateBlockMaskEnableCapture(D3D10_STATE_BLOCK_MASK* pMask, D3D10_DEVICE_STATE_TYPES StateType, UINT RangeStart, UINT RangeLength); -HRESULT D3D10StateBlockMaskDisableCapture(D3D10_STATE_BLOCK_MASK* pMask, D3D10_DEVICE_STATE_TYPES StateType, UINT RangeStart, UINT RangeLength); -HRESULT D3D10StateBlockMaskEnableAll(D3D10_STATE_BLOCK_MASK* pMask); -HRESULT D3D10StateBlockMaskDisableAll(D3D10_STATE_BLOCK_MASK* pMask); -BOOL D3D10StateBlockMaskGetSetting(D3D10_STATE_BLOCK_MASK* pMask, D3D10_DEVICE_STATE_TYPES StateType, UINT Entry); -HRESULT D3D10CreateStateBlock(ID3D10Device pDevice, D3D10_STATE_BLOCK_MASK* pStateBlockMask, ID3D10StateBlock ppStateBlock); - -const D3D10_EFFECT_COMPILE_CHILD_EFFECT = 1 << 0; -const D3D10_EFFECT_COMPILE_ALLOW_SLOW_OPS = 1 << 1; -const D3D10_EFFECT_SINGLE_THREADED = 1 << 3; -const D3D10_EFFECT_VARIABLE_POOLED = 1 << 0; -const D3D10_EFFECT_VARIABLE_ANNOTATION = 1 << 1; -const D3D10_EFFECT_VARIABLE_EXPLICIT_BIND_POINT = 1 << 2; - -struct D3D10_EFFECT_TYPE_DESC { - LPCSTR TypeName; - D3D10_SHADER_VARIABLE_CLASS Class; - D3D10_SHADER_VARIABLE_TYPE Type; - UINT Elements; - UINT Members; - UINT Rows; - UINT Columns; - UINT PackedSize; - UINT UnpackedSize; - UINT Stride; -} - -extern (C) const GUID IID_ID3D10EffectType = {0x4e9e1ddc, 0xcd9d, 0x4772, [0xa8, 0x37, 0x0, 0x18, 0x0b, 0x9b, 0x88, 0xfd]}; - -interface ID3D10EffectType { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - HRESULT GetDesc(D3D10_EFFECT_TYPE_DESC* pDesc); - ID3D10EffectType GetMemberTypeByIndex(UINT Index); - ID3D10EffectType GetMemberTypeByName(LPCSTR Name); - ID3D10EffectType GetMemberTypeBySemantic(LPCSTR Semantic); - LPCSTR GetMemberName(UINT Index); - LPCSTR GetMemberSemantic(UINT Index); - */ -} - -struct D3D10_EFFECT_VARIABLE_DESC { - LPCSTR Name; - LPCSTR Semantic; - UINT Flags; - UINT Annotations; - UINT BufferOffset; - UINT ExplicitBindPoint; -} - -extern (C) const GUID IID_ID3D10EffectVariable = {0xae897105, 0x00e6, 0x45bf, [0xbb, 0x8e, 0x28, 0x1d, 0xd6, 0xdb, 0x8e, 0x1b]}; - -interface ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectScalarVariable = {0xe48f7b, 0xd2c8, 0x49e8, [0xa8, 0x6c, 0x2, 0x2d, 0xee, 0x53, 0x43, 0x1f]}; - -interface ID3D10EffectScalarVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT ByteOffset, UINT ByteCount); - HRESULT GetRawValue(void* pData, UINT ByteOffset, UINT ByteCount); - HRESULT SetFloat(float Value); - HRESULT GetFloat(float* pValue); - HRESULT SetFloatArray(float* pData, UINT Offset, UINT Count); - HRESULT GetFloatArray(float* pData, UINT Offset, UINT Count); - HRESULT SetInt(int Value); - HRESULT GetInt(int* pValue); - HRESULT SetIntArray(int* pData, UINT Offset, UINT Count); - HRESULT GetIntArray(int* pData, UINT Offset, UINT Count); - HRESULT SetBool(BOOL Value); - HRESULT GetBool(BOOL* pValue); - HRESULT SetBoolArray(BOOL* pData, UINT Offset, UINT Count); - HRESULT GetBoolArray(BOOL* pData, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectVectorVariable = {0x62b98c44, 0x1f82, 0x4c67, [0xbc, 0xd0, 0x72, 0xcf, 0x8f, 0x21, 0x7e, 0x81]}; - -interface ID3D10EffectVectorVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT ByteOffset, UINT ByteCount); - HRESULT GetRawValue(void* pData, UINT ByteOffset, UINT ByteCount); - HRESULT SetBoolVector (BOOL* pData); - HRESULT SetIntVector (int* pData); - HRESULT SetFloatVector(float* pData); - HRESULT GetBoolVector (BOOL* pData); - HRESULT GetIntVector (int* pData); - HRESULT GetFloatVector(float* pData); - HRESULT SetBoolVectorArray (BOOL* pData, UINT Offset, UINT Count); - HRESULT SetIntVectorArray (int* pData, UINT Offset, UINT Count); - HRESULT SetFloatVectorArray(float* pData, UINT Offset, UINT Count); - HRESULT GetBoolVectorArray (BOOL* pData, UINT Offset, UINT Count); - HRESULT GetIntVectorArray (int* pData, UINT Offset, UINT Count); - HRESULT GetFloatVectorArray(float* pData, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectMatrixVariable = {0x50666c24, 0xb82f, 0x4eed, [0xa1, 0x72, 0x5b, 0x6e, 0x7e, 0x85, 0x22, 0xe0]}; - -interface ID3D10EffectMatrixVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT ByteOffset, UINT ByteCount); - HRESULT GetRawValue(void* pData, UINT ByteOffset, UINT ByteCount); - HRESULT SetMatrix(float* pData); - HRESULT GetMatrix(float* pData); - HRESULT SetMatrixArray(float* pData, UINT Offset, UINT Count); - HRESULT GetMatrixArray(float* pData, UINT Offset, UINT Count); - HRESULT SetMatrixTranspose(float* pData); - HRESULT GetMatrixTranspose(float* pData); - HRESULT SetMatrixTransposeArray(float* pData, UINT Offset, UINT Count); - HRESULT GetMatrixTransposeArray(float* pData, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectStringVariable = {0x71417501, 0x8df9, 0x4e0a, [0xa7, 0x8a, 0x25, 0x5f, 0x97, 0x56, 0xba, 0xff]}; - -interface ID3D10EffectStringVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetString(LPCSTR* ppString); - HRESULT GetStringArray(LPCSTR* ppStrings, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectShaderResourceVariable = {0xc0a7157b, 0xd872, 0x4b1d, [0x80, 0x73, 0xef, 0xc2, 0xac, 0xd4, 0xb1, 0xfc]}; - -interface ID3D10EffectShaderResourceVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT SetResource(ID3D10ShaderResourceView pResource); - HRESULT GetResource(ID3D10ShaderResourceView* ppResource); - HRESULT SetResourceArray(ID3D10ShaderResourceView* ppResources, UINT Offset, UINT Count); - HRESULT GetResourceArray(ID3D10ShaderResourceView* ppResources, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectRenderTargetViewVariable = {0x28ca0cc3, 0xc2c9, 0x40bb, [0xb5, 0x7f, 0x67, 0xb7, 0x37, 0x12, 0x2b, 0x17]}; - -interface ID3D10EffectRenderTargetViewVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT SetRenderTarget(ID3D10RenderTargetView pResource); - HRESULT GetRenderTarget(ID3D10RenderTargetView* ppResource); - HRESULT SetRenderTargetArray(ID3D10RenderTargetView* ppResources, UINT Offset, UINT Count); - HRESULT GetRenderTargetArray(ID3D10RenderTargetView* ppResources, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectDepthStencilViewVariable = {0x3e02c918, 0xcc79, 0x4985, [0xb6, 0x22, 0x2d, 0x92, 0xad, 0x70, 0x16, 0x23]}; - -interface ID3D10EffectDepthStencilViewVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT SetDepthStencil(ID3D10DepthStencilView pResource); - HRESULT GetDepthStencil(ID3D10DepthStencilView* ppResource); - HRESULT SetDepthStencilArray(ID3D10DepthStencilView* ppResources, UINT Offset, UINT Count); - HRESULT GetDepthStencilArray(ID3D10DepthStencilView* ppResources, UINT Offset, UINT Count); - */ -} - -extern (C) const GUID IID_ID3D10EffectConstantBuffer = {0x56648f4d, 0xcc8b, 0x4444, [0xa5, 0xad, 0xb5, 0xa3, 0xd7, 0x6e, 0x91, 0xb3]}; - -interface ID3D10EffectConstantBuffer : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT SetConstantBuffer(ID3D10Buffer pConstantBuffer); - HRESULT GetConstantBuffer(ID3D10Buffer* ppConstantBuffer); - HRESULT SetTextureBuffer(ID3D10ShaderResourceView pTextureBuffer); - HRESULT GetTextureBuffer(ID3D10ShaderResourceView* ppTextureBuffer); - */ -} - -struct D3D10_EFFECT_SHADER_DESC { - BYTE* pInputSignature; - BOOL IsInline; - BYTE* pBytecode; - UINT BytecodeLength; - LPCSTR SODecl; - UINT NumInputSignatureEntries; - UINT NumOutputSignatureEntries; -} - -extern (C) const GUID IID_ID3D10EffectShaderVariable = {0x80849279, 0xc799, 0x4797, [0x8c, 0x33, 0x4, 0x7, 0xa0, 0x7d, 0x9e, 0x6]}; - -interface ID3D10EffectShaderVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetShaderDesc(UINT ShaderIndex, D3D10_EFFECT_SHADER_DESC* pDesc); - HRESULT GetVertexShader(UINT ShaderIndex, ID3D10VertexShader* ppVS); - HRESULT GetGeometryShader(UINT ShaderIndex, ID3D10GeometryShader* ppGS); - HRESULT GetPixelShader(UINT ShaderIndex, ID3D10PixelShader* ppPS); - HRESULT GetInputSignatureElementDesc(UINT ShaderIndex, UINT Element, D3D10_SIGNATURE_PARAMETER_DESC* pDesc); - HRESULT GetOutputSignatureElementDesc(UINT ShaderIndex, UINT Element, D3D10_SIGNATURE_PARAMETER_DESC* pDesc); - */ -} - -extern (C) const GUID IID_ID3D10EffectBlendVariable = {0x1fcd2294, 0xdf6d, 0x4eae, [0x86, 0xb3, 0xe, 0x91, 0x60, 0xcf, 0xb0, 0x7b]}; - -interface ID3D10EffectBlendVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetBlendState(UINT Index, ID3D10BlendState* ppBlendState); - HRESULT GetBackingStore(UINT Index, D3D10_BLEND_DESC* pBlendDesc); - */ -} - -extern (C) const GUID IID_ID3D10EffectDepthStencilVariable = {0xaf482368, 0x330a, 0x46a5, [0x9a, 0x5c, 0x1, 0xc7, 0x1a, 0xf2, 0x4c, 0x8d]}; - -interface ID3D10EffectDepthStencilVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetDepthStencilState(UINT Index, ID3D10DepthStencilState* ppDepthStencilState); - HRESULT GetBackingStore(UINT Index, D3D10_DEPTH_STENCIL_DESC* pDepthStencilDesc); - */ -} - -extern (C) const GUID IID_ID3D10EffectRasterizerVariable = {0x21af9f0e, 0x4d94, 0x4ea9, [0x97, 0x85, 0x2c, 0xb7, 0x6b, 0x8c, 0xb, 0x34]}; - -interface ID3D10EffectRasterizerVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRasterizerState(UINT Index, ID3D10RasterizerState* ppRasterizerState); - HRESULT GetBackingStore(UINT Index, D3D10_RASTERIZER_DESC* pRasterizerDesc); - */ -} - -extern (C) const GUID IID_ID3D10EffectSamplerVariable = {0x6530d5c7, 0x07e9, 0x4271, [0xa4, 0x18, 0xe7, 0xce, 0x4b, 0xd1, 0xe4, 0x80]}; - -interface ID3D10EffectSamplerVariable : ID3D10EffectVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - ID3D10EffectType GetType(); - HRESULT GetDesc(D3D10_EFFECT_VARIABLE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectVariable GetMemberByIndex(UINT Index); - ID3D10EffectVariable GetMemberByName(LPCSTR Name); - ID3D10EffectVariable GetMemberBySemantic(LPCSTR Semantic); - ID3D10EffectVariable GetElement(UINT Index); - ID3D10EffectConstantBuffer GetParentConstantBuffer(); - ID3D10EffectScalarVariable AsScalar(); - ID3D10EffectVectorVariable AsVector(); - ID3D10EffectMatrixVariable AsMatrix(); - ID3D10EffectStringVariable AsString(); - ID3D10EffectShaderResourceVariable AsShaderResource(); - ID3D10EffectRenderTargetViewVariable AsRenderTargetView(); - ID3D10EffectDepthStencilViewVariable AsDepthStencilView(); - ID3D10EffectConstantBuffer AsConstantBuffer(); - ID3D10EffectShaderVariable AsShader(); - ID3D10EffectBlendVariable AsBlend(); - ID3D10EffectDepthStencilVariable AsDepthStencil(); - ID3D10EffectRasterizerVariable AsRasterizer(); - ID3D10EffectSamplerVariable AsSampler(); - HRESULT SetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetRawValue(void* pData, UINT Offset, UINT Count); - HRESULT GetSampler(UINT Index, ID3D10SamplerState* ppSampler); - HRESULT GetBackingStore(UINT Index, D3D10_SAMPLER_DESC* pSamplerDesc); - */ -} - -struct D3D10_PASS_DESC { - LPCSTR Name; - UINT Annotations; - BYTE* pIAInputSignature; - SIZE_T IAInputSignatureSize; - UINT StencilRef; - UINT SampleMask; - FLOAT[4] BlendFactor; -} - -struct D3D10_PASS_SHADER_DESC { - ID3D10EffectShaderVariable pShaderVariable; - UINT ShaderIndex; -} - -extern (C) const GUID IID_ID3D10EffectPass = {0x5cfbeb89, 0x1a06, 0x46e0, [0xb2, 0x82, 0xe3, 0xf9, 0xbf, 0xa3, 0x6a, 0x54]}; - -/+interface ID3D10EffectPass { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - HRESULT GetDesc(D3D10_PASS_DESC* pDesc); - HRESULT GetVertexShaderDesc(D3D10_PASS_SHADER_DESC* pDesc); - HRESULT GetGeometryShaderDesc(D3D10_PASS_SHADER_DESC* pDesc); - HRESULT GetPixelShaderDesc(D3D10_PASS_SHADER_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - HRESULT Apply(UINT Flags); - HRESULT ComputeStateBlockMask(D3D10_STATE_BLOCK_MASK* pStateBlockMask); - */ -}+/ -/** - * HACK to FIX vtbl[0] bug: - * This is an example HACK how to fix all interfaces which are NOT derived from - * IUnknown. They need the first entry in their vtbl[] point to the first - * virtual function. - * See: - * http://www.digitalmars.com/d/cpp_interface.html - * http://d.puremagic.com/issues/show_bug.cgi?id=1687 - */ -struct ID3D10EffectPassVtbl { - extern(Windows) : - BOOL function(ID3D10EffectPass) IsValid; - HRESULT function(ID3D10EffectPass, D3D10_PASS_DESC* pDesc) GetDesc; - HRESULT function(ID3D10EffectPass, D3D10_PASS_SHADER_DESC* pDesc) GetVertexShaderDesc; - HRESULT function(ID3D10EffectPass, D3D10_PASS_SHADER_DESC* pDesc) GetGeometryShaderDesc; - HRESULT function(ID3D10EffectPass, D3D10_PASS_SHADER_DESC* pDesc) GetPixelShaderDesc; - ID3D10EffectVariable function(ID3D10EffectPass, UINT Index) GetAnnotationByIndex; - ID3D10EffectVariable function(ID3D10EffectPass, LPCSTR Name) GetAnnotationByName; - HRESULT function(ID3D10EffectPass, UINT Flags) Apply; - HRESULT function(ID3D10EffectPass, D3D10_STATE_BLOCK_MASK* pStateBlockMask) ComputeStateBlockMask; -} -alias ID3D10EffectPassVtbl** ID3D10EffectPass; - -struct D3D10_TECHNIQUE_DESC { - LPCSTR Name; - UINT Passes; - UINT Annotations; -} - -extern (C) const GUID IID_ID3D10EffectTechnique = {0xdb122ce8, 0xd1c9, 0x4292, [0xb2, 0x37, 0x24, 0xed, 0x3d, 0xe8, 0xb1, 0x75]}; - -/+interface ID3D10EffectTechnique { -/* TODO: fix vtbl[0] bug - extern(Windows) : - BOOL IsValid(); - HRESULT GetDesc(D3D10_TECHNIQUE_DESC* pDesc); - ID3D10EffectVariable GetAnnotationByIndex(UINT Index); - ID3D10EffectVariable GetAnnotationByName(LPCSTR Name); - ID3D10EffectPass GetPassByIndex(UINT Index); - ID3D10EffectPass GetPassByName(LPCSTR Name); - HRESULT ComputeStateBlockMask(D3D10_STATE_BLOCK_MASK* pStateBlockMask); - */ -}+/ -/** - * HACK to FIX vtbl[0] bug: - * This is an example HACK how to fix all interfaces which are NOT derived from - * IUnknown. They need the first entry in their vtbl[] point to the first - * virtual function. - * See: - * http://www.digitalmars.com/d/cpp_interface.html - * http://d.puremagic.com/issues/show_bug.cgi?id=1687 - */ -struct ID3D10EffectTechniqueVtbl { - extern(Windows) : - BOOL function(ID3D10EffectTechnique) IsValid; - HRESULT function(ID3D10EffectTechnique, D3D10_TECHNIQUE_DESC* pDesc) GetDesc; - ID3D10EffectVariable function(ID3D10EffectTechnique, UINT Index) GetAnnotationByIndex; - ID3D10EffectVariable function(ID3D10EffectTechnique, LPCSTR Name) GetAnnotationByName; - ID3D10EffectPass function(ID3D10EffectTechnique, UINT Index) GetPassByIndex; - ID3D10EffectPass function(ID3D10EffectTechnique, LPCSTR Name) GetPassByName; - HRESULT function(ID3D10EffectTechnique, D3D10_STATE_BLOCK_MASK* pStateBlockMask) ComputeStateBlockMask; -} -alias ID3D10EffectTechniqueVtbl** ID3D10EffectTechnique; - -struct D3D10_EFFECT_DESC { - BOOL IsChildEffect; - UINT ConstantBuffers; - UINT SharedConstantBuffers; - UINT GlobalVariables; - UINT SharedGlobalVariables; - UINT Techniques; -} - -extern (C) const GUID IID_ID3D10Effect = {0x51b0ca8b, 0xec0b, 0x4519, [0x87, 0xd, 0x8e, 0xe1, 0xcb, 0x50, 0x17, 0xc7]}; - -interface ID3D10Effect : IUnknown { - extern(Windows) : - BOOL IsValid(); - BOOL IsPool(); - HRESULT GetDevice(ID3D10Device* ppDevice); - HRESULT GetDesc(D3D10_EFFECT_DESC* pDesc); - ID3D10EffectConstantBuffer GetConstantBufferByIndex(UINT Index); - ID3D10EffectConstantBuffer GetConstantBufferByName(LPCSTR Name); - ID3D10EffectVariable GetVariableByIndex(UINT Index); - ID3D10EffectVariable GetVariableByName(LPCSTR Name); - ID3D10EffectVariable GetVariableBySemantic(LPCSTR Semantic); - ID3D10EffectTechnique GetTechniqueByIndex(UINT Index); - ID3D10EffectTechnique GetTechniqueByName(LPCSTR Name); - HRESULT Optimize(); - BOOL IsOptimized(); -} - -extern (C) const GUID IID_ID3D10EffectPool = {0x9537ab04, 0x3250, 0x412e, [0x82, 0x13, 0xfc, 0xd2, 0xf8, 0x67, 0x79, 0x33]}; - -interface ID3D10EffectPool : IUnknown { - extern(Windows) : - ID3D10Effect AsEffect(); -} - -HRESULT D3D10CompileEffectFromMemory(void* pData, SIZE_T DataLength, LPCSTR pSrcFileName, D3D10_SHADER_MACRO* pDefines, ID3D10Include pInclude, UINT HLSLFlags, UINT FXFlags, ID3D10Blob* ppCompiledEffect, ID3D10Blob* ppErrors); -HRESULT D3D10CreateEffectFromMemory(void* pData, SIZE_T DataLength, UINT FXFlags, ID3D10Device pDevice, ID3D10EffectPool pEffectPool, ID3D10Effect* ppEffect); -HRESULT D3D10CreateEffectPoolFromMemory(void* pData, SIZE_T DataLength, UINT FXFlags, ID3D10Device pDevice, ID3D10EffectPool* ppEffectPool); -HRESULT D3D10DisassembleEffect(ID3D10Effect pEffect, BOOL EnableColorCode, ID3D10Blob* ppDisassembly); diff --git a/3rdparty-extra/win32/directx/d3d10misc.d b/3rdparty-extra/win32/directx/d3d10misc.d deleted file mode 100644 index 0c261d84a..000000000 --- a/3rdparty-extra/win32/directx/d3d10misc.d +++ /dev/null @@ -1,46 +0,0 @@ -/***********************************************************************\ -* d3d10misc.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.d3d10misc; -version(Windows): - -private import win32.windows; - -private import win32.directx.dxgi; -private import win32.directx.d3d10; - -extern (C) const GUID IID_ID3D10Blob = { - 0x8BA5FB08, 0x5195, 0x40E2, [0xAC, 0x58, 0x0D, 0x98, 0x9C, 0x3A, 0x01, 0x02] -}; - -interface ID3D10Blob : IUnknown { - extern(Windows) : - LPVOID GetBufferPointer(); - SIZE_T GetBufferSize(); -} - -enum D3D10_DRIVER_TYPE { - D3D10_DRIVER_TYPE_HARDWARE = 0, - D3D10_DRIVER_TYPE_REFERENCE = 1, - D3D10_DRIVER_TYPE_NULL = 2, - D3D10_DRIVER_TYPE_SOFTWARE = 3 -} - -extern (C) const GUID GUID_DeviceType = { - 0xD722FB4D, 0x7A68, 0x437A, [0xB2, 0x0C, 0x58, 0x04, 0xEE, 0x24, 0x94, 0xA6] -}; - -extern(Windows) { - HRESULT D3D10CreateDevice(IDXGIAdapter pAdapter, - D3D10_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, - UINT SDKVersion, ID3D10Device* ppDevice); - HRESULT D3D10CreateDeviceAndSwapChain(IDXGIAdapter pAdapter, - D3D10_DRIVER_TYPE DriverType, HMODULE Software, UINT Flags, - UINT SDKVersion, DXGI_SWAP_CHAIN_DESC* pSwapChainDesc, - IDXGISwapChain* ppSwapChain, ID3D10Device* ppDevice); - HRESULT D3D10CreateBlob(SIZE_T NumBytes, ID3D10Blob* ppBuffer); -} diff --git a/3rdparty-extra/win32/directx/d3d10shader.d b/3rdparty-extra/win32/directx/d3d10shader.d deleted file mode 100644 index 061737750..000000000 --- a/3rdparty-extra/win32/directx/d3d10shader.d +++ /dev/null @@ -1,302 +0,0 @@ -/***********************************************************************\ -* d3d10shader.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.d3d10shader; -version(Windows): - -private import win32.windows; -private import win32.directx.d3d10; - - -uint D3D10_TX_VERSION(uint _Major, uint _Minor) { - return ('T' << 24) | ('X' << 16) | (_Major << 8) | _Minor; -} - -const D3D10_SHADER_DEBUG = 1 << 0; -const D3D10_SHADER_SKIP_VALIDATION = 1 << 1; -const D3D10_SHADER_SKIP_OPTIMIZATION = 1 << 2; -const D3D10_SHADER_PACK_MATRIX_ROW_MAJOR = 1 << 3; -const D3D10_SHADER_PACK_MATRIX_COLUMN_MAJOR = 1 << 4; -const D3D10_SHADER_PARTIAL_PRECISION = 1 << 5; -const D3D10_SHADER_FORCE_VS_SOFTWARE_NO_OPT = 1 << 6; -const D3D10_SHADER_FORCE_PS_SOFTWARE_NO_OPT = 1 << 7; -const D3D10_SHADER_NO_PRESHADER = 1 << 8; -const D3D10_SHADER_AVOID_FLOW_CONTROL = 1 << 9; -const D3D10_SHADER_PREFER_FLOW_CONTROL = 1 << 10; -const D3D10_SHADER_ENABLE_STRICTNESS = 1 << 11; -const D3D10_SHADER_ENABLE_BACKWARDS_COMPATIBILITY = 1 << 12; -const D3D10_SHADER_IEEE_STRICTNESS = 1 << 13; -const D3D10_SHADER_OPTIMIZATION_LEVEL0 = 1 << 14; -const D3D10_SHADER_OPTIMIZATION_LEVEL1 = 0; -const D3D10_SHADER_OPTIMIZATION_LEVEL2 = (1 << 14) | (1 << 15); -const D3D10_SHADER_OPTIMIZATION_LEVEL3 = 1 << 15; - -struct D3D10_SHADER_MACRO { - LPCSTR Name; - LPCSTR Definition; -} - -enum D3D10_SHADER_VARIABLE_CLASS { - D3D10_SVC_SCALAR, - D3D10_SVC_VECTOR, - D3D10_SVC_MATRIX_ROWS, - D3D10_SVC_MATRIX_COLUMNS, - D3D10_SVC_OBJECT, - D3D10_SVC_STRUCT, - D3D10_SVC_FORCE_DWORD = 0x7fffffff -} - -enum D3D10_SHADER_VARIABLE_FLAGS { - D3D10_SVF_USERPACKED = 1, - D3D10_SVF_USED = 2, - D3D10_SVF_FORCE_DWORD = 0x7fffffff -} - -enum D3D10_SHADER_VARIABLE_TYPE { - D3D10_SVT_VOID = 0, - D3D10_SVT_BOOL = 1, - D3D10_SVT_INT = 2, - D3D10_SVT_FLOAT = 3, - D3D10_SVT_STRING = 4, - D3D10_SVT_TEXTURE = 5, - D3D10_SVT_TEXTURE1D = 6, - D3D10_SVT_TEXTURE2D = 7, - D3D10_SVT_TEXTURE3D = 8, - D3D10_SVT_TEXTURECUBE = 9, - D3D10_SVT_SAMPLER = 10, - D3D10_SVT_PIXELSHADER = 15, - D3D10_SVT_VERTEXSHADER = 16, - D3D10_SVT_UINT = 19, - D3D10_SVT_UINT8 = 20, - D3D10_SVT_GEOMETRYSHADER = 21, - D3D10_SVT_RASTERIZER = 22, - D3D10_SVT_DEPTHSTENCIL = 23, - D3D10_SVT_BLEND = 24, - D3D10_SVT_BUFFER = 25, - D3D10_SVT_CBUFFER = 26, - D3D10_SVT_TBUFFER = 27, - D3D10_SVT_TEXTURE1DARRAY = 28, - D3D10_SVT_TEXTURE2DARRAY = 29, - D3D10_SVT_RENDERTARGETVIEW = 30, - D3D10_SVT_DEPTHSTENCILVIEW = 31, - D3D10_SVT_TEXTURE2DMS = 32, - D3D10_SVT_TEXTURE2DMSARRAY = 33, - D3D10_SVT_TEXTURECUBEARRAY = 34, - D3D10_SVT_FORCE_DWORD = 0x7fffffff -} - -enum D3D10_SHADER_INPUT_FLAGS { - D3D10_SIF_USERPACKED = 1, - D3D10_SIF_COMPARISON_SAMPLER = 2, - D3D10_SIF_TEXTURE_COMPONENT_0 = 4, - D3D10_SIF_TEXTURE_COMPONENT_1 = 8, - D3D10_SIF_TEXTURE_COMPONENTS = 12, - D3D10_SIF_FORCE_DWORD = 0x7fffffff -} - -enum D3D10_SHADER_INPUT_TYPE { - D3D10_SIT_CBUFFER, - D3D10_SIT_TBUFFER, - D3D10_SIT_TEXTURE, - D3D10_SIT_SAMPLER -} - -enum D3D10_SHADER_CBUFFER_FLAGS { - D3D10_CBF_USERPACKED = 1, - D3D10_CBF_FORCE_DWORD = 0x7fffffff -} - -enum D3D10_CBUFFER_TYPE { - D3D10_CT_CBUFFER, - D3D10_CT_TBUFFER -} - -enum D3D10_NAME { - D3D10_NAME_UNDEFINED = 0, - D3D10_NAME_POSITION = 1, - D3D10_NAME_CLIP_DISTANCE = 2, - D3D10_NAME_CULL_DISTANCE = 3, - D3D10_NAME_RENDER_TARGET_ARRAY_INDEX = 4, - D3D10_NAME_VIEWPORT_ARRAY_INDEX = 5, - D3D10_NAME_VERTEX_ID = 6, - D3D10_NAME_PRIMITIVE_ID = 7, - D3D10_NAME_INSTANCE_ID = 8, - D3D10_NAME_IS_FRONT_FACE = 9, - D3D10_NAME_SAMPLE_INDEX = 10, - D3D10_NAME_TARGET = 64, - D3D10_NAME_DEPTH = 65, - D3D10_NAME_COVERAGE = 66 -} - -enum D3D10_RESOURCE_RETURN_TYPE { - D3D10_RETURN_TYPE_UNORM = 1, - D3D10_RETURN_TYPE_SNORM, - D3D10_RETURN_TYPE_SINT, - D3D10_RETURN_TYPE_UINT, - D3D10_RETURN_TYPE_FLOAT, - D3D10_RETURN_TYPE_MIXED -} - -enum D3D10_REGISTER_COMPONENT_TYPE { - D3D10_REGISTER_COMPONENT_UNKNOWN = 0, - D3D10_REGISTER_COMPONENT_UINT32, - D3D10_REGISTER_COMPONENT_SINT32, - D3D10_REGISTER_COMPONENT_FLOAT32 -} - -enum D3D10_INCLUDE_TYPE { - D3D10_INCLUDE_LOCAL, - D3D10_INCLUDE_SYSTEM, - D3D10_INCLUDE_FORCE_DWORD = 0x7fffffff -} - -interface ID3D10Include { -/* TODO: fix vtbl[0] bug - extern(Windows) : - HRESULT Open(D3D10_INCLUDE_TYPE IncludeType, LPCSTR pFileName, LPCVOID pParentData, LPCVOID* ppData, UINT* pBytes); - HRESULT Close(LPCVOID pData); - */ -} - -struct D3D10_SHADER_DESC { - UINT Version; - LPCSTR Creator; - UINT Flags; - UINT ConstantBuffers; - UINT BoundResources; - UINT InputParameters; - UINT OutputParameters; - UINT InstructionCount; - UINT TempRegisterCount; - UINT TempArrayCount; - UINT DefCount; - UINT DclCount; - UINT TextureNormalInstructions; - UINT TextureLoadInstructions; - UINT TextureCompInstructions; - UINT TextureBiasInstructions; - UINT TextureGradientInstructions; - UINT FloatInstructionCount; - UINT IntInstructionCount; - UINT UintInstructionCount; - UINT StaticFlowControlCount; - UINT DynamicFlowControlCount; - UINT MacroInstructionCount; - UINT ArrayInstructionCount; - UINT CutInstructionCount; - UINT EmitInstructionCount; - D3D10_PRIMITIVE_TOPOLOGY GSOutputTopology; - UINT GSMaxOutputVertexCount; -} - -struct D3D10_SHADER_BUFFER_DESC { - LPCSTR Name; - D3D10_CBUFFER_TYPE Type; - UINT Variables; - UINT Size; - UINT uFlags; -} - -struct D3D10_SHADER_VARIABLE_DESC { - LPCSTR Name; - UINT StartOffset; - UINT Size; - UINT uFlags; - LPVOID DefaultValue; -} - -struct D3D10_SHADER_TYPE_DESC { - D3D10_SHADER_VARIABLE_CLASS Class; - D3D10_SHADER_VARIABLE_TYPE Type; - UINT Rows; - UINT Columns; - UINT Elements; - UINT Members; - UINT Offset; -} - -struct D3D10_SHADER_INPUT_BIND_DESC { - LPCSTR Name; - D3D10_SHADER_INPUT_TYPE Type; - UINT BindPoint; - UINT BindCount; - UINT uFlags; - D3D10_RESOURCE_RETURN_TYPE ReturnType; - D3D10_SRV_DIMENSION Dimension; - UINT NumSamples; -} - -struct D3D10_SIGNATURE_PARAMETER_DESC { - LPCSTR SemanticName; - UINT SemanticIndex; - UINT Register; - D3D10_NAME SystemValueType; - D3D10_REGISTER_COMPONENT_TYPE ComponentType; - BYTE Mask; - BYTE ReadWriteMask; -} - -extern(C) const GUID IID_ID3D10ShaderReflectionType = {0xc530ad7d, 0x9b16, 0x4395, [0xa9, 0x79, 0xba, 0x2e, 0xcf, 0xf8, 0x3a, 0xdd]}; - -interface ID3D10ShaderReflectionType { -/* TODO: fix vtbl[0] bug - extern(Windows) : - HRESULT GetDesc(D3D10_SHADER_TYPE_DESC* pDesc); - ID3D10ShaderReflectionType* GetMemberTypeByIndex(UINT Index); - ID3D10ShaderReflectionType* GetMemberTypeByName(LPCSTR Name); - LPCSTR GetMemberTypeName(UINT Index); - */ -} - -extern(C) const GUID IID_ID3D10ShaderReflectionVariable = {0x1bf63c95, 0x2650, 0x405d, [0x99, 0xc1, 0x36, 0x36, 0xbd, 0x1d, 0xa0, 0xa1]}; - -interface ID3D10ShaderReflectionVariable { -/* TODO: fix vtbl[0] bug - extern(Windows) : - HRESULT GetDesc(D3D10_SHADER_VARIABLE_DESC* pDesc); - ID3D10ShaderReflectionType* GetType(); - */ -} - -extern(C) const GUID IID_ID3D10ShaderReflectionConstantBuffer = {0x66c66a94, 0xdddd, 0x4b62, [0xa6, 0x6a, 0xf0, 0xda, 0x33, 0xc2, 0xb4, 0xd0]}; - -interface ID3D10ShaderReflectionConstantBuffer { -/* TODO: fix vtbl[0] bug - extern(Windows) : - HRESULT GetDesc(D3D10_SHADER_BUFFER_DESC* pDesc); - ID3D10ShaderReflectionVariable* GetVariableByIndex(UINT Index); - ID3D10ShaderReflectionVariable* GetVariableByName(LPCSTR Name); - */ -} - -extern(C) const GUID IID_ID3D10ShaderReflection = {0xd40e20b6, 0xf8f7, 0x42ad, [0xab, 0x20, 0x4b, 0xaf, 0x8f, 0x15, 0xdf, 0xaa]}; - -interface ID3D10ShaderReflection : IUnknown { - extern(Windows) : - HRESULT QueryInterface(REFIID iid, LPVOID* ppv); - ULONG AddRef(); - ULONG Release(); - HRESULT GetDesc(D3D10_SHADER_DESC* pDesc); - ID3D10ShaderReflectionConstantBuffer* GetConstantBufferByIndex(UINT Index); - ID3D10ShaderReflectionConstantBuffer* GetConstantBufferByName(LPCSTR Name); - HRESULT GetResourceBindingDesc(UINT ResourceIndex, D3D10_SHADER_INPUT_BIND_DESC* pDesc); - HRESULT GetInputParameterDesc(UINT ParameterIndex, D3D10_SIGNATURE_PARAMETER_DESC* pDesc); - HRESULT GetOutputParameterDesc(UINT ParameterIndex, D3D10_SIGNATURE_PARAMETER_DESC* pDesc); -} - -HRESULT D3D10CompileShader(LPCSTR pSrcData, SIZE_T SrcDataLen, LPCSTR pFileName, D3D10_SHADER_MACRO* pDefines, ID3D10Include pInclude, LPCSTR pFunctionName, LPCSTR pProfile, UINT Flags, ID3D10Blob* ppShader, ID3D10Blob* ppErrorMsgs); -HRESULT D3D10DisassembleShader(void* pShader, SIZE_T BytecodeLength, BOOL EnableColorCode, LPCSTR pComments, ID3D10Blob* ppDisassembly); -LPCSTR D3D10GetPixelShaderProfile(ID3D10Device pDevice); -LPCSTR D3D10GetVertexShaderProfile(ID3D10Device pDevice); -LPCSTR D3D10GetGeometryShaderProfile(ID3D10Device pDevice); -HRESULT D3D10ReflectShader(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10ShaderReflection* ppReflector); -HRESULT D3D10PreprocessShader(LPCSTR pSrcData, SIZE_T SrcDataSize, LPCSTR pFileName, D3D10_SHADER_MACRO* pDefines, ID3D10Include pInclude, ID3D10Blob* ppShaderText, ID3D10Blob* ppErrorMsgs); -HRESULT D3D10GetInputSignatureBlob(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10Blob* ppSignatureBlob); -HRESULT D3D10GetOutputSignatureBlob(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10Blob* ppSignatureBlob); -HRESULT D3D10GetInputAndOutputSignatureBlob(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10Blob* ppSignatureBlob); -HRESULT D3D10GetShaderDebugInfo(void* pShaderBytecode, SIZE_T BytecodeLength, ID3D10Blob* ppDebugInfo); - diff --git a/3rdparty-extra/win32/directx/d3d9.d b/3rdparty-extra/win32/directx/d3d9.d deleted file mode 100644 index 3de3468b4..000000000 --- a/3rdparty-extra/win32/directx/d3d9.d +++ /dev/null @@ -1,838 +0,0 @@ -/*==========================================================================; - * - * Copyright (C) Microsoft Corporation. All Rights Reserved. - * - * File: d3d9.h - * Content: Direct3D include file - * - ****************************************************************************/ -module win32.directx.d3d9; -version(Windows): - -import win32.windows; -public import win32.directx.d3d9types; -public import win32.directx.d3d9caps; - -const DIRECT3D_VERSION = 0x0900; - -/**This identifier is passed to Direct3DCreate9 in order to ensure that an - * application was built against the correct header files. This number is - * incremented whenever a header (or other) change would require applications - * to be rebuilt. If the version doesn't match, Direct3DCreate9 will fail. - * (The number itself has no meaning.)*/ - -debug { - const D3D_SDK_VERSION = (32 | 0x80000000); - const D3D9b_SDK_VERSION = (31 | 0x80000000); -} -else { - const D3D_SDK_VERSION = 32; - const D3D9b_SDK_VERSION = 31; -} - -/* IID_IDirect3D9 */ -/* {81BDCBCA-64D4-426d-AE8D-AD0147F4275C} */ -extern (C) const GUID IID_IDirect3D9 = { 0x81bdcbca, 0x64d4, 0x426d, [0xae, 0x8d, 0xad, 0x1, 0x47, 0xf4, 0x27, 0x5c] }; - -/* IID_IDirect3DDevice9 */ -// {D0223B96-BF7A-43fd-92BD-A43B0D82B9EB} */ -extern (C) const GUID IID_IDirect3DDevice9 = { 0xd0223b96, 0xbf7a, 0x43fd, [0x92, 0xbd, 0xa4, 0x3b, 0xd, 0x82, 0xb9, 0xeb] }; - -/* IID_IDirect3DResource9 */ -// {05EEC05D-8F7D-4362-B999-D1BAF357C704} -extern (C) const GUID IID_IDirect3DResource9 = { 0x05eec05d, 0x8f7d, 0x4362, [0xb9, 0x99, 0xd1, 0xba, 0xf3, 0x57, 0xc7, 0x04] }; - -/* IID_IDirect3DBaseTexture9 */ -/* {580CA87E-1D3C-4d54-991D-B7D3E3C298CE} */ -extern (C) const GUID IID_IDirect3DBaseTexture9 = { 0x580ca87e, 0x1d3c, 0x4d54, [0x99, 0x1d, 0xb7, 0xd3, 0xe3, 0xc2, 0x98, 0xce] }; - -/* IID_IDirect3DTexture9 */ -/* {85C31227-3DE5-4f00-9B3A-F11AC38C18B5} */ -extern (C) const GUID IID_IDirect3DTexture9 = { 0x85c31227, 0x3de5, 0x4f00, [0x9b, 0x3a, 0xf1, 0x1a, 0xc3, 0x8c, 0x18, 0xb5] }; - -/* IID_IDirect3DCubeTexture9 */ -/* {FFF32F81-D953-473a-9223-93D652ABA93F} */ -extern (C) const GUID IID_IDirect3DCubeTexture9 = { 0xfff32f81, 0xd953, 0x473a, [0x92, 0x23, 0x93, 0xd6, 0x52, 0xab, 0xa9, 0x3f] }; - -/* IID_IDirect3DVolumeTexture9 */ -/* {2518526C-E789-4111-A7B9-47EF328D13E6} */ -extern (C) const GUID IID_IDirect3DVolumeTexture9 = { 0x2518526c, 0xe789, 0x4111, [0xa7, 0xb9, 0x47, 0xef, 0x32, 0x8d, 0x13, 0xe6] }; - -/* IID_IDirect3DVertexBuffer9 */ -/* {B64BB1B5-FD70-4df6-BF91-19D0A12455E3} */ -extern (C) const GUID IID_IDirect3DVertexBuffer9 = { 0xb64bb1b5, 0xfd70, 0x4df6, [0xbf, 0x91, 0x19, 0xd0, 0xa1, 0x24, 0x55, 0xe3] }; - -/* IID_IDirect3DIndexBuffer9 */ -/* {7C9DD65E-D3F7-4529-ACEE-785830ACDE35} */ -extern (C) const GUID IID_IDirect3DIndexBuffer9 = { 0x7c9dd65e, 0xd3f7, 0x4529, [0xac, 0xee, 0x78, 0x58, 0x30, 0xac, 0xde, 0x35] }; - -/* IID_IDirect3DSurface9 */ -/* {0CFBAF3A-9FF6-429a-99B3-A2796AF8B89B} */ -extern (C) const GUID IID_IDirect3DSurface9 = { 0xcfbaf3a, 0x9ff6, 0x429a, [0x99, 0xb3, 0xa2, 0x79, 0x6a, 0xf8, 0xb8, 0x9b] }; - -/* IID_IDirect3DVolume9 */ -/* {24F416E6-1F67-4aa7-B88E-D33F6F3128A1} */ -extern (C) const GUID IID_IDirect3DVolume9 = { 0x24f416e6, 0x1f67, 0x4aa7, [0xb8, 0x8e, 0xd3, 0x3f, 0x6f, 0x31, 0x28, 0xa1] }; - -/* IID_IDirect3DSwapChain9 */ -/* {794950F2-ADFC-458a-905E-10A10B0B503B} */ -extern (C) const GUID IID_IDirect3DSwapChain9 = { 0x794950f2, 0xadfc, 0x458a, [0x90, 0x5e, 0x10, 0xa1, 0xb, 0xb, 0x50, 0x3b] }; - -/* IID_IDirect3DVertexDeclaration9 */ -/* {DD13C59C-36FA-4098-A8FB-C7ED39DC8546} */ -extern (C) const GUID IID_IDirect3DVertexDeclaration9 = { 0xdd13c59c, 0x36fa, 0x4098, [0xa8, 0xfb, 0xc7, 0xed, 0x39, 0xdc, 0x85, 0x46] }; - -/* IID_IDirect3DVertexShader9 */ -/* {EFC5557E-6265-4613-8A94-43857889EB36} */ -extern (C) const GUID IID_IDirect3DVertexShader9 = { 0xefc5557e, 0x6265, 0x4613, [0x8a, 0x94, 0x43, 0x85, 0x78, 0x89, 0xeb, 0x36] }; - -/* IID_IDirect3DPixelShader9 */ -/* {6D3BDBDC-5B02-4415-B852-CE5E8BCCB289} */ -extern (C) const GUID IID_IDirect3DPixelShader9 = { 0x6d3bdbdc, 0x5b02, 0x4415, [0xb8, 0x52, 0xce, 0x5e, 0x8b, 0xcc, 0xb2, 0x89] }; - -/* IID_IDirect3DStateBlock9 */ -/* {B07C4FE5-310D-4ba8-A23C-4F0F206F218B} */ -extern (C) const GUID IID_IDirect3DStateBlock9 = { 0xb07c4fe5, 0x310d, 0x4ba8, [0xa2, 0x3c, 0x4f, 0xf, 0x20, 0x6f, 0x21, 0x8b] }; - -/* IID_IDirect3DQuery9 */ -/* {d9771460-a695-4f26-bbd3-27b840b541cc} */ -extern (C) const GUID IID_IDirect3DQuery9 = { 0xd9771460, 0xa695, 0x4f26, [0xbb, 0xd3, 0x27, 0xb8, 0x40, 0xb5, 0x41, 0xcc] }; - - -/* IID_HelperName */ -/* {E4A36723-FDFE-4b22-B146-3C04C07F4CC8} */ -extern (C) const GUID IID_HelperName = { 0xe4a36723, 0xfdfe, 0x4b22, [0xb1, 0x46, 0x3c, 0x4, 0xc0, 0x7f, 0x4c, 0xc8] }; - -/* IID_IDirect3D9Ex */ -/* {02177241-69FC-400C-8FF1-93A44DF6861D} */ -extern (C) const GUID IID_IDirect3D9Ex = { 0x02177241, 0x69FC, 0x400C, [0x8F, 0xF1, 0x93, 0xA4, 0x4D, 0xF6, 0x86, 0x1D] }; - -/* IID_IDirect3DDevice9Ex */ -// {B18B10CE-2649-405a-870F-95F777D4313A} -extern (C) const GUID IID_IDirect3DDevice9Ex = { 0xb18b10ce, 0x2649, 0x405a, [0x87, 0xf, 0x95, 0xf7, 0x77, 0xd4, 0x31, 0x3a] }; - -/* IID_IDirect3DSwapChain9Ex */ -/* {91886CAF-1C3D-4d2e-A0AB-3E4C7D8D3303} */ -extern (C) const GUID IID_IDirect3DSwapChain9Ex = { 0x91886caf, 0x1c3d, 0x4d2e, [0xa0, 0xab, 0x3e, 0x4c, 0x7d, 0x8d, 0x33, 0x03] }; - - - -extern (C): -/** - * DLL Function for creating a Direct3D9 object. This object supports - * enumeration and allows the creation of Direct3DDevice9 objects. - * Pass the value of the constant D3D_SDK_VERSION to this function, so - * that the run-time can validate that your application was compiled - * against the right headers. - */ - -extern (Windows) LPDIRECT3D9 Direct3DCreate9(UINT SDKVersion); - -/** - * Stubs for graphics profiling. - */ -extern (Windows) int D3DPERF_BeginEvent( D3DCOLOR col, LPCWSTR wszName ); -extern (Windows) int D3DPERF_EndEvent(); -extern (Windows) void D3DPERF_SetMarker( D3DCOLOR col, LPCWSTR wszName ); -extern (Windows) void D3DPERF_SetRegion( D3DCOLOR col, LPCWSTR wszName ); -extern (Windows) BOOL D3DPERF_QueryRepeatFrame(); - -extern (Windows) void D3DPERF_SetOptions( DWORD dwOptions ); -extern (Windows) DWORD D3DPERF_GetStatus(); - - -interface LPDIRECT3D9 : IUnknown -{ - HRESULT RegisterSoftwareDevice(void* pInitializeFunction); - UINT GetAdapterCount(); - HRESULT GetAdapterIdentifier( UINT Adapter,DWORD Flags,D3DADAPTER_IDENTIFIER9* pIdentifier); - UINT GetAdapterModeCount(UINT Adapter,D3DFORMAT Format); - HRESULT EnumAdapterModes( UINT Adapter,D3DFORMAT Format,UINT Mode,D3DDISPLAYMODE* pMode); - HRESULT GetAdapterDisplayMode( UINT Adapter,D3DDISPLAYMODE* pMode); - HRESULT CheckDeviceType( UINT Adapter,D3DDEVTYPE DevType,D3DFORMAT AdapterFormat,D3DFORMAT BackBufferFormat,BOOL bWindowed); - HRESULT CheckDeviceFormat( UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,DWORD Usage,D3DRESOURCETYPE RType,D3DFORMAT CheckFormat); - HRESULT CheckDeviceMultiSampleType( UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SurfaceFormat,BOOL Windowed,D3DMULTISAMPLE_TYPE MultiSampleType,DWORD* pQualityLevels); - HRESULT CheckDepthStencilMatch( UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT AdapterFormat,D3DFORMAT RenderTargetFormat,D3DFORMAT DepthStencilFormat); - HRESULT CheckDeviceFormatConversion( UINT Adapter,D3DDEVTYPE DeviceType,D3DFORMAT SourceFormat,D3DFORMAT TargetFormat); - HRESULT GetDeviceCaps( UINT Adapter,D3DDEVTYPE DeviceType,D3DCAPS9* pCaps); - HMONITOR GetAdapterMonitor(UINT Adapter); - HRESULT CreateDevice( UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS* pPresentationParameters,LPDIRECT3DDEVICE9* ppReturnedDeviceInterface); -/* - debug { - LPCWSTR Version; - } -*/ -} -alias LPDIRECT3D9 IDirect3D9; - -interface LPDIRECT3DDEVICE9 : IUnknown -{ - HRESULT TestCooperativeLevel(); - UINT GetAvailableTextureMem(); - HRESULT EvictManagedResources(); - HRESULT GetDirect3D( LPDIRECT3D9* ppD3D9); - HRESULT GetDeviceCaps( D3DCAPS9* pCaps); - HRESULT GetDisplayMode( UINT iSwapChain,D3DDISPLAYMODE* pMode); - HRESULT GetCreationParameters( D3DDEVICE_CREATION_PARAMETERS *pParameters); - HRESULT SetCursorProperties( UINT XHotSpot,UINT YHotSpot,LPDIRECT3DSURFACE9 pCursorBitmap); - void SetCursorPosition(int X,int Y,DWORD Flags); - BOOL ShowCursor(BOOL bShow); - HRESULT CreateAdditionalSwapChain( D3DPRESENT_PARAMETERS* pPresentationParameters,LPDIRECT3DSWAPCHAIN9* pSwapChain); - HRESULT GetSwapChain( UINT iSwapChain,LPDIRECT3DSWAPCHAIN9* pSwapChain); - UINT GetNumberOfSwapChains(); - HRESULT Reset( D3DPRESENT_PARAMETERS* pPresentationParameters); - HRESULT Present(RECT* pSourceRect,RECT* pDestRect,HWND hDestWindowOverride, RGNDATA* pDirtyRegion); - HRESULT GetBackBuffer( UINT iSwapChain,UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,LPDIRECT3DSURFACE9* ppBackBuffer); - HRESULT GetRasterStatus( UINT iSwapChain,D3DRASTER_STATUS* pRasterStatus); - HRESULT SetDialogBoxMode( BOOL bEnableDialogs); - void SetGammaRamp(UINT iSwapChain,DWORD Flags, D3DGAMMARAMP* pRamp); - void GetGammaRamp(UINT iSwapChain,D3DGAMMARAMP* pRamp); - HRESULT CreateTexture( UINT Width,UINT Height,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,LPDIRECT3DTEXTURE9* ppTexture,HANDLE* pSharedHandle); - HRESULT CreateVolumeTexture( UINT Width,UINT Height,UINT Depth,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,LPDIRECT3DVOLUMETEXTURE9* ppVolumeTexture,HANDLE* pSharedHandle); - HRESULT CreateCubeTexture( UINT EdgeLength,UINT Levels,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,LPDIRECT3DCUBETEXTURE9* ppCubeTexture,HANDLE* pSharedHandle); - HRESULT CreateVertexBuffer( UINT Length,DWORD Usage,DWORD FVF,D3DPOOL Pool,LPDIRECT3DVERTEXBUFFER9* ppVertexBuffer,HANDLE* pSharedHandle); - HRESULT CreateIndexBuffer( UINT Length,DWORD Usage,D3DFORMAT Format,D3DPOOL Pool,LPDIRECT3DINDEXBUFFER9* ppIndexBuffer,HANDLE* pSharedHandle); - HRESULT CreateRenderTarget( UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,LPDIRECT3DSURFACE9* ppSurface,HANDLE* pSharedHandle); - HRESULT CreateDepthStencilSurface( UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,LPDIRECT3DSURFACE9* ppSurface,HANDLE* pSharedHandle); - HRESULT UpdateSurface( LPDIRECT3DSURFACE9 pSourceSurface, RECT* pSourceRect,LPDIRECT3DSURFACE9 pDestinationSurface, POINT* pDestPoint); - HRESULT UpdateTexture( LPDIRECT3DBASETEXTURE9 pSourceTexture,LPDIRECT3DBASETEXTURE9 pDestinationTexture); - HRESULT GetRenderTargetData( LPDIRECT3DSURFACE9 pRenderTarget,LPDIRECT3DSURFACE9 pDestSurface); - HRESULT GetFrontBufferData( UINT iSwapChain,LPDIRECT3DSURFACE9 pDestSurface); - HRESULT StretchRect( LPDIRECT3DSURFACE9 pSourceSurface, RECT* pSourceRect,LPDIRECT3DSURFACE9 pDestSurface, RECT* pDestRect,D3DTEXTUREFILTERTYPE Filter); - HRESULT ColorFill( LPDIRECT3DSURFACE9 pSurface, RECT* pRect,D3DCOLOR color); - HRESULT CreateOffscreenPlainSurface( UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,LPDIRECT3DSURFACE9* ppSurface,HANDLE* pSharedHandle); - HRESULT SetRenderTarget( DWORD RenderTargetIndex,LPDIRECT3DSURFACE9 pRenderTarget); - HRESULT GetRenderTarget( DWORD RenderTargetIndex,LPDIRECT3DSURFACE9* ppRenderTarget); - HRESULT SetDepthStencilSurface( LPDIRECT3DSURFACE9 pNewZStencil); - HRESULT GetDepthStencilSurface( LPDIRECT3DSURFACE9* ppZStencilSurface); - HRESULT BeginScene(); - HRESULT EndScene(); - HRESULT Clear( DWORD Count, D3DRECT* pRects,DWORD Flags,D3DCOLOR Color,float Z,DWORD Stencil); - HRESULT SetTransform( D3DTRANSFORMSTATETYPE State, D3DMATRIX* pMatrix); - HRESULT GetTransform( D3DTRANSFORMSTATETYPE State,D3DMATRIX* pMatrix); - HRESULT MultiplyTransform( D3DTRANSFORMSTATETYPE, D3DMATRIX*); - HRESULT SetViewport( D3DVIEWPORT9* pViewport); - HRESULT GetViewport( D3DVIEWPORT9* pViewport); - HRESULT SetMaterial( D3DMATERIAL9* pMaterial); - HRESULT GetMaterial( D3DMATERIAL9* pMaterial); - HRESULT SetLight( DWORD Index, D3DLIGHT9*); - HRESULT GetLight( DWORD Index,D3DLIGHT9*); - HRESULT LightEnable( DWORD Index,BOOL Enable); - HRESULT GetLightEnable( DWORD Index,BOOL* pEnable); - HRESULT SetClipPlane( DWORD Index, float* pPlane); - HRESULT GetClipPlane( DWORD Index,float* pPlane); - HRESULT SetRenderState( D3DRENDERSTATETYPE State,DWORD Value); - HRESULT GetRenderState( D3DRENDERSTATETYPE State,DWORD* pValue); - HRESULT CreateStateBlock( D3DSTATEBLOCKTYPE Type,LPDIRECT3DSTATEBLOCK9* ppSB); - HRESULT BeginStateBlock(); - HRESULT EndStateBlock( LPDIRECT3DSTATEBLOCK9* ppSB); - HRESULT SetClipStatus( D3DCLIPSTATUS9* pClipStatus); - HRESULT GetClipStatus( D3DCLIPSTATUS9* pClipStatus); - HRESULT GetTexture( DWORD Stage,LPDIRECT3DBASETEXTURE9* ppTexture); - HRESULT SetTexture( DWORD Stage,LPDIRECT3DBASETEXTURE9 pTexture); - HRESULT GetTextureStageState( DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD* pValue); - HRESULT SetTextureStageState( DWORD Stage,D3DTEXTURESTAGESTATETYPE Type,DWORD Value); - HRESULT GetSamplerState( DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD* pValue); - HRESULT SetSamplerState( DWORD Sampler,D3DSAMPLERSTATETYPE Type,DWORD Value); - HRESULT ValidateDevice( DWORD* pNumPasses); - HRESULT SetPaletteEntries( UINT PaletteNumber, PALETTEENTRY* pEntries); - HRESULT GetPaletteEntries( UINT PaletteNumber,PALETTEENTRY* pEntries); - HRESULT SetCurrentTexturePalette( UINT PaletteNumber); - HRESULT GetCurrentTexturePalette( UINT *PaletteNumber); - HRESULT SetScissorRect( RECT* pRect); - HRESULT GetScissorRect( RECT* pRect); - HRESULT SetSoftwareVertexProcessing( BOOL bSoftware); - BOOL GetSoftwareVertexProcessing(); - HRESULT SetNPatchMode( float nSegments); - float GetNPatchMode(); - HRESULT DrawPrimitive( D3DPRIMITIVETYPE PrimitiveType,UINT StartVertex,UINT PrimitiveCount); - HRESULT DrawIndexedPrimitive( D3DPRIMITIVETYPE,INT BaseVertexIndex,UINT MinVertexIndex,UINT NumVertices,UINT startIndex,UINT primCount); - HRESULT DrawPrimitiveUP( D3DPRIMITIVETYPE PrimitiveType,UINT PrimitiveCount, void* pVertexStreamZeroData,UINT VertexStreamZeroStride); - HRESULT DrawIndexedPrimitiveUP( D3DPRIMITIVETYPE PrimitiveType,UINT MinVertexIndex,UINT NumVertices,UINT PrimitiveCount, void* pIndexData,D3DFORMAT IndexDataFormat, void* pVertexStreamZeroData,UINT VertexStreamZeroStride); - HRESULT ProcessVertices( UINT SrcStartIndex,UINT DestIndex,UINT VertexCount,LPDIRECT3DVERTEXBUFFER9 pDestBuffer,LPDIRECT3DVERTEXDECLARATION9 pVertexDecl,DWORD Flags); - HRESULT CreateVertexDeclaration( D3DVERTEXELEMENT9* pVertexElements,LPDIRECT3DVERTEXDECLARATION9* ppDecl); - HRESULT SetVertexDeclaration(LPDIRECT3DVERTEXDECLARATION9 pDecl); - HRESULT GetVertexDeclaration(LPDIRECT3DVERTEXDECLARATION9* ppDecl); - HRESULT SetFVF( DWORD FVF); - HRESULT GetFVF( DWORD* pFVF); - HRESULT CreateVertexShader( DWORD* pFunction,LPDIRECT3DVERTEXSHADER9* ppShader); - HRESULT SetVertexShader( LPDIRECT3DVERTEXSHADER9 pShader); - HRESULT GetVertexShader( LPDIRECT3DVERTEXSHADER9* ppShader); - HRESULT SetVertexShaderConstantF( UINT StartRegister, float* pConstantData,UINT Vector4fCount); - HRESULT GetVertexShaderConstantF( UINT StartRegister,float* pConstantData,UINT Vector4fCount); - HRESULT SetVertexShaderConstantI( UINT StartRegister, int* pConstantData,UINT Vector4iCount); - HRESULT GetVertexShaderConstantI( UINT StartRegister,int* pConstantData,UINT Vector4iCount); - HRESULT SetVertexShaderConstantB( UINT StartRegister, BOOL* pConstantData,UINT BoolCount); - HRESULT GetVertexShaderConstantB( UINT StartRegister,BOOL* pConstantData,UINT BoolCount); - HRESULT SetStreamSource( UINT StreamNumber,LPDIRECT3DVERTEXBUFFER9 pStreamData,UINT OffsetInBytes,UINT Stride); - HRESULT GetStreamSource( UINT StreamNumber,LPDIRECT3DVERTEXBUFFER9* ppStreamData,UINT* pOffsetInBytes,UINT* pStride); - HRESULT SetStreamSourceFreq( UINT StreamNumber,UINT Setting); - HRESULT GetStreamSourceFreq( UINT StreamNumber,UINT* pSetting); - HRESULT SetIndices( LPDIRECT3DINDEXBUFFER9 pIndexData); - HRESULT GetIndices( LPDIRECT3DINDEXBUFFER9* ppIndexData); - HRESULT CreatePixelShader( DWORD* pFunction,LPDIRECT3DPIXELSHADER9* ppShader); - HRESULT SetPixelShader(LPDIRECT3DPIXELSHADER9 pShader); - HRESULT GetPixelShader(LPDIRECT3DPIXELSHADER9* ppShader); - HRESULT SetPixelShaderConstantF( UINT StartRegister, float* pConstantData,UINT Vector4fCount); - HRESULT GetPixelShaderConstantF( UINT StartRegister,float* pConstantData,UINT Vector4fCount); - HRESULT SetPixelShaderConstantI( UINT StartRegister, int* pConstantData,UINT Vector4iCount); - HRESULT GetPixelShaderConstantI( UINT StartRegister,int* pConstantData,UINT Vector4iCount); - HRESULT SetPixelShaderConstantB( UINT StartRegister, BOOL* pConstantData,UINT BoolCount); - HRESULT GetPixelShaderConstantB( UINT StartRegister,BOOL* pConstantData,UINT BoolCount); - HRESULT DrawRectPatch( UINT Handle, float* pNumSegs, D3DRECTPATCH_INFO* pRectPatchInfo); - HRESULT DrawTriPatch( UINT Handle, float* pNumSegs, D3DTRIPATCH_INFO* pTriPatchInfo); - HRESULT DeletePatch( UINT Handle); - HRESULT CreateQuery( D3DQUERYTYPE Type,LPDIRECT3DQUERY9* ppQuery); -/* - debug { - D3DDEVICE_CREATION_PARAMETERS CreationParameters; - D3DPRESENT_PARAMETERS PresentParameters; - D3DDISPLAYMODE DisplayMode; - D3DCAPS9 Caps; - - UINT AvailableTextureMem; - UINT SwapChains; - UINT Textures; - UINT VertexBuffers; - UINT IndexBuffers; - UINT VertexShaders; - UINT PixelShaders; - - D3DVIEWPORT9 Viewport; - D3DMATRIX ProjectionMatrix; - D3DMATRIX ViewMatrix; - D3DMATRIX WorldMatrix; - D3DMATRIX[8] TextureMatrices; - - DWORD FVF; - UINT VertexSize; - DWORD VertexShaderVersion; - DWORD PixelShaderVersion; - BOOL SoftwareVertexProcessing; - - D3DMATERIAL9 Material; - D3DLIGHT9[16] Lights; - BOOL[16] LightsEnabled; - - D3DGAMMARAMP GammaRamp; - RECT ScissorRect; - BOOL DialogBoxMode; - } -*/ -} - -alias LPDIRECT3DDEVICE9 IDirect3DDevice9; - - -interface LPDIRECT3DSTATEBLOCK9 : IUnknown -{ - HRESULT GetDevice(LPDIRECT3DDEVICE9* ppDevice); - HRESULT Capture(); - HRESULT Apply(); -/* - debug { - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DSTATEBLOCK9 IDirect3DStateBlock9; - -interface LPDIRECT3DSWAPCHAIN9 : IUnknown -{ - HRESULT Present( RECT* pSourceRect, RECT* pDestRect,HWND hDestWindowOverride, RGNDATA* pDirtyRegion,DWORD dwFlags); - HRESULT GetFrontBufferData( LPDIRECT3DSURFACE9 pDestSurface); - HRESULT GetBackBuffer( UINT iBackBuffer,D3DBACKBUFFER_TYPE Type,LPDIRECT3DSURFACE9* ppBackBuffer); - HRESULT GetRasterStatus( D3DRASTER_STATUS* pRasterStatus); - HRESULT GetDisplayMode( D3DDISPLAYMODE* pMode); - HRESULT GetDevice( LPDIRECT3DDEVICE9 * ppDevice); - HRESULT GetPresentParameters( D3DPRESENT_PARAMETERS* pPresentationParameters); -/* - debug { - D3DPRESENT_PARAMETERS PresentParameters; - D3DDISPLAYMODE DisplayMode; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DSWAPCHAIN9 IDirect3DSwapChain9; - -interface LPDIRECT3DRESOURCE9 : IUnknown -{ - HRESULT GetDevice( LPDIRECT3DDEVICE9* ppDevice); - HRESULT SetPrivateData( REFGUID refguid, void* pData,DWORD SizeOfData,DWORD Flags); - HRESULT GetPrivateData( REFGUID refguid,void* pData,DWORD* pSizeOfData); - HRESULT FreePrivateData( REFGUID refguid); - DWORD SetPriority(DWORD PriorityNew); - DWORD GetPriority(); - void PreLoad(); - D3DRESOURCETYPE GetType(); -} - -alias LPDIRECT3DRESOURCE9 IDirect3DResource9; - -interface LPDIRECT3DVERTEXDECLARATION9 : IUnknown -{ - HRESULT GetDevice( LPDIRECT3DDEVICE9* ppDevice); - HRESULT GetDeclaration( D3DVERTEXELEMENT9* pElement,UINT* pNumElements); -/* - debug { - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DVERTEXDECLARATION9 IDirect3DVertexDeclaration9; - -interface LPDIRECT3DVERTEXSHADER9 : IUnknown -{ - HRESULT GetDevice( LPDIRECT3DDEVICE9 * ppDevice); - HRESULT GetFunction( void*,UINT* pSizeOfData); -/* - debug { - DWORD Version; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DVERTEXSHADER9 IDirect3DVertexShader9; - -interface LPDIRECT3DPIXELSHADER9 : IUnknown -{ - HRESULT GetDevice( LPDIRECT3DDEVICE9 * ppDevice); - HRESULT GetFunction( void*,UINT* pSizeOfData); -/* - debug { - DWORD Version; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DPIXELSHADER9 IDirect3DPixelShader9; - -interface LPDIRECT3DBASETEXTURE9 : LPDIRECT3DRESOURCE9 -{ - DWORD SetLOD(DWORD LODNew); - DWORD GetLOD(); - DWORD GetLevelCount(); - HRESULT SetAutoGenFilterType( D3DTEXTUREFILTERTYPE FilterType); - D3DTEXTUREFILTERTYPE GetAutoGenFilterType(); - void GenerateMipSubLevels(); -} - -alias LPDIRECT3DBASETEXTURE9 IDirect3DBaseTexture9; - -interface LPDIRECT3DTEXTURE9 : LPDIRECT3DBASETEXTURE9 -{ - HRESULT GetLevelDesc( UINT Level,D3DSURFACE_DESC *pDesc); - HRESULT GetSurfaceLevel( UINT Level,LPDIRECT3DSURFACE9* ppSurfaceLevel); - HRESULT LockRect( UINT Level,D3DLOCKED_RECT* pLockedRect,RECT* pRect,DWORD Flags); - HRESULT UnlockRect( UINT Level); - HRESULT AddDirtyRect(RECT* pDirtyRect); -/* - debug { - LPCWSTR Name; - UINT Width; - UINT Height; - UINT Levels; - DWORD Usage; - D3DFORMAT Format; - D3DPOOL Pool; - DWORD Priority; - DWORD LOD; - D3DTEXTUREFILTERTYPE FilterType; - UINT LockCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DTEXTURE9 IDirect3DTexture9; - -interface LPDIRECT3DVOLUMETEXTURE9 : LPDIRECT3DBASETEXTURE9 -{ - HRESULT GetLevelDesc( UINT Level,D3DVOLUME_DESC *pDesc); - HRESULT GetVolumeLevel( UINT Level,LPDIRECT3DVOLUME9* ppVolumeLevel); - HRESULT LockBox( UINT Level,D3DLOCKED_BOX* pLockedVolume, D3DBOX* pBox,DWORD Flags); - HRESULT UnlockBox( UINT Level); - HRESULT AddDirtyBox( D3DBOX* pDirtyBox); -/* - debug { - LPCWSTR Name; - UINT Width; - UINT Height; - UINT Depth; - UINT Levels; - DWORD Usage; - D3DFORMAT Format; - D3DPOOL Pool; - DWORD Priority; - DWORD LOD; - D3DTEXTUREFILTERTYPE FilterType; - UINT LockCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DVOLUMETEXTURE9 IDirect3DVolumeTexture9; - -interface LPDIRECT3DCUBETEXTURE9 : LPDIRECT3DBASETEXTURE9 -{ - HRESULT GetLevelDesc( UINT Level,D3DSURFACE_DESC *pDesc); - HRESULT GetCubeMapSurface( D3DCUBEMAP_FACES FaceType,UINT Level,LPDIRECT3DSURFACE9* ppCubeMapSurface); - HRESULT LockRect( D3DCUBEMAP_FACES FaceType,UINT Level,D3DLOCKED_RECT* pLockedRect, RECT* pRect,DWORD Flags); - HRESULT UnlockRect( D3DCUBEMAP_FACES FaceType,UINT Level); - HRESULT AddDirtyRect( D3DCUBEMAP_FACES FaceType, RECT* pDirtyRect); -/* - debug { - LPCWSTR Name; - UINT Width; - UINT Height; - UINT Levels; - DWORD Usage; - D3DFORMAT Format; - D3DPOOL Pool; - DWORD Priority; - DWORD LOD; - D3DTEXTUREFILTERTYPE FilterType; - UINT LockCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DCUBETEXTURE9 IDirect3DCubeTexture9; - -interface LPDIRECT3DVERTEXBUFFER9 : LPDIRECT3DRESOURCE9 -{ - HRESULT Lock( UINT OffsetToLock,UINT SizeToLock,void** ppbData,DWORD Flags); - HRESULT Unlock(); - HRESULT GetDesc( D3DVERTEXBUFFER_DESC *pDesc); -/* - debug { - LPCWSTR Name; - UINT Length; - DWORD Usage; - DWORD FVF; - D3DPOOL Pool; - DWORD Priority; - UINT LockCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DVERTEXBUFFER9 IDirect3DVertexBuffer9; - -interface LPDIRECT3DINDEXBUFFER9 : LPDIRECT3DRESOURCE9 -{ - HRESULT Lock( UINT OffsetToLock,UINT SizeToLock,void** ppbData,DWORD Flags); - HRESULT Unlock(); - HRESULT GetDesc( D3DINDEXBUFFER_DESC *pDesc); -/* - debug { - LPCWSTR Name; - UINT Length; - DWORD Usage; - D3DFORMAT Format; - D3DPOOL Pool; - DWORD Priority; - UINT LockCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DINDEXBUFFER9 IDirect3DIndexBuffer9; - -interface LPDIRECT3DSURFACE9 : LPDIRECT3DRESOURCE9 -{ - HRESULT GetContainer( REFIID riid,void** ppContainer); - HRESULT GetDesc( D3DSURFACE_DESC *pDesc); - HRESULT LockRect( D3DLOCKED_RECT* pLockedRect, RECT* pRect,DWORD Flags); - HRESULT UnlockRect(); - HRESULT GetDC( HDC *phdc); - HRESULT ReleaseDC( HDC hdc); -/* - debug { - LPCWSTR Name; - UINT Width; - UINT Height; - DWORD Usage; - D3DFORMAT Format; - D3DPOOL Pool; - D3DMULTISAMPLE_TYPE MultiSampleType; - DWORD MultiSampleQuality; - DWORD Priority; - UINT LockCount; - UINT DCCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DSURFACE9 IDirect3DSurface9; - -interface LPDIRECT3DVOLUME9 : IUnknown -{ - HRESULT GetDevice( LPDIRECT3DDEVICE9 * ppDevice); - HRESULT SetPrivateData( REFGUID refguid, void* pData,DWORD SizeOfData,DWORD Flags); - HRESULT GetPrivateData( REFGUID refguid,void* pData,DWORD* pSizeOfData); - HRESULT FreePrivateData( REFGUID refguid); - HRESULT GetContainer( REFIID riid,void** ppContainer); - HRESULT GetDesc( D3DVOLUME_DESC *pDesc); - HRESULT LockBox( D3DLOCKED_BOX * pLockedVolume, D3DBOX* pBox,DWORD Flags); - HRESULT UnlockBox(); -/* - debug { - LPCWSTR Name; - UINT Width; - UINT Height; - UINT Depth; - DWORD Usage; - D3DFORMAT Format; - D3DPOOL Pool; - UINT LockCount; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DVOLUME9 IDirect3DVolume9; - -interface LPDIRECT3DQUERY9 : IUnknown -{ - HRESULT GetDevice( LPDIRECT3DDEVICE9* ppDevice); - D3DQUERYTYPE GetType(); - DWORD GetDataSize(); - HRESULT Issue( DWORD dwIssueFlags); - HRESULT GetData( void* pData,DWORD dwSize,DWORD dwGetDataFlags); -/* - debug { - D3DQUERYTYPE Type; - DWORD DataSize; - LPCWSTR CreationCallStack; - } -*/ -} - -alias LPDIRECT3DQUERY9 IDirect3DQuery9; - -/**************************************************************************** - * Flags for SetPrivateData method on all D3D9 interfaces - * - * The passed pointer is an IUnknown ptr. The SizeOfData argument to SetPrivateData - * must be set to sizeof(IUnknown*). Direct3D will call AddRef through this - * pointer and Release when the private data is destroyed. The data will be - * destroyed when another SetPrivateData with the same GUID is set, when - * FreePrivateData is called, or when the D3D9 object is freed. - ****************************************************************************/ -const D3DSPD_IUNKNOWN = 0x00000001L; - -/**************************************************************************** - * - * Flags for IDirect3D9::CreateDevice's BehaviorFlags - * - ****************************************************************************/ - -const D3DCREATE_FPU_PRESERVE = 0x00000002L; -const D3DCREATE_MULTITHREADED = 0x00000004L; - -const D3DCREATE_PUREDEVICE = 0x00000010L; -const D3DCREATE_SOFTWARE_VERTEXPROCESSING = 0x00000020L; -const D3DCREATE_HARDWARE_VERTEXPROCESSING = 0x00000040L; -const D3DCREATE_MIXED_VERTEXPROCESSING = 0x00000080L; - -const D3DCREATE_DISABLE_DRIVER_MANAGEMENT = 0x00000100L; -const D3DCREATE_ADAPTERGROUP_DEVICE = 0x00000200L; -const D3DCREATE_DISABLE_DRIVER_MANAGEMENT_EX = 0x00000400L; - -// This flag causes the D3D runtime not to alter the focus -// window in any way. Use with caution- the burden of supporting -// focus management events (alt-tab, etc.) falls on the -// application, and appropriate responses (switching display -// mode, etc.) should be coded. -const D3DCREATE_NOWINDOWCHANGES = 0x00000800L; - -// Disable multithreading for software vertex processing -const D3DCREATE_DISABLE_PSGP_THREADING = 0x00002000L; -// This flag enables present statistics on device. -const D3DCREATE_ENABLE_PRESENTSTATS = 0x00004000L; -// This flag disables printscreen support in the runtime for this device -const D3DCREATE_DISABLE_PRINTSCREEN = 0x00008000L; - -const D3DCREATE_SCREENSAVER = 0x10000000L; - - -/**************************************************************************** - * - * Parameter for IDirect3D9::CreateDevice's Adapter argument - * - ****************************************************************************/ - -const D3DADAPTER_DEFAULT = 0; - -/**************************************************************************** - * - * Flags for IDirect3D9::EnumAdapters - * - ****************************************************************************/ - -/* - * The D3DENUM_WHQL_LEVEL value has been retired for 9Ex and future versions, - * but it needs to be defined here for compatibility with DX9 and earlier versions. - * See the DirectX SDK for sample code on discovering driver signatures. - */ -const D3DENUM_WHQL_LEVEL = 0x00000002L; - -/* NO_DRIVERVERSION will not fill out the DriverVersion field, nor will the - DriverVersion be incorporated into the DeviceIdentifier GUID. WINNT only */ -const D3DENUM_NO_DRIVERVERSION = 0x00000004L; - - -/**************************************************************************** - * - * Maximum number of back-buffers supported in DX9 - * - ****************************************************************************/ - -const D3DPRESENT_BACK_BUFFERS_MAX = 3L; - -/**************************************************************************** - * - * Maximum number of back-buffers supported when apps use CreateDeviceEx - * - ****************************************************************************/ -const D3DPRESENT_BACK_BUFFERS_MAX_EX = 30L; - -/**************************************************************************** - * - * Flags for IDirect3DDevice9::SetGammaRamp - * - ****************************************************************************/ - -const D3DSGR_NO_CALIBRATION = 0x00000000L; -const D3DSGR_CALIBRATE = 0x00000001L; - -/**************************************************************************** - * - * Flags for IDirect3DDevice9::SetCursorPosition - * - ****************************************************************************/ - -const D3DCURSOR_IMMEDIATE_UPDATE = 0x00000001L; - -/**************************************************************************** - * - * Flags for IDirect3DSwapChain9::Present - * - ****************************************************************************/ - -const D3DPRESENT_DONOTWAIT = 0x00000001L; -const D3DPRESENT_LINEAR_CONTENT = 0x00000002L; -const D3DPRESENT_DONOTFLIP = 0x00000004L; -const D3DPRESENT_FLIPRESTART = 0x00000008L; -const D3DPRESENT_VIDEO_RESTRICT_TO_MONITOR = 0x00000010L; - -/**************************************************************************** - * - * Flags for DrawPrimitive/DrawIndexedPrimitive - * Also valid for Begin/BeginIndexed - * Also valid for VertexBuffer::CreateVertexBuffer - ****************************************************************************/ - - -/* - * DirectDraw error codes - */ -const _FACD3D = 0x876; -HRESULT MAKE_D3DHRESULT(T)(T code) { return MAKE_HRESULT( 1, _FACD3D, code ); } -HRESULT MAKE_D3DSTATUS(T)(T code) { return MAKE_HRESULT( 0, _FACD3D, code ); } - -/* - * Direct3D Errors - */ -const HRESULT D3D_OK = S_OK; - -const HRESULT D3DERR_WRONGTEXTUREFORMAT = MAKE_D3DHRESULT(2072); -const HRESULT D3DERR_UNSUPPORTEDCOLOROPERATION = MAKE_D3DHRESULT(2073); -const HRESULT D3DERR_UNSUPPORTEDCOLORARG = MAKE_D3DHRESULT(2074); -const HRESULT D3DERR_UNSUPPORTEDALPHAOPERATION = MAKE_D3DHRESULT(2075); -const HRESULT D3DERR_UNSUPPORTEDALPHAARG = MAKE_D3DHRESULT(2076); -const HRESULT D3DERR_TOOMANYOPERATIONS = MAKE_D3DHRESULT(2077); -const HRESULT D3DERR_CONFLICTINGTEXTUREFILTER = MAKE_D3DHRESULT(2078); -const HRESULT D3DERR_UNSUPPORTEDFACTORVALUE = MAKE_D3DHRESULT(2079); -const HRESULT D3DERR_CONFLICTINGRENDERSTATE = MAKE_D3DHRESULT(2081); -const HRESULT D3DERR_UNSUPPORTEDTEXTUREFILTER = MAKE_D3DHRESULT(2082); -const HRESULT D3DERR_CONFLICTINGTEXTUREPALETTE = MAKE_D3DHRESULT(2086); -const HRESULT D3DERR_DRIVERINTERNALERROR = MAKE_D3DHRESULT(2087); - -const HRESULT D3DERR_NOTFOUND = MAKE_D3DHRESULT(2150); -const HRESULT D3DERR_MOREDATA = MAKE_D3DHRESULT(2151); -const HRESULT D3DERR_DEVICELOST = MAKE_D3DHRESULT(2152); -const HRESULT D3DERR_DEVICENOTRESET = MAKE_D3DHRESULT(2153); -const HRESULT D3DERR_NOTAVAILABLE = MAKE_D3DHRESULT(2154); -const HRESULT D3DERR_OUTOFVIDEOMEMORY = MAKE_D3DHRESULT(380); -const HRESULT D3DERR_INVALIDDEVICE = MAKE_D3DHRESULT(2155); -const HRESULT D3DERR_INVALIDCALL = MAKE_D3DHRESULT(2156); -const HRESULT D3DERR_DRIVERINVALIDCALL = MAKE_D3DHRESULT(2157); -const HRESULT D3DERR_WASSTILLDRAWING = MAKE_D3DHRESULT(540); -const HRESULT D3DOK_NOAUTOGEN = MAKE_D3DSTATUS(2159); -const HRESULT D3DERR_DEVICEREMOVED = MAKE_D3DHRESULT(2160); -const HRESULT S_NOT_RESIDENT = MAKE_D3DSTATUS(2165); -const HRESULT S_RESIDENT_IN_SHARED_MEMORY = MAKE_D3DSTATUS(2166); -const HRESULT S_PRESENT_MODE_CHANGED = MAKE_D3DSTATUS(2167); -const HRESULT S_PRESENT_OCCLUDED = MAKE_D3DSTATUS(2168); -const HRESULT D3DERR_DEVICEHUNG = MAKE_D3DHRESULT(2164); - - -/********************* -/* D3D9Ex interfaces -/*********************/ - -extern (Windows) HRESULT Direct3DCreate9Ex(UINT SDKVersion, LPDIRECT3D9EX*); - -interface LPDIRECT3D9EX : LPDIRECT3D9 -{ - UINT GetAdapterModeCountEx(UINT Adapter, D3DDISPLAYMODEFILTER* pFilter ); - HRESULT EnumAdapterModesEx( UINT Adapter, D3DDISPLAYMODEFILTER* pFilter,UINT Mode,D3DDISPLAYMODEEX* pMode); - HRESULT GetAdapterDisplayModeEx( UINT Adapter,D3DDISPLAYMODEEX* pMode,D3DDISPLAYROTATION* pRotation); - HRESULT CreateDeviceEx( UINT Adapter,D3DDEVTYPE DeviceType,HWND hFocusWindow,DWORD BehaviorFlags,D3DPRESENT_PARAMETERS* pPresentationParameters,D3DDISPLAYMODEEX* pFullscreenDisplayMode,LPDIRECT3DDEVICE9EX* ppReturnedDeviceInterface); - HRESULT GetAdapterLUID( UINT Adapter,LUID * pLUID); -} - -alias LPDIRECT3D9EX IDirect3D9Ex; - -interface LPDIRECT3DDEVICE9EX : LPDIRECT3DDEVICE9 -{ - HRESULT SetConvolutionMonoKernel( UINT width,UINT height,float* rows,float* columns); - HRESULT ComposeRects( LPDIRECT3DSURFACE9 pSrc,LPDIRECT3DSURFACE9 pDst,LPDIRECT3DVERTEXBUFFER9 pSrcRectDescs,UINT NumRects,LPDIRECT3DVERTEXBUFFER9 pDstRectDescs,D3DCOMPOSERECTSOP Operation,int Xoffset,int Yoffset); - HRESULT PresentEx( RECT* pSourceRect, RECT* pDestRect,HWND hDestWindowOverride, RGNDATA* pDirtyRegion,DWORD dwFlags); - HRESULT GetGPUThreadPriority( INT* pPriority); - HRESULT SetGPUThreadPriority( INT Priority); - HRESULT WaitForVBlank( UINT iSwapChain); - HRESULT CheckResourceResidency( LPDIRECT3DRESOURCE9* pResourceArray,UINT32 NumResources); - HRESULT SetMaximumFrameLatency( UINT MaxLatency); - HRESULT GetMaximumFrameLatency( UINT* pMaxLatency); - HRESULT CheckDeviceState( HWND hDestinationWindow); - HRESULT CreateRenderTargetEx( UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Lockable,LPDIRECT3DSURFACE9* ppSurface,HANDLE* pSharedHandle,DWORD Usage); - HRESULT CreateOffscreenPlainSurfaceEx( UINT Width,UINT Height,D3DFORMAT Format,D3DPOOL Pool,LPDIRECT3DSURFACE9* ppSurface,HANDLE* pSharedHandle,DWORD Usage); - HRESULT CreateDepthStencilSurfaceEx( UINT Width,UINT Height,D3DFORMAT Format,D3DMULTISAMPLE_TYPE MultiSample,DWORD MultisampleQuality,BOOL Discard,LPDIRECT3DSURFACE9* ppSurface,HANDLE* pSharedHandle,DWORD Usage); - HRESULT ResetEx( D3DPRESENT_PARAMETERS* pPresentationParameters,D3DDISPLAYMODEEX *pFullscreenDisplayMode); - HRESULT GetDisplayModeEx( UINT iSwapChain,D3DDISPLAYMODEEX* pMode,D3DDISPLAYROTATION* pRotation); -} - -alias LPDIRECT3DDEVICE9EX IDirect3DDevice9Ex; - -interface LPDIRECT3DSWAPCHAIN9EX : LPDIRECT3DSWAPCHAIN9 -{ - HRESULT GetLastPresentCount( UINT* pLastPresentCount); - HRESULT GetPresentStats( D3DPRESENTSTATS* pPresentationStatistics); - HRESULT GetDisplayModeEx( D3DDISPLAYMODEEX* pMode,D3DDISPLAYROTATION* pRotation); -} - -alias LPDIRECT3DSWAPCHAIN9EX IDirect3DSwapChain9Ex; diff --git a/3rdparty-extra/win32/directx/d3d9.def b/3rdparty-extra/win32/directx/d3d9.def deleted file mode 100644 index cfcf22292..000000000 --- a/3rdparty-extra/win32/directx/d3d9.def +++ /dev/null @@ -1,2 +0,0 @@ -IMPORTS -_Direct3DCreate9@4 = d3d9.Direct3DCreate9 \ No newline at end of file diff --git a/3rdparty-extra/win32/directx/d3d9caps.d b/3rdparty-extra/win32/directx/d3d9caps.d deleted file mode 100644 index fbb239134..000000000 --- a/3rdparty-extra/win32/directx/d3d9caps.d +++ /dev/null @@ -1,473 +0,0 @@ -/*==========================================================================; - * - * Copyright (C) Microsoft Corporation. All Rights Reserved. - * - * File: d3d9caps.h - * Content: Direct3D capabilities include file - * - ***************************************************************************/ - -module win32.directx.d3d9caps; -version(Windows): - -private import win32.windows, - win32.directx.d3d9types; - -align(4): - -struct D3DVSHADERCAPS2_0 -{ - DWORD Caps; - INT DynamicFlowControlDepth; - INT NumTemps; - INT StaticFlowControlDepth; -} - -const D3DVS20CAPS_PREDICATION = (1<<0); - -const D3DVS20_MAX_DYNAMICFLOWCONTROLDEPTH = 24; -const D3DVS20_MIN_DYNAMICFLOWCONTROLDEPTH = 0; -const D3DVS20_MAX_NUMTEMPS = 32; -const D3DVS20_MIN_NUMTEMPS = 12; -const D3DVS20_MAX_STATICFLOWCONTROLDEPTH = 4; -const D3DVS20_MIN_STATICFLOWCONTROLDEPTH = 1; - -struct D3DPSHADERCAPS2_0 -{ - DWORD Caps; - INT DynamicFlowControlDepth; - INT NumTemps; - INT StaticFlowControlDepth; - INT NumInstructionSlots; -} - -const D3DPS20CAPS_ARBITRARYSWIZZLE = (1<<0); -const D3DPS20CAPS_GRADIENTINSTRUCTIONS = (1<<1); -const D3DPS20CAPS_PREDICATION = (1<<2); -const D3DPS20CAPS_NODEPENDENTREADLIMIT = (1<<3); -const D3DPS20CAPS_NOTEXINSTRUCTIONLIMIT = (1<<4); - -const D3DPS20_MAX_DYNAMICFLOWCONTROLDEPTH = 24; -const D3DPS20_MIN_DYNAMICFLOWCONTROLDEPTH = 0; -const D3DPS20_MAX_NUMTEMPS = 32; -const D3DPS20_MIN_NUMTEMPS = 12; -const D3DPS20_MAX_STATICFLOWCONTROLDEPTH = 4; -const D3DPS20_MIN_STATICFLOWCONTROLDEPTH = 0; -const D3DPS20_MAX_NUMINSTRUCTIONSLOTS = 512; -const D3DPS20_MIN_NUMINSTRUCTIONSLOTS = 96; - -const D3DMIN30SHADERINSTRUCTIONS = 512; -const D3DMAX30SHADERINSTRUCTIONS = 32768; - -struct D3DCAPS9 -{ - /* Device Info */ - D3DDEVTYPE DeviceType; - UINT AdapterOrdinal; - - /* Caps from DX7 Draw */ - DWORD Caps; - DWORD Caps2; - DWORD Caps3; - DWORD PresentationIntervals; - - /* Cursor Caps */ - DWORD CursorCaps; - - /* 3D Device Caps */ - DWORD DevCaps; - - DWORD PrimitiveMiscCaps; - DWORD RasterCaps; - DWORD ZCmpCaps; - DWORD SrcBlendCaps; - DWORD DestBlendCaps; - DWORD AlphaCmpCaps; - DWORD ShadeCaps; - DWORD TextureCaps; - DWORD TextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DTexture9's - DWORD CubeTextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DCubeTexture9's - DWORD VolumeTextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DVolumeTexture9's - DWORD TextureAddressCaps; // D3DPTADDRESSCAPS for IDirect3DTexture9's - DWORD VolumeTextureAddressCaps; // D3DPTADDRESSCAPS for IDirect3DVolumeTexture9's - - DWORD LineCaps; // D3DLINECAPS - - DWORD MaxTextureWidth, MaxTextureHeight; - DWORD MaxVolumeExtent; - - DWORD MaxTextureRepeat; - DWORD MaxTextureAspectRatio; - DWORD MaxAnisotropy; - float MaxVertexW; - - float GuardBandLeft; - float GuardBandTop; - float GuardBandRight; - float GuardBandBottom; - - float ExtentsAdjust; - DWORD StencilCaps; - - DWORD FVFCaps; - DWORD TextureOpCaps; - DWORD MaxTextureBlendStages; - DWORD MaxSimultaneousTextures; - - DWORD VertexProcessingCaps; - DWORD MaxActiveLights; - DWORD MaxUserClipPlanes; - DWORD MaxVertexBlendMatrices; - DWORD MaxVertexBlendMatrixIndex; - - float MaxPointSize; - - DWORD MaxPrimitiveCount; // max number of primitives per DrawPrimitive call - DWORD MaxVertexIndex; - DWORD MaxStreams; - DWORD MaxStreamStride; // max stride for SetStreamSource - - DWORD VertexShaderVersion; - DWORD MaxVertexShaderConst; // number of vertex shader constant registers - - DWORD PixelShaderVersion; - float PixelShader1xMaxValue; // max value storable in registers of ps.1.x shaders - - // Here are the DX9 specific ones - DWORD DevCaps2; - - float MaxNpatchTessellationLevel; - DWORD Reserved5; - - UINT MasterAdapterOrdinal; // ordinal of master adaptor for adapter group - UINT AdapterOrdinalInGroup; // ordinal inside the adapter group - UINT NumberOfAdaptersInGroup; // number of adapters in this adapter group (only if master) - DWORD DeclTypes; // Data types, supported in vertex declarations - DWORD NumSimultaneousRTs; // Will be at least 1 - DWORD StretchRectFilterCaps; // Filter caps supported by StretchRect - D3DVSHADERCAPS2_0 VS20Caps; - D3DPSHADERCAPS2_0 PS20Caps; - DWORD VertexTextureFilterCaps; // D3DPTFILTERCAPS for IDirect3DTexture9's for texture, used in vertex shaders - DWORD MaxVShaderInstructionsExecuted; // maximum number of vertex shader instructions that can be executed - DWORD MaxPShaderInstructionsExecuted; // maximum number of pixel shader instructions that can be executed - DWORD MaxVertexShader30InstructionSlots; - DWORD MaxPixelShader30InstructionSlots; -} - -// -// BIT DEFINES FOR D3DCAPS9 DWORD MEMBERS -// - -// -// Caps -// -const D3DCAPS_READ_SCANLINE = 0x00020000L; - -// -// Caps2 -// -const D3DCAPS2_FULLSCREENGAMMA = 0x00020000L; -const D3DCAPS2_CANCALIBRATEGAMMA = 0x00100000L; -const D3DCAPS2_RESERVED = 0x02000000L; -const D3DCAPS2_CANMANAGERESOURCE = 0x10000000L; -const D3DCAPS2_DYNAMICTEXTURES = 0x20000000L; -const D3DCAPS2_CANAUTOGENMIPMAP = 0x40000000L; - -const D3DCAPS2_CANSHARERESOURCE = 0x80000000L; - -// -// Caps3 -// -const D3DCAPS3_RESERVED = 0x8000001fL; - -// Indicates that the device can respect the ALPHABLENDENABLE render state -// when fullscreen while using the FLIP or DISCARD swap effect. -// COPY and COPYVSYNC swap effects work whether or not this flag is set. -const D3DCAPS3_ALPHA_FULLSCREEN_FLIP_OR_DISCARD = 0x00000020L; - -// Indicates that the device can perform a gamma correction from -// a windowed back buffer containing linear content to the sRGB desktop. -const D3DCAPS3_LINEAR_TO_SRGB_PRESENTATION = 0x00000080L; - -const D3DCAPS3_COPY_TO_VIDMEM = 0x00000100L; /* Device can acclerate copies from sysmem to local vidmem */ -const D3DCAPS3_COPY_TO_SYSTEMMEM = 0x00000200L; /* Device can acclerate copies from local vidmem to sysmem */ - - -// -// PresentationIntervals -// -const D3DPRESENT_INTERVAL_DEFAULT = 0x00000000L; -const D3DPRESENT_INTERVAL_ONE = 0x00000001L; -const D3DPRESENT_INTERVAL_TWO = 0x00000002L; -const D3DPRESENT_INTERVAL_THREE = 0x00000004L; -const D3DPRESENT_INTERVAL_FOUR = 0x00000008L; -const D3DPRESENT_INTERVAL_IMMEDIATE = 0x80000000L; - -// -// CursorCaps -// -// Driver supports HW color cursor in at least hi-res modes(height >=400) -const D3DCURSORCAPS_COLOR = 0x00000001L; -// Driver supports HW cursor also in low-res modes(height < 400) -const D3DCURSORCAPS_LOWRES = 0x00000002L; - -// -// DevCaps -// -const D3DDEVCAPS_EXECUTESYSTEMMEMORY = 0x00000010L; /* Device can use execute buffers from system memory */ -const D3DDEVCAPS_EXECUTEVIDEOMEMORY = 0x00000020L; /* Device can use execute buffers from video memory */ -const D3DDEVCAPS_TLVERTEXSYSTEMMEMORY = 0x00000040L; /* Device can use TL buffers from system memory */ -const D3DDEVCAPS_TLVERTEXVIDEOMEMORY = 0x00000080L; /* Device can use TL buffers from video memory */ -const D3DDEVCAPS_TEXTURESYSTEMMEMORY = 0x00000100L; /* Device can texture from system memory */ -const D3DDEVCAPS_TEXTUREVIDEOMEMORY = 0x00000200L; /* Device can texture from device memory */ -const D3DDEVCAPS_DRAWPRIMTLVERTEX = 0x00000400L; /* Device can draw TLVERTEX primitives */ -const D3DDEVCAPS_CANRENDERAFTERFLIP = 0x00000800L; /* Device can render without waiting for flip to complete */ -const D3DDEVCAPS_TEXTURENONLOCALVIDMEM = 0x00001000L; /* Device can texture from nonlocal video memory */ -const D3DDEVCAPS_DRAWPRIMITIVES2 = 0x00002000L; /* Device can support DrawPrimitives2 */ -const D3DDEVCAPS_SEPARATETEXTUREMEMORIES = 0x00004000L; /* Device is texturing from separate memory pools */ -const D3DDEVCAPS_DRAWPRIMITIVES2EX = 0x00008000L; /* Device can support Extended DrawPrimitives2 i.e. DX7 compliant driver*/ -const D3DDEVCAPS_HWTRANSFORMANDLIGHT = 0x00010000L; /* Device can support transformation and lighting in hardware and DRAWPRIMITIVES2EX must be also */ -const D3DDEVCAPS_CANBLTSYSTONONLOCAL = 0x00020000L; /* Device supports a Tex Blt from system memory to non-local vidmem */ -const D3DDEVCAPS_HWRASTERIZATION = 0x00080000L; /* Device has HW acceleration for rasterization */ -const D3DDEVCAPS_PUREDEVICE = 0x00100000L; /* Device supports D3DCREATE_PUREDEVICE */ -const D3DDEVCAPS_QUINTICRTPATCHES = 0x00200000L; /* Device supports quintic Beziers and BSplines */ -const D3DDEVCAPS_RTPATCHES = 0x00400000L; /* Device supports Rect and Tri patches */ -const D3DDEVCAPS_RTPATCHHANDLEZERO = 0x00800000L; /* Indicates that RT Patches may be drawn efficiently using handle 0 */ -const D3DDEVCAPS_NPATCHES = 0x01000000L; /* Device supports N-Patches */ - -// -// PrimitiveMiscCaps -// -const D3DPMISCCAPS_MASKZ = 0x00000002L; -const D3DPMISCCAPS_CULLNONE = 0x00000010L; -const D3DPMISCCAPS_CULLCW = 0x00000020L; -const D3DPMISCCAPS_CULLCCW = 0x00000040L; -const D3DPMISCCAPS_COLORWRITEENABLE = 0x00000080L; -const D3DPMISCCAPS_CLIPPLANESCALEDPOINTS = 0x00000100L; /* Device correctly clips scaled points to clip planes */ -const D3DPMISCCAPS_CLIPTLVERTS = 0x00000200L; /* device will clip post-transformed vertex primitives */ -const D3DPMISCCAPS_TSSARGTEMP = 0x00000400L; /* device supports D3DTA_TEMP for temporary register */ -const D3DPMISCCAPS_BLENDOP = 0x00000800L; /* device supports D3DRS_BLENDOP */ -const D3DPMISCCAPS_NULLREFERENCE = 0x00001000L; /* Reference Device that doesnt render */ -const D3DPMISCCAPS_INDEPENDENTWRITEMASKS = 0x00004000L; /* Device supports independent write masks for MET or MRT */ -const D3DPMISCCAPS_PERSTAGECONSTANT = 0x00008000L; /* Device supports per-stage constants */ -const D3DPMISCCAPS_FOGANDSPECULARALPHA = 0x00010000L; /* Device supports separate fog and specular alpha (many devices - use the specular alpha channel to store fog factor) */ -const D3DPMISCCAPS_SEPARATEALPHABLEND = 0x00020000L; /* Device supports separate blend settings for the alpha channel */ -const D3DPMISCCAPS_MRTINDEPENDENTBITDEPTHS = 0x00040000L; /* Device supports different bit depths for MRT */ -const D3DPMISCCAPS_MRTPOSTPIXELSHADERBLENDING = 0x00080000L; /* Device supports post-pixel shader operations for MRT */ -const D3DPMISCCAPS_FOGVERTEXCLAMPED = 0x00100000L; /* Device clamps fog blend factor per vertex */ - -const D3DPMISCCAPS_POSTBLENDSRGBCONVERT = 0x00200000L; /* Indicates device can perform conversion to sRGB after blending. */ - -// -// LineCaps -// -const D3DLINECAPS_TEXTURE = 0x00000001L; -const D3DLINECAPS_ZTEST = 0x00000002L; -const D3DLINECAPS_BLEND = 0x00000004L; -const D3DLINECAPS_ALPHACMP = 0x00000008L; -const D3DLINECAPS_FOG = 0x00000010L; -const D3DLINECAPS_ANTIALIAS = 0x00000020L; - -// -// RasterCaps -// -const D3DPRASTERCAPS_DITHER = 0x00000001L; -const D3DPRASTERCAPS_ZTEST = 0x00000010L; -const D3DPRASTERCAPS_FOGVERTEX = 0x00000080L; -const D3DPRASTERCAPS_FOGTABLE = 0x00000100L; -const D3DPRASTERCAPS_MIPMAPLODBIAS = 0x00002000L; -const D3DPRASTERCAPS_ZBUFFERLESSHSR = 0x00008000L; -const D3DPRASTERCAPS_FOGRANGE = 0x00010000L; -const D3DPRASTERCAPS_ANISOTROPY = 0x00020000L; -const D3DPRASTERCAPS_WBUFFER = 0x00040000L; -const D3DPRASTERCAPS_WFOG = 0x00100000L; -const D3DPRASTERCAPS_ZFOG = 0x00200000L; -const D3DPRASTERCAPS_COLORPERSPECTIVE = 0x00400000L; /* Device iterates colors perspective correct */ -const D3DPRASTERCAPS_SCISSORTEST = 0x01000000L; -const D3DPRASTERCAPS_SLOPESCALEDEPTHBIAS = 0x02000000L; -const D3DPRASTERCAPS_DEPTHBIAS = 0x04000000L; -const D3DPRASTERCAPS_MULTISAMPLE_TOGGLE = 0x08000000L; - -// -// ZCmpCaps, AlphaCmpCaps -// -const D3DPCMPCAPS_NEVER = 0x00000001L; -const D3DPCMPCAPS_LESS = 0x00000002L; -const D3DPCMPCAPS_EQUAL = 0x00000004L; -const D3DPCMPCAPS_LESSEQUAL = 0x00000008L; -const D3DPCMPCAPS_GREATER = 0x00000010L; -const D3DPCMPCAPS_NOTEQUAL = 0x00000020L; -const D3DPCMPCAPS_GREATEREQUAL = 0x00000040L; -const D3DPCMPCAPS_ALWAYS = 0x00000080L; - -// -// SourceBlendCaps, DestBlendCaps -// -const D3DPBLENDCAPS_ZERO = 0x00000001L; -const D3DPBLENDCAPS_ONE = 0x00000002L; -const D3DPBLENDCAPS_SRCCOLOR = 0x00000004L; -const D3DPBLENDCAPS_INVSRCCOLOR = 0x00000008L; -const D3DPBLENDCAPS_SRCALPHA = 0x00000010L; -const D3DPBLENDCAPS_INVSRCALPHA = 0x00000020L; -const D3DPBLENDCAPS_DESTALPHA = 0x00000040L; -const D3DPBLENDCAPS_INVDESTALPHA = 0x00000080L; -const D3DPBLENDCAPS_DESTCOLOR = 0x00000100L; -const D3DPBLENDCAPS_INVDESTCOLOR = 0x00000200L; -const D3DPBLENDCAPS_SRCALPHASAT = 0x00000400L; -const D3DPBLENDCAPS_BOTHSRCALPHA = 0x00000800L; -const D3DPBLENDCAPS_BOTHINVSRCALPHA = 0x00001000L; -const D3DPBLENDCAPS_BLENDFACTOR = 0x00002000L; /* Supports both D3DBLEND_BLENDFACTOR and D3DBLEND_INVBLENDFACTOR */ - -const D3DPBLENDCAPS_SRCCOLOR2 = 0x00004000L; -const D3DPBLENDCAPS_INVSRCCOLOR2 = 0x00008000L; - -// -// ShadeCaps -// -const D3DPSHADECAPS_COLORGOURAUDRGB = 0x00000008L; -const D3DPSHADECAPS_SPECULARGOURAUDRGB = 0x00000200L; -const D3DPSHADECAPS_ALPHAGOURAUDBLEND = 0x00004000L; -const D3DPSHADECAPS_FOGGOURAUD = 0x00080000L; - -// -// TextureCaps -// -const D3DPTEXTURECAPS_PERSPECTIVE = 0x00000001L; /* Perspective-correct texturing is supported */ -const D3DPTEXTURECAPS_POW2 = 0x00000002L; /* Power-of-2 texture dimensions are required - applies to non-Cube/Volume textures only. */ -const D3DPTEXTURECAPS_ALPHA = 0x00000004L; /* Alpha in texture pixels is supported */ -const D3DPTEXTURECAPS_SQUAREONLY = 0x00000020L; /* Only square textures are supported */ -const D3DPTEXTURECAPS_TEXREPEATNOTSCALEDBYSIZE = 0x00000040L; /* Texture indices are not scaled by the texture size prior to interpolation */ -const D3DPTEXTURECAPS_ALPHAPALETTE = 0x00000080L; /* Device can draw alpha from texture palettes */ -// Device can use non-POW2 textures if: -// 1) D3DTEXTURE_ADDRESS is set to CLAMP for this texture's stage -// 2) D3DRS_WRAP(N) is zero for this texture's coordinates -// 3) mip mapping is not enabled (use magnification filter only) -const D3DPTEXTURECAPS_NONPOW2CONDITIONAL = 0x00000100L; -const D3DPTEXTURECAPS_PROJECTED = 0x00000400L; /* Device can do D3DTTFF_PROJECTED */ -const D3DPTEXTURECAPS_CUBEMAP = 0x00000800L; /* Device can do cubemap textures */ -const D3DPTEXTURECAPS_VOLUMEMAP = 0x00002000L; /* Device can do volume textures */ -const D3DPTEXTURECAPS_MIPMAP = 0x00004000L; /* Device can do mipmapped textures */ -const D3DPTEXTURECAPS_MIPVOLUMEMAP = 0x00008000L; /* Device can do mipmapped volume textures */ -const D3DPTEXTURECAPS_MIPCUBEMAP = 0x00010000L; /* Device can do mipmapped cube maps */ -const D3DPTEXTURECAPS_CUBEMAP_POW2 = 0x00020000L; /* Device requires that cubemaps be power-of-2 dimension */ -const D3DPTEXTURECAPS_VOLUMEMAP_POW2 = 0x00040000L; /* Device requires that volume maps be power-of-2 dimension */ -const D3DPTEXTURECAPS_NOPROJECTEDBUMPENV = 0x00200000L; /* Device does not support projected bump env lookup operation - in programmable and fixed function pixel shaders */ - -// -// TextureFilterCaps, StretchRectFilterCaps -// -const D3DPTFILTERCAPS_MINFPOINT = 0x00000100L; /* Min Filter */ -const D3DPTFILTERCAPS_MINFLINEAR = 0x00000200L; -const D3DPTFILTERCAPS_MINFANISOTROPIC = 0x00000400L; -const D3DPTFILTERCAPS_MINFPYRAMIDALQUAD = 0x00000800L; -const D3DPTFILTERCAPS_MINFGAUSSIANQUAD = 0x00001000L; -const D3DPTFILTERCAPS_MIPFPOINT = 0x00010000L; /* Mip Filter */ -const D3DPTFILTERCAPS_MIPFLINEAR = 0x00020000L; - -const D3DPTFILTERCAPS_CONVOLUTIONMONO = 0x00040000L; /* Min and Mag for the convolution mono filter */ - -const D3DPTFILTERCAPS_MAGFPOINT = 0x01000000L; /* Mag Filter */ -const D3DPTFILTERCAPS_MAGFLINEAR = 0x02000000L; -const D3DPTFILTERCAPS_MAGFANISOTROPIC = 0x04000000L; -const D3DPTFILTERCAPS_MAGFPYRAMIDALQUAD = 0x08000000L; -const D3DPTFILTERCAPS_MAGFGAUSSIANQUAD = 0x10000000L; - -// -// TextureAddressCaps -// -const D3DPTADDRESSCAPS_WRAP = 0x00000001L; -const D3DPTADDRESSCAPS_MIRROR = 0x00000002L; -const D3DPTADDRESSCAPS_CLAMP = 0x00000004L; -const D3DPTADDRESSCAPS_BORDER = 0x00000008L; -const D3DPTADDRESSCAPS_INDEPENDENTUV = 0x00000010L; -const D3DPTADDRESSCAPS_MIRRORONCE = 0x00000020L; - -// -// StencilCaps -// -const D3DSTENCILCAPS_KEEP = 0x00000001L; -const D3DSTENCILCAPS_ZERO = 0x00000002L; -const D3DSTENCILCAPS_REPLACE = 0x00000004L; -const D3DSTENCILCAPS_INCRSAT = 0x00000008L; -const D3DSTENCILCAPS_DECRSAT = 0x00000010L; -const D3DSTENCILCAPS_INVERT = 0x00000020L; -const D3DSTENCILCAPS_INCR = 0x00000040L; -const D3DSTENCILCAPS_DECR = 0x00000080L; -const D3DSTENCILCAPS_TWOSIDED = 0x00000100L; - -// -// TextureOpCaps -// -const D3DTEXOPCAPS_DISABLE = 0x00000001L; -const D3DTEXOPCAPS_SELECTARG1 = 0x00000002L; -const D3DTEXOPCAPS_SELECTARG2 = 0x00000004L; -const D3DTEXOPCAPS_MODULATE = 0x00000008L; -const D3DTEXOPCAPS_MODULATE2X = 0x00000010L; -const D3DTEXOPCAPS_MODULATE4X = 0x00000020L; -const D3DTEXOPCAPS_ADD = 0x00000040L; -const D3DTEXOPCAPS_ADDSIGNED = 0x00000080L; -const D3DTEXOPCAPS_ADDSIGNED2X = 0x00000100L; -const D3DTEXOPCAPS_SUBTRACT = 0x00000200L; -const D3DTEXOPCAPS_ADDSMOOTH = 0x00000400L; -const D3DTEXOPCAPS_BLENDDIFFUSEALPHA = 0x00000800L; -const D3DTEXOPCAPS_BLENDTEXTUREALPHA = 0x00001000L; -const D3DTEXOPCAPS_BLENDFACTORALPHA = 0x00002000L; -const D3DTEXOPCAPS_BLENDTEXTUREALPHAPM = 0x00004000L; -const D3DTEXOPCAPS_BLENDCURRENTALPHA = 0x00008000L; -const D3DTEXOPCAPS_PREMODULATE = 0x00010000L; -const D3DTEXOPCAPS_MODULATEALPHA_ADDCOLOR = 0x00020000L; -const D3DTEXOPCAPS_MODULATECOLOR_ADDALPHA = 0x00040000L; -const D3DTEXOPCAPS_MODULATEINVALPHA_ADDCOLOR = 0x00080000L; -const D3DTEXOPCAPS_MODULATEINVCOLOR_ADDALPHA = 0x00100000L; -const D3DTEXOPCAPS_BUMPENVMAP = 0x00200000L; -const D3DTEXOPCAPS_BUMPENVMAPLUMINANCE = 0x00400000L; -const D3DTEXOPCAPS_DOTPRODUCT3 = 0x00800000L; -const D3DTEXOPCAPS_MULTIPLYADD = 0x01000000L; -const D3DTEXOPCAPS_LERP = 0x02000000L; - -// -// FVFCaps -// -const D3DFVFCAPS_TEXCOORDCOUNTMASK = 0x0000ffffL; /* mask for texture coordinate count field */ -const D3DFVFCAPS_DONOTSTRIPELEMENTS = 0x00080000L; /* Device prefers that vertex elements not be stripped */ -const D3DFVFCAPS_PSIZE = 0x00100000L; /* Device can receive point size */ - -// -// VertexProcessingCaps -// -const D3DVTXPCAPS_TEXGEN = 0x00000001L; /* device can do texgen */ -const D3DVTXPCAPS_MATERIALSOURCE7 = 0x00000002L; /* device can do DX7-level colormaterialsource ops */ -const D3DVTXPCAPS_DIRECTIONALLIGHTS = 0x00000008L; /* device can do directional lights */ -const D3DVTXPCAPS_POSITIONALLIGHTS = 0x00000010L; /* device can do positional lights (includes point and spot) */ -const D3DVTXPCAPS_LOCALVIEWER = 0x00000020L; /* device can do local viewer */ -const D3DVTXPCAPS_TWEENING = 0x00000040L; /* device can do vertex tweening */ -const D3DVTXPCAPS_TEXGEN_SPHEREMAP = 0x00000100L; /* device supports D3DTSS_TCI_SPHEREMAP */ -const D3DVTXPCAPS_NO_TEXGEN_NONLOCALVIEWER = 0x00000200L; /* device does not support TexGen in non-local - viewer mode */ - -// -// DevCaps2 -// -const D3DDEVCAPS2_STREAMOFFSET = 0x00000001L; /* Device supports offsets in streams. Must be set by DX9 drivers */ -const D3DDEVCAPS2_DMAPNPATCH = 0x00000002L; /* Device supports displacement maps for N-Patches*/ -const D3DDEVCAPS2_ADAPTIVETESSRTPATCH = 0x00000004L; /* Device supports adaptive tesselation of RT-patches*/ -const D3DDEVCAPS2_ADAPTIVETESSNPATCH = 0x00000008L; /* Device supports adaptive tesselation of N-patches*/ -const D3DDEVCAPS2_CAN_STRETCHRECT_FROM_TEXTURES = 0x00000010L; /* Device supports StretchRect calls with a texture as the source*/ -const D3DDEVCAPS2_PRESAMPLEDDMAPNPATCH = 0x00000020L; /* Device supports presampled displacement maps for N-Patches */ -const D3DDEVCAPS2_VERTEXELEMENTSCANSHARESTREAMOFFSET = 0x00000040L; /* Vertex elements in a vertex declaration can share the same stream offset */ - -// -// DeclTypes -// -const D3DDTCAPS_UBYTE4 = 0x00000001L; -const D3DDTCAPS_UBYTE4N = 0x00000002L; -const D3DDTCAPS_SHORT2N = 0x00000004L; -const D3DDTCAPS_SHORT4N = 0x00000008L; -const D3DDTCAPS_USHORT2N = 0x00000010L; -const D3DDTCAPS_USHORT4N = 0x00000020L; -const D3DDTCAPS_UDEC3 = 0x00000040L; -const D3DDTCAPS_DEC3N = 0x00000080L; -const D3DDTCAPS_FLOAT16_2 = 0x00000100L; -const D3DDTCAPS_FLOAT16_4 = 0x00000200L; \ No newline at end of file diff --git a/3rdparty-extra/win32/directx/d3d9types.d b/3rdparty-extra/win32/directx/d3d9types.d deleted file mode 100644 index a96bac567..000000000 --- a/3rdparty-extra/win32/directx/d3d9types.d +++ /dev/null @@ -1,1847 +0,0 @@ -/*==========================================================================; - * - * Copyright (C) Microsoft Corporation. All Rights Reserved. - * - * File: d3d9types.h - * Content: Direct3D capabilities include file - * - ***************************************************************************/ - -module win32.directx.d3d9types; -version(Windows): - -private import win32.windows; - -// Alignment compatibility -align(4): - -// D3DCOLOR is equivalent to D3DFMT_A8R8G8B8 -alias TypeDef!(uint) D3DCOLOR; - -// maps unsigned 8 bits/channel to D3DCOLOR -D3DCOLOR D3DCOLOR_ARGB(ubyte a,ubyte r,ubyte g,ubyte b) { return cast(D3DCOLOR)((a<<24)|(r<<16)|(g<<8)|b); } -D3DCOLOR D3DCOLOR_RGBA(ubyte r,ubyte g,ubyte b,ubyte a) { return D3DCOLOR_ARGB(a,r,g,b); } -D3DCOLOR D3DCOLOR_XRGB(ubyte r,ubyte g,ubyte b) { return D3DCOLOR_ARGB(0xff,r,g,b); } - -D3DCOLOR D3DCOLOR_XYUV(ubyte y, ubyte u, ubyte v) { return D3DCOLOR_ARGB(0xff,y,u,v); } -D3DCOLOR D3DCOLOR_AYUV( ubyte a, ubyte y, ubyte u, ubyte v) { return D3DCOLOR_ARGB(a,y,u,v); } - -// maps floating point channels (0.f to 1.f range) to D3DCOLOR -D3DCOLOR D3DCOLOR_COLORVALUE(float r, float g, float b, float a) { return D3DCOLOR_RGBA(cast(ubyte)(r*255.0f),cast(ubyte)(g*255.0f),cast(ubyte)(b*255.0f),cast(ubyte)(a*255.0f)); } - -struct D3DVECTOR { - float x; - float y; - float z; -} - -struct D3DCOLORVALUE { - float r; - float g; - float b; - float a; -} - -struct D3DRECT { - LONG x1; - LONG y1; - LONG x2; - LONG y2; -} - -struct D3DMATRIX { - union { - struct { - float _11, _12, _13, _14; - float _21, _22, _23, _24; - float _31, _32, _33, _34; - float _41, _42, _43, _44; - } - float[4][4] m; - } -} - -struct D3DVIEWPORT9 { - uint X; - uint Y; /* Viewport Top left */ - uint Width; - uint Height; /* Viewport Dimensions */ - float MinZ; /* Min/max of clip Volume */ - float MaxZ; -} - -/* - * Values for clip fields. - */ - -// Max number of user clipping planes, supported in D3D. -const D3DMAXUSERCLIPPLANES = 32; - -// These bits could be ORed together to use with D3DRS_CLIPPLANEENABLE -// -const D3DCLIPPLANE0 = (1<<0); -const D3DCLIPPLANE1 = (1<<1); -const D3DCLIPPLANE2 = (1<<2); -const D3DCLIPPLANE3 = (1<<3); -const D3DCLIPPLANE4 = (1<<4); -const D3DCLIPPLANE5 = (1<<5); - -// The following bits are used in the ClipUnion and ClipIntersection -// members of the D3DCLIPSTATUS9 -// - -const D3DCS_LEFT = 0x00000001L; -const D3DCS_RIGHT = 0x00000002L; -const D3DCS_TOP = 0x00000004L; -const D3DCS_BOTTOM = 0x00000008L; -const D3DCS_FRONT = 0x00000010L; -const D3DCS_BACK = 0x00000020L; -const D3DCS_PLANE0 = 0x00000040L; -const D3DCS_PLANE1 = 0x00000080L; -const D3DCS_PLANE2 = 0x00000100L; -const D3DCS_PLANE3 = 0x00000200L; -const D3DCS_PLANE4 = 0x00000400L; -const D3DCS_PLANE5 = 0x00000800L; - -const D3DCS_ALL = D3DCS_LEFT | - D3DCS_RIGHT | - D3DCS_TOP | - D3DCS_BOTTOM | - D3DCS_FRONT | - D3DCS_BACK | - D3DCS_PLANE0 | - D3DCS_PLANE1 | - D3DCS_PLANE2 | - D3DCS_PLANE3 | - D3DCS_PLANE4 | - D3DCS_PLANE5; - -struct D3DCLIPSTATUS9 { - uint ClipUnion; - uint ClipIntersection; -} - -struct D3DMATERIAL9 { - D3DCOLORVALUE Diffuse; /* Diffuse color RGBA */ - D3DCOLORVALUE Ambient; /* Ambient color RGB */ - D3DCOLORVALUE Specular; /* Specular 'shininess' */ - D3DCOLORVALUE Emissive; /* Emissive color RGB */ - float Power; /* Sharpness if specular highlight */ -} - -enum : uint { - D3DLIGHT_POINT = 1, - D3DLIGHT_SPOT = 2, - D3DLIGHT_DIRECTIONAL = 3 -} -alias TypeDef!(uint) D3DLIGHTTYPE; - -struct D3DLIGHT9 { - D3DLIGHTTYPE Type; /* Type of light source */ - D3DCOLORVALUE Diffuse; /* Diffuse color of light */ - D3DCOLORVALUE Specular; /* Specular color of light */ - D3DCOLORVALUE Ambient; /* Ambient color of light */ - D3DVECTOR Position; /* Position in world space */ - D3DVECTOR Direction; /* Direction in world space */ - float Range; /* Cutoff range */ - float Falloff; /* Falloff */ - float Attenuation0; /* Constant attenuation */ - float Attenuation1; /* Linear attenuation */ - float Attenuation2; /* Quadratic attenuation */ - float Theta; /* Inner angle of spotlight cone */ - float Phi; /* Outer angle of spotlight cone */ -} - -/* - * Options for clearing - */ -const D3DCLEAR_TARGET = 0x00000001L; /* Clear target surface */ -const D3DCLEAR_ZBUFFER = 0x00000002L; /* Clear target z buffer */ -const D3DCLEAR_STENCIL = 0x00000004L; /* Clear stencil planes */ - -/* - * The following defines the rendering states - */ - -enum : D3DSHADEMODE { - D3DSHADE_FLAT = 1, - D3DSHADE_GOURAUD = 2, - D3DSHADE_PHONG = 3 -} -alias TypeDef!(uint) D3DSHADEMODE; - -enum : D3DFILLMODE { - D3DFILL_POINT = 1, - D3DFILL_WIREFRAME = 2, - D3DFILL_SOLID = 3 -} -alias TypeDef!(uint) D3DFILLMODE; - -enum : D3DBLEND { - D3DBLEND_ZERO = 1, - D3DBLEND_ONE = 2, - D3DBLEND_SRCCOLOR = 3, - D3DBLEND_INVSRCCOLOR = 4, - D3DBLEND_SRCALPHA = 5, - D3DBLEND_INVSRCALPHA = 6, - D3DBLEND_DESTALPHA = 7, - D3DBLEND_INVDESTALPHA = 8, - D3DBLEND_DESTCOLOR = 9, - D3DBLEND_INVDESTCOLOR = 10, - D3DBLEND_SRCALPHASAT = 11, - D3DBLEND_BOTHSRCALPHA = 12, - D3DBLEND_BOTHINVSRCALPHA = 13, - D3DBLEND_BLENDFACTOR = 14, /* Only supported if D3DPBLENDCAPS_BLENDFACTOR is on */ - D3DBLEND_INVBLENDFACTOR = 15, /* Only supported if D3DPBLENDCAPS_BLENDFACTOR is on */ - D3DBLEND_SRCCOLOR2 = 16, - D3DBLEND_INVSRCCOLOR2 = 17 -} -alias TypeDef!(uint) D3DBLEND; - -enum : D3DBLENDOP { - D3DBLENDOP_ADD = 1, - D3DBLENDOP_SUBTRACT = 2, - D3DBLENDOP_REVSUBTRACT = 3, - D3DBLENDOP_MIN = 4, - D3DBLENDOP_MAX = 5 -} -alias TypeDef!(uint) D3DBLENDOP; - -enum : D3DTEXTUREADDRESS { - D3DTADDRESS_WRAP = 1, - D3DTADDRESS_MIRROR = 2, - D3DTADDRESS_CLAMP = 3, - D3DTADDRESS_BORDER = 4, - D3DTADDRESS_MIRRORONCE = 5 -} -alias TypeDef!(uint) D3DTEXTUREADDRESS; - -enum : D3DCULL { - D3DCULL_NONE = 1, - D3DCULL_CW = 2, - D3DCULL_CCW = 3 -} -alias TypeDef!(uint) D3DCULL; - -enum : D3DCMPFUNC { - D3DCMP_NEVER = 1, - D3DCMP_LESS = 2, - D3DCMP_EQUAL = 3, - D3DCMP_LESSEQUAL = 4, - D3DCMP_GREATER = 5, - D3DCMP_NOTEQUAL = 6, - D3DCMP_GREATEREQUAL = 7, - D3DCMP_ALWAYS = 8 -} -alias TypeDef!(uint) D3DCMPFUNC; - -enum : D3DSTENCILOP { - D3DSTENCILOP_KEEP = 1, - D3DSTENCILOP_ZERO = 2, - D3DSTENCILOP_REPLACE = 3, - D3DSTENCILOP_INCRSAT = 4, - D3DSTENCILOP_DECRSAT = 5, - D3DSTENCILOP_INVERT = 6, - D3DSTENCILOP_INCR = 7, - D3DSTENCILOP_DECR = 8 -} -alias TypeDef!(uint) D3DSTENCILOP; - -enum : D3DFOGMODE { - D3DFOG_NONE = 0, - D3DFOG_EXP = 1, - D3DFOG_EXP2 = 2, - D3DFOG_LINEAR = 3 -} -alias TypeDef!(uint) D3DFOGMODE; - -enum : D3DZBUFFERTYPE { - D3DZB_FALSE = 0, - D3DZB_TRUE = 1, // Z buffering - D3DZB_USEW = 2 // W buffering -} -alias TypeDef!(uint) D3DZBUFFERTYPE; - -// Primitives supported by draw-primitive API -enum : D3DPRIMITIVETYPE { - D3DPT_POINTLIST = 1, - D3DPT_LINELIST = 2, - D3DPT_LINESTRIP = 3, - D3DPT_TRIANGLELIST = 4, - D3DPT_TRIANGLESTRIP = 5, - D3DPT_TRIANGLEFAN = 6 -} -alias TypeDef!(uint) D3DPRIMITIVETYPE; - -D3DTRANSFORMSTATETYPE D3DTS_WORLDMATRIX(uint index) { return cast(D3DTRANSFORMSTATETYPE)(index + 256); } -template T_D3DTS_WORLDMATRIX(uint index) { - const D3DTRANSFORMSTATETYPE T_D3DTS_WORLDMATRIX = index + 256; -} - -enum : D3DTRANSFORMSTATETYPE { - D3DTS_VIEW = 2, - D3DTS_PROJECTION = 3, - D3DTS_TEXTURE0 = 16, - D3DTS_TEXTURE1 = 17, - D3DTS_TEXTURE2 = 18, - D3DTS_TEXTURE3 = 19, - D3DTS_TEXTURE4 = 20, - D3DTS_TEXTURE5 = 21, - D3DTS_TEXTURE6 = 22, - D3DTS_TEXTURE7 = 23, - D3DTS_WORLD = T_D3DTS_WORLDMATRIX!(0), - D3DTS_WORLD1 = T_D3DTS_WORLDMATRIX!(1), - D3DTS_WORLD2 = T_D3DTS_WORLDMATRIX!(2), - D3DTS_WORLD3 = T_D3DTS_WORLDMATRIX!(3) -} -alias TypeDef!(uint) D3DTRANSFORMSTATETYPE; - -enum : D3DRENDERSTATETYPE { - D3DRS_ZENABLE = 7, /* D3DZBUFFERTYPE (or TRUE/FALSE for legacy) */ - D3DRS_FILLMODE = 8, /* D3DFILLMODE */ - D3DRS_SHADEMODE = 9, /* D3DSHADEMODE */ - D3DRS_ZWRITEENABLE = 14, /* TRUE to enable z writes */ - D3DRS_ALPHATESTENABLE = 15, /* TRUE to enable alpha tests */ - D3DRS_LASTPIXEL = 16, /* TRUE for last-pixel on lines */ - D3DRS_SRCBLEND = 19, /* D3DBLEND */ - D3DRS_DESTBLEND = 20, /* D3DBLEND */ - D3DRS_CULLMODE = 22, /* D3DCULL */ - D3DRS_ZFUNC = 23, /* D3DCMPFUNC */ - D3DRS_ALPHAREF = 24, /* D3DFIXED */ - D3DRS_ALPHAFUNC = 25, /* D3DCMPFUNC */ - D3DRS_DITHERENABLE = 26, /* TRUE to enable dithering */ - D3DRS_ALPHABLENDENABLE = 27, /* TRUE to enable alpha blending */ - D3DRS_FOGENABLE = 28, /* TRUE to enable fog blending */ - D3DRS_SPECULARENABLE = 29, /* TRUE to enable specular */ - D3DRS_FOGCOLOR = 34, /* D3DCOLOR */ - D3DRS_FOGTABLEMODE = 35, /* D3DFOGMODE */ - D3DRS_FOGSTART = 36, /* Fog start (for both vertex and pixel fog) */ - D3DRS_FOGEND = 37, /* Fog end */ - D3DRS_FOGDENSITY = 38, /* Fog density */ - D3DRS_RANGEFOGENABLE = 48, /* Enables range-based fog */ - D3DRS_STENCILENABLE = 52, /* BOOL enable/disable stenciling */ - D3DRS_STENCILFAIL = 53, /* D3DSTENCILOP to do if stencil test fails */ - D3DRS_STENCILZFAIL = 54, /* D3DSTENCILOP to do if stencil test passes and Z test fails */ - D3DRS_STENCILPASS = 55, /* D3DSTENCILOP to do if both stencil and Z tests pass */ - D3DRS_STENCILFUNC = 56, /* D3DCMPFUNC fn. Stencil Test passes if ((ref & mask) stencilfn (stencil & mask)) is true */ - D3DRS_STENCILREF = 57, /* Reference value used in stencil test */ - D3DRS_STENCILMASK = 58, /* Mask value used in stencil test */ - D3DRS_STENCILWRITEMASK = 59, /* Write mask applied to values written to stencil buffer */ - D3DRS_TEXTUREFACTOR = 60, /* D3DCOLOR used for multi-texture blend */ - D3DRS_WRAP0 = 128, /* wrap for 1st texture coord. set */ - D3DRS_WRAP1 = 129, /* wrap for 2nd texture coord. set */ - D3DRS_WRAP2 = 130, /* wrap for 3rd texture coord. set */ - D3DRS_WRAP3 = 131, /* wrap for 4th texture coord. set */ - D3DRS_WRAP4 = 132, /* wrap for 5th texture coord. set */ - D3DRS_WRAP5 = 133, /* wrap for 6th texture coord. set */ - D3DRS_WRAP6 = 134, /* wrap for 7th texture coord. set */ - D3DRS_WRAP7 = 135, /* wrap for 8th texture coord. set */ - D3DRS_CLIPPING = 136, - D3DRS_LIGHTING = 137, - D3DRS_AMBIENT = 139, - D3DRS_FOGVERTEXMODE = 140, - D3DRS_COLORVERTEX = 141, - D3DRS_LOCALVIEWER = 142, - D3DRS_NORMALIZENORMALS = 143, - D3DRS_DIFFUSEMATERIALSOURCE = 145, - D3DRS_SPECULARMATERIALSOURCE = 146, - D3DRS_AMBIENTMATERIALSOURCE = 147, - D3DRS_EMISSIVEMATERIALSOURCE = 148, - D3DRS_VERTEXBLEND = 151, - D3DRS_CLIPPLANEENABLE = 152, - D3DRS_POINTSIZE = 154, /* float point size */ - D3DRS_POINTSIZE_MIN = 155, /* float point size min threshold */ - D3DRS_POINTSPRITEENABLE = 156, /* BOOL point texture coord control */ - D3DRS_POINTSCALEENABLE = 157, /* BOOL point size scale enable */ - D3DRS_POINTSCALE_A = 158, /* float point attenuation A value */ - D3DRS_POINTSCALE_B = 159, /* float point attenuation B value */ - D3DRS_POINTSCALE_C = 160, /* float point attenuation C value */ - D3DRS_MULTISAMPLEANTIALIAS = 161, // BOOL - set to do FSAA with multisample buffer - D3DRS_MULTISAMPLEMASK = 162, // DWORD - per-sample enable/disable - D3DRS_PATCHEDGESTYLE = 163, // Sets whether patch edges will use float style tessellation - D3DRS_DEBUGMONITORTOKEN = 165, // DEBUG ONLY - token to debug monitor - D3DRS_POINTSIZE_MAX = 166, /* float point size max threshold */ - D3DRS_INDEXEDVERTEXBLENDENABLE = 167, - D3DRS_COLORWRITEENABLE = 168, // per-channel write enable - D3DRS_TWEENFACTOR = 170, // float tween factor - D3DRS_BLENDOP = 171, // D3DBLENDOP setting - D3DRS_POSITIONDEGREE = 172, // NPatch position interpolation degree. D3DDEGREE_LINEAR or D3DDEGREE_CUBIC (default) - D3DRS_NORMALDEGREE = 173, // NPatch normal interpolation degree. D3DDEGREE_LINEAR (default) or D3DDEGREE_QUADRATIC - D3DRS_SCISSORTESTENABLE = 174, - D3DRS_SLOPESCALEDEPTHBIAS = 175, - D3DRS_ANTIALIASEDLINEENABLE = 176, - D3DRS_MINTESSELLATIONLEVEL = 178, - D3DRS_MAXTESSELLATIONLEVEL = 179, - D3DRS_ADAPTIVETESS_X = 180, - D3DRS_ADAPTIVETESS_Y = 181, - D3DRS_ADAPTIVETESS_Z = 182, - D3DRS_ADAPTIVETESS_W = 183, - D3DRS_ENABLEADAPTIVETESSELLATION = 184, - D3DRS_TWOSIDEDSTENCILMODE = 185, /* BOOL enable/disable 2 sided stenciling */ - D3DRS_CCW_STENCILFAIL = 186, /* D3DSTENCILOP to do if ccw stencil test fails */ - D3DRS_CCW_STENCILZFAIL = 187, /* D3DSTENCILOP to do if ccw stencil test passes and Z test fails */ - D3DRS_CCW_STENCILPASS = 188, /* D3DSTENCILOP to do if both ccw stencil and Z tests pass */ - D3DRS_CCW_STENCILFUNC = 189, /* D3DCMPFUNC fn. ccw Stencil Test passes if ((ref & mask) stencilfn (stencil & mask)) is true */ - D3DRS_COLORWRITEENABLE1 = 190, /* Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS */ - D3DRS_COLORWRITEENABLE2 = 191, /* Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS */ - D3DRS_COLORWRITEENABLE3 = 192, /* Additional ColorWriteEnables for the devices that support D3DPMISCCAPS_INDEPENDENTWRITEMASKS */ - D3DRS_BLENDFACTOR = 193, /* D3DCOLOR used for a constant blend factor during alpha blending for devices that support D3DPBLENDCAPS_BLENDFACTOR */ - D3DRS_SRGBWRITEENABLE = 194, /* Enable rendertarget writes to be DE-linearized to SRGB (for formats that expose D3DUSAGE_QUERY_SRGBWRITE) */ - D3DRS_DEPTHBIAS = 195, - D3DRS_WRAP8 = 198, /* Additional wrap states for vs_3_0+ attributes with D3DDECLUSAGE_TEXCOORD */ - D3DRS_WRAP9 = 199, - D3DRS_WRAP10 = 200, - D3DRS_WRAP11 = 201, - D3DRS_WRAP12 = 202, - D3DRS_WRAP13 = 203, - D3DRS_WRAP14 = 204, - D3DRS_WRAP15 = 205, - D3DRS_SEPARATEALPHABLENDENABLE = 206, /* TRUE to enable a separate blending function for the alpha channel */ - D3DRS_SRCBLENDALPHA = 207, /* SRC blend factor for the alpha channel when D3DRS_SEPARATEDESTALPHAENABLE is TRUE */ - D3DRS_DESTBLENDALPHA = 208, /* DST blend factor for the alpha channel when D3DRS_SEPARATEDESTALPHAENABLE is TRUE */ - D3DRS_BLENDOPALPHA = 209 /* Blending operation for the alpha channel when D3DRS_SEPARATEDESTALPHAENABLE is TRUE */ -} -alias TypeDef!(uint) D3DRENDERSTATETYPE; - -// Maximum number of simultaneous render targets D3D supports -const D3D_MAX_SIMULTANEOUS_RENDERTARGETS = 4; - -// Values for material source -enum : D3DMATERIALCOLORSOURCE { - D3DMCS_MATERIAL = 0, // Color from material is used - D3DMCS_COLOR1 = 1, // Diffuse vertex color is used - D3DMCS_COLOR2 = 2 // Specular vertex color is used -} -alias TypeDef!(uint) D3DMATERIALCOLORSOURCE; - -// Bias to apply to the texture coordinate set to apply a wrap to. -const D3DRENDERSTATE_WRAPBIAS = 128UL; - -/* Flags to construct the WRAP render states */ -const D3DWRAP_U = 0x00000001L; -const D3DWRAP_V = 0x00000002L; -const D3DWRAP_W = 0x00000004L; - -/* Flags to construct the WRAP render states for 1D thru 4D texture coordinates */ -const D3DWRAPCOORD_0 = 0x00000001L; // same as D3DWRAP_U -const D3DWRAPCOORD_1 = 0x00000002L; // same as D3DWRAP_V -const D3DWRAPCOORD_2 = 0x00000004L; // same as D3DWRAP_W -const D3DWRAPCOORD_3 = 0x00000008L; - -/* Flags to construct D3DRS_COLORWRITEENABLE */ -const D3DCOLORWRITEENABLE_RED = (1L<<0); -const D3DCOLORWRITEENABLE_GREEN = (1L<<1); -const D3DCOLORWRITEENABLE_BLUE = (1L<<2); -const D3DCOLORWRITEENABLE_ALPHA = (1L<<3); - -/* - * State enumerants for per-stage processing of fixed function pixel processing - * Two of these affect fixed function vertex processing as well: TEXTURETRANSFORMFLAGS and TEXCOORDINDEX. - */ -enum : D3DTEXTURESTAGESTATETYPE { - D3DTSS_COLOROP = 1, /* D3DTEXTUREOP - per-stage blending controls for color channels */ - D3DTSS_COLORARG1 = 2, /* D3DTA_* (texture arg) */ - D3DTSS_COLORARG2 = 3, /* D3DTA_* (texture arg) */ - D3DTSS_ALPHAOP = 4, /* D3DTEXTUREOP - per-stage blending controls for alpha channel */ - D3DTSS_ALPHAARG1 = 5, /* D3DTA_* (texture arg) */ - D3DTSS_ALPHAARG2 = 6, /* D3DTA_* (texture arg) */ - D3DTSS_BUMPENVMAT00 = 7, /* float (bump mapping matrix) */ - D3DTSS_BUMPENVMAT01 = 8, /* float (bump mapping matrix) */ - D3DTSS_BUMPENVMAT10 = 9, /* float (bump mapping matrix) */ - D3DTSS_BUMPENVMAT11 = 10, /* float (bump mapping matrix) */ - D3DTSS_TEXCOORDINDEX = 11, /* identifies which set of texture coordinates index this texture */ - D3DTSS_BUMPENVLSCALE = 22, /* float scale for bump map luminance */ - D3DTSS_BUMPENVLOFFSET = 23, /* float offset for bump map luminance */ - D3DTSS_TEXTURETRANSFORMFLAGS = 24, /* D3DTEXTURETRANSFORMFLAGS controls texture transform */ - D3DTSS_COLORARG0 = 26, /* D3DTA_* third arg for triadic ops */ - D3DTSS_ALPHAARG0 = 27, /* D3DTA_* third arg for triadic ops */ - D3DTSS_RESULTARG = 28, /* D3DTA_* arg for result (CURRENT or TEMP) */ - D3DTSS_CONSTANT = 32 /* Per-stage constant D3DTA_CONSTANT */ -} -alias TypeDef!(uint) D3DTEXTURESTAGESTATETYPE; - -/* - * State enumerants for per-sampler texture processing. - */ -enum : D3DSAMPLERSTATETYPE { - D3DSAMP_ADDRESSU = 1, /* D3DTEXTUREADDRESS for U coordinate */ - D3DSAMP_ADDRESSV = 2, /* D3DTEXTUREADDRESS for V coordinate */ - D3DSAMP_ADDRESSW = 3, /* D3DTEXTUREADDRESS for W coordinate */ - D3DSAMP_BORDERCOLOR = 4, /* D3DCOLOR */ - D3DSAMP_MAGFILTER = 5, /* D3DTEXTUREFILTER filter to use for magnification */ - D3DSAMP_MINFILTER = 6, /* D3DTEXTUREFILTER filter to use for minification */ - D3DSAMP_MIPFILTER = 7, /* D3DTEXTUREFILTER filter to use between mipmaps during minification */ - D3DSAMP_MIPMAPLODBIAS = 8, /* float Mipmap LOD bias */ - D3DSAMP_MAXMIPLEVEL = 9, /* DWORD 0..(n-1) LOD index of largest map to use (0 == largest) */ - D3DSAMP_MAXANISOTROPY = 10, /* DWORD maximum anisotropy */ - D3DSAMP_SRGBTEXTURE = 11, /* Default = 0 (which means Gamma 1.0, - no correction required.) else correct for - Gamma = 2.2 */ - D3DSAMP_ELEMENTINDEX = 12, /* When multi-element texture is assigned to sampler, this - indicates which element index to use. Default = 0. */ - D3DSAMP_DMAPOFFSET = 13 /* Offset in vertices in the pre-sampled displacement map. - Only valid for D3DDMAPSAMPLER sampler */ -} -alias TypeDef!(uint) D3DSAMPLERSTATETYPE; - -/* Special sampler which is used in the tesselator */ -const D3DDMAPSAMPLER = 256; - -// Samplers used in vertex shaders -const D3DVERTEXTEXTURESAMPLER0 = (D3DDMAPSAMPLER+1); -const D3DVERTEXTEXTURESAMPLER1 = (D3DDMAPSAMPLER+2); -const D3DVERTEXTEXTURESAMPLER2 = (D3DDMAPSAMPLER+3); -const D3DVERTEXTEXTURESAMPLER3 = (D3DDMAPSAMPLER+4); - -// Values, used with D3DTSS_TEXCOORDINDEX, to specify that the vertex data(position -// and normal in the camera space) should be taken as texture coordinates -// Low 16 bits are used to specify texture coordinate index, to take the WRAP mode from -// -const D3DTSS_TCI_PASSTHRU = 0x00000000; -const D3DTSS_TCI_CAMERASPACENORMAL = 0x00010000; -const D3DTSS_TCI_CAMERASPACEPOSITION = 0x00020000; -const D3DTSS_TCI_CAMERASPACEREFLECTIONVECTOR = 0x00030000; -const D3DTSS_TCI_SPHEREMAP = 0x00040000; - -/* - * Enumerations for COLOROP and ALPHAOP texture blending operations set in - * texture processing stage controls in D3DTSS. - */ -enum : D3DTEXTUREOP { - // Control - D3DTOP_DISABLE = 1, // disables stage - D3DTOP_SELECTARG1 = 2, // the default - D3DTOP_SELECTARG2 = 3, - - // Modulate - D3DTOP_MODULATE = 4, // multiply args together - D3DTOP_MODULATE2X = 5, // multiply and 1 bit - D3DTOP_MODULATE4X = 6, // multiply and 2 bits - - // Add - D3DTOP_ADD = 7, // add arguments together - D3DTOP_ADDSIGNED = 8, // add with -0.5 bias - D3DTOP_ADDSIGNED2X = 9, // as above but left 1 bit - D3DTOP_SUBTRACT = 10, // Arg1 - Arg2, with no saturation - D3DTOP_ADDSMOOTH = 11, // add 2 args, subtract product - // Arg1 + Arg2 - Arg1*Arg2 - // = Arg1 + (1-Arg1)*Arg2 - - // Linear alpha blend: Arg1*(Alpha) + Arg2*(1-Alpha) - D3DTOP_BLENDDIFFUSEALPHA = 12, // iterated alpha - D3DTOP_BLENDTEXTUREALPHA = 13, // texture alpha - D3DTOP_BLENDFACTORALPHA = 14, // alpha from D3DRS_TEXTUREFACTOR - - // Linear alpha blend with pre-multiplied arg1 input: Arg1 + Arg2*(1-Alpha) - D3DTOP_BLENDTEXTUREALPHAPM = 15, // texture alpha - D3DTOP_BLENDCURRENTALPHA = 16, // by alpha of current color - - // Specular mapping - D3DTOP_PREMODULATE = 17, // modulate with next texture before use - D3DTOP_MODULATEALPHA_ADDCOLOR = 18, // Arg1.RGB + Arg1.A*Arg2.RGB - // COLOROP only - D3DTOP_MODULATECOLOR_ADDALPHA = 19, // Arg1.RGB*Arg2.RGB + Arg1.A - // COLOROP only - D3DTOP_MODULATEINVALPHA_ADDCOLOR = 20, // (1-Arg1.A)*Arg2.RGB + Arg1.RGB - // COLOROP only - D3DTOP_MODULATEINVCOLOR_ADDALPHA = 21, // (1-Arg1.RGB)*Arg2.RGB + Arg1.A - // COLOROP only - - // Bump mapping - D3DTOP_BUMPENVMAP = 22, // per pixel env map perturbation - D3DTOP_BUMPENVMAPLUMINANCE = 23, // with luminance channel - - // This can do either diffuse or specular bump mapping with correct input. - // Performs the function (Arg1.R*Arg2.R + Arg1.G*Arg2.G + Arg1.B*Arg2.B) - // where each component has been scaled and offset to make it signed. - // The result is replicated into all four (including alpha) channels. - // This is a valid COLOROP only. - D3DTOP_DOTPRODUCT3 = 24, - - // Triadic ops - D3DTOP_MULTIPLYADD = 25, // Arg0 + Arg1*Arg2 - D3DTOP_LERP = 26 // (Arg0)*Arg1 + (1-Arg0)*Arg2 -} -alias TypeDef!(uint) D3DTEXTUREOP; - -/* - * Values for COLORARG0,1,2, ALPHAARG0,1,2, and RESULTARG texture blending - * operations set in texture processing stage controls in D3DRENDERSTATE. - */ -const D3DTA_SELECTMASK = 0x0000000f; // mask for arg selector -const D3DTA_DIFFUSE = 0x00000000; // select diffuse color (read only) -const D3DTA_CURRENT = 0x00000001; // select stage destination register (read/write) -const D3DTA_TEXTURE = 0x00000002; // select texture color (read only) -const D3DTA_TFACTOR = 0x00000003; // select D3DRS_TEXTUREFACTOR (read only) -const D3DTA_SPECULAR = 0x00000004; // select specular color (read only) -const D3DTA_TEMP = 0x00000005; // select temporary register color (read/write) -const D3DTA_CONSTANT = 0x00000006; // select texture stage constant -const D3DTA_COMPLEMENT = 0x00000010; // take 1.0 - x (read modifier) -const D3DTA_ALPHAREPLICATE = 0x00000020; // replicate alpha to color components (read modifier) - -// -// Values for D3DSAMP_***FILTER texture stage states -// -enum : D3DTEXTUREFILTERTYPE { - D3DTEXF_NONE = 0, // filtering disabled (valid for mip filter only) - D3DTEXF_POINT = 1, // nearest - D3DTEXF_LINEAR = 2, // linear interpolation - D3DTEXF_ANISOTROPIC = 3, // anisotropic - D3DTEXF_PYRAMIDALQUAD = 6, // 4-sample tent - D3DTEXF_GAUSSIANQUAD = 7, // 4-sample gaussian - D3DTEXF_CONVOLUTIONMONO = 8 // Convolution filter for monochrome textures -} -alias TypeDef!(uint) D3DTEXTUREFILTERTYPE; - -/* Bits for Flags in ProcessVertices call */ - -const D3DPV_DONOTCOPYDATA = (1 << 0); - -//------------------------------------------------------------------- - -// Flexible vertex format bits -// -const D3DFVF_RESERVED0 = 0x001; -const D3DFVF_POSITION_MASK = 0x400E; -const D3DFVF_XYZ = 0x002; -const D3DFVF_XYZRHW = 0x004; -const D3DFVF_XYZB1 = 0x006; -const D3DFVF_XYZB2 = 0x008; -const D3DFVF_XYZB3 = 0x00a; -const D3DFVF_XYZB4 = 0x00c; -const D3DFVF_XYZB5 = 0x00e; -const D3DFVF_XYZW = 0x4002; - -const D3DFVF_NORMAL = 0x010; -const D3DFVF_PSIZE = 0x020; -const D3DFVF_DIFFUSE = 0x040; -const D3DFVF_SPECULAR = 0x080; - -const D3DFVF_TEXCOUNT_MASK = 0xf00; -const D3DFVF_TEXCOUNT_SHIFT = 8; -const D3DFVF_TEX0 = 0x000; -const D3DFVF_TEX1 = 0x100; -const D3DFVF_TEX2 = 0x200; -const D3DFVF_TEX3 = 0x300; -const D3DFVF_TEX4 = 0x400; -const D3DFVF_TEX5 = 0x500; -const D3DFVF_TEX6 = 0x600; -const D3DFVF_TEX7 = 0x700; -const D3DFVF_TEX8 = 0x800; - -const D3DFVF_LASTBETA_UBYTE4 = 0x1000; -const D3DFVF_LASTBETA_D3DCOLOR = 0x8000; - -const D3DFVF_RESERVED2 = 0x6000; // 2 reserved bits - -//--------------------------------------------------------------------- -// Vertex Shaders -// - -// Vertex shader declaration - -// Vertex element semantics -// -enum : D3DDECLUSAGE { - D3DDECLUSAGE_POSITION = 0, - D3DDECLUSAGE_BLENDWEIGHT, // 1 - D3DDECLUSAGE_BLENDINDICES, // 2 - D3DDECLUSAGE_NORMAL, // 3 - D3DDECLUSAGE_PSIZE, // 4 - D3DDECLUSAGE_TEXCOORD, // 5 - D3DDECLUSAGE_TANGENT, // 6 - D3DDECLUSAGE_BINORMAL, // 7 - D3DDECLUSAGE_TESSFACTOR, // 8 - D3DDECLUSAGE_POSITIONT, // 9 - D3DDECLUSAGE_COLOR, // 10 - D3DDECLUSAGE_FOG, // 11 - D3DDECLUSAGE_DEPTH, // 12 - D3DDECLUSAGE_SAMPLE // 13 -} -alias TypeDef!(uint) D3DDECLUSAGE; - -const MAXD3DDECLUSAGE = D3DDECLUSAGE_SAMPLE; -const MAXD3DDECLUSAGEINDEX = 15; -const MAXD3DDECLLENGTH = 64; // does not include "end" marker vertex element - -enum : D3DDECLMETHOD { - D3DDECLMETHOD_DEFAULT = 0, - D3DDECLMETHOD_PARTIALU, - D3DDECLMETHOD_PARTIALV, - D3DDECLMETHOD_CROSSUV, // Normal - D3DDECLMETHOD_UV, - D3DDECLMETHOD_LOOKUP, // Lookup a displacement map - D3DDECLMETHOD_LOOKUPPRESAMPLED // Lookup a pre-sampled displacement map -} -alias TypeDef!(uint) D3DDECLMETHOD; - -const MAXD3DDECLMETHOD = D3DDECLMETHOD_LOOKUPPRESAMPLED; - -// Declarations for _Type fields -// -enum : D3DDECLTYPE { - D3DDECLTYPE_FLOAT1 = 0, // 1D float expanded to (value, 0., 0., 1.) - D3DDECLTYPE_FLOAT2 = 1, // 2D float expanded to (value, value, 0., 1.) - D3DDECLTYPE_FLOAT3 = 2, // 3D float expanded to (value, value, value, 1.) - D3DDECLTYPE_FLOAT4 = 3, // 4D float - D3DDECLTYPE_D3DCOLOR = 4, // 4D packed unsigned bytes mapped to 0. to 1. range - // Input is in D3DCOLOR format (ARGB) expanded to (R, G, B, A) - D3DDECLTYPE_UBYTE4 = 5, // 4D unsigned byte - D3DDECLTYPE_SHORT2 = 6, // 2D signed short expanded to (value, value, 0., 1.) - D3DDECLTYPE_SHORT4 = 7, // 4D signed short - -// The following types are valid only with vertex shaders >= 2.0 - - - D3DDECLTYPE_UBYTE4N = 8, // Each of 4 bytes is normalized by dividing to 255.0 - D3DDECLTYPE_SHORT2N = 9, // 2D signed short normalized (v[0]/32767.0,v[1]/32767.0,0,1) - D3DDECLTYPE_SHORT4N = 10, // 4D signed short normalized (v[0]/32767.0,v[1]/32767.0,v[2]/32767.0,v[3]/32767.0) - D3DDECLTYPE_USHORT2N = 11, // 2D unsigned short normalized (v[0]/65535.0,v[1]/65535.0,0,1) - D3DDECLTYPE_USHORT4N = 12, // 4D unsigned short normalized (v[0]/65535.0,v[1]/65535.0,v[2]/65535.0,v[3]/65535.0) - D3DDECLTYPE_UDEC3 = 13, // 3D unsigned 10 10 10 format expanded to (value, value, value, 1) - D3DDECLTYPE_DEC3N = 14, // 3D signed 10 10 10 format normalized and expanded to (v[0]/511.0, v[1]/511.0, v[2]/511.0, 1) - D3DDECLTYPE_FLOAT16_2 = 15, // Two 16-bit floating point values, expanded to (value, value, 0, 1) - D3DDECLTYPE_FLOAT16_4 = 16, // Four 16-bit floating point values - D3DDECLTYPE_UNUSED = 17 // When the type field in a decl is unused. -} -alias TypeDef!(uint) D3DDECLTYPE; - -const MAXD3DDECLTYPE = D3DDECLTYPE_UNUSED; - -struct D3DVERTEXELEMENT9 -{ - ushort Stream; // Stream index - ushort Offset; // Offset in the stream in bytes - ubyte Type; // Data type - ubyte Method; // Processing method - ubyte Usage; // Semantics - ubyte UsageIndex; // Semantic index -} -alias D3DVERTEXELEMENT9 *LPD3DVERTEXELEMENT9; - -// This is used to initialize the last vertex element in a vertex declaration -// array -// -template D3DDECL_END() { - static const D3DVERTEXELEMENT9 D3DDECL_END = { 0xFF,0,D3DDECLTYPE_UNUSED,0,0,0 }; -} - -// Maximum supported number of texture coordinate sets -const D3DDP_MAXTEXCOORD = 8; - -//--------------------------------------------------------------------- -// Values for IDirect3DDevice9::SetStreamSourceFreq's Setting parameter -//--------------------------------------------------------------------- -const D3DSTREAMSOURCE_INDEXEDDATA = (1<<30); -const D3DSTREAMSOURCE_INSTANCEDATA = (2<<30); - - - -//--------------------------------------------------------------------- -// -// The internal format of Pixel Shader (PS) & Vertex Shader (VS) -// Instruction Tokens is defined in the Direct3D Device Driver Kit -// -//--------------------------------------------------------------------- - -// -// Instruction Token Bit Definitions -// -const D3DSI_OPCODE_MASK = 0x0000FFFF; - -const D3DSI_INSTLENGTH_MASK = 0x0F000000; -const D3DSI_INSTLENGTH_SHIFT = 24; - -enum : D3DSHADER_INSTRUCTION_OPCODE_TYPE { - D3DSIO_NOP = 0, - D3DSIO_MOV , - D3DSIO_ADD , - D3DSIO_SUB , - D3DSIO_MAD , - D3DSIO_MUL , - D3DSIO_RCP , - D3DSIO_RSQ , - D3DSIO_DP3 , - D3DSIO_DP4 , - D3DSIO_MIN , - D3DSIO_MAX , - D3DSIO_SLT , - D3DSIO_SGE , - D3DSIO_EXP , - D3DSIO_LOG , - D3DSIO_LIT , - D3DSIO_DST , - D3DSIO_LRP , - D3DSIO_FRC , - D3DSIO_M4x4 , - D3DSIO_M4x3 , - D3DSIO_M3x4 , - D3DSIO_M3x3 , - D3DSIO_M3x2 , - D3DSIO_CALL , - D3DSIO_CALLNZ , - D3DSIO_LOOP , - D3DSIO_RET , - D3DSIO_ENDLOOP , - D3DSIO_LABEL , - D3DSIO_DCL , - D3DSIO_POW , - D3DSIO_CRS , - D3DSIO_SGN , - D3DSIO_ABS , - D3DSIO_NRM , - D3DSIO_SINCOS , - D3DSIO_REP , - D3DSIO_ENDREP , - D3DSIO_IF , - D3DSIO_IFC , - D3DSIO_ELSE , - D3DSIO_ENDIF , - D3DSIO_BREAK , - D3DSIO_BREAKC , - D3DSIO_MOVA , - D3DSIO_DEFB , - D3DSIO_DEFI , - - D3DSIO_TEXCOORD = 64, - D3DSIO_TEXKILL , - D3DSIO_TEX , - D3DSIO_TEXBEM , - D3DSIO_TEXBEML , - D3DSIO_TEXREG2AR , - D3DSIO_TEXREG2GB , - D3DSIO_TEXM3x2PAD , - D3DSIO_TEXM3x2TEX , - D3DSIO_TEXM3x3PAD , - D3DSIO_TEXM3x3TEX , - D3DSIO_RESERVED0 , - D3DSIO_TEXM3x3SPEC , - D3DSIO_TEXM3x3VSPEC , - D3DSIO_EXPP , - D3DSIO_LOGP , - D3DSIO_CND , - D3DSIO_DEF , - D3DSIO_TEXREG2RGB , - D3DSIO_TEXDP3TEX , - D3DSIO_TEXM3x2DEPTH , - D3DSIO_TEXDP3 , - D3DSIO_TEXM3x3 , - D3DSIO_TEXDEPTH , - D3DSIO_CMP , - D3DSIO_BEM , - D3DSIO_DP2ADD , - D3DSIO_DSX , - D3DSIO_DSY , - D3DSIO_TEXLDD , - D3DSIO_SETP , - D3DSIO_TEXLDL , - D3DSIO_BREAKP , - - D3DSIO_PHASE = 0xFFFD, - D3DSIO_COMMENT = 0xFFFE, - D3DSIO_END = 0xFFFF -} -alias TypeDef!(uint) D3DSHADER_INSTRUCTION_OPCODE_TYPE; - -//--------------------------------------------------------------------- -// Use these constants with D3DSIO_SINCOS macro as SRC2, SRC3 -// -const float[4] D3DSINCOSCONST1 = [-1.5500992e-006f, -2.1701389e-005f, 0.0026041667f, 0.00026041668f]; -const float[4] D3DSINCOSCONST2 = [-0.020833334f, -0.12500000f, 1.0f, 0.50000000f]; - -//--------------------------------------------------------------------- -// Co-Issue Instruction Modifier - if set then this instruction is to be -// issued in parallel with the previous instruction(s) for which this bit -// is not set. -// -const D3DSI_COISSUE = 0x40000000; - -//--------------------------------------------------------------------- -// Opcode specific controls - -const D3DSP_OPCODESPECIFICCONTROL_MASK = 0x00ff0000; -const D3DSP_OPCODESPECIFICCONTROL_SHIFT = 16; - -// ps_2_0 texld controls -const D3DSI_TEXLD_PROJECT = (0x01 << D3DSP_OPCODESPECIFICCONTROL_SHIFT); -const D3DSI_TEXLD_BIAS = (0x02 << D3DSP_OPCODESPECIFICCONTROL_SHIFT); - -// Comparison for dynamic conditional instruction opcodes (i.e. if, breakc) -enum : D3DSHADER_COMPARISON { - // < = > - D3DSPC_RESERVED0= 0, // 0 0 0 - D3DSPC_GT = 1, // 0 0 1 - D3DSPC_EQ = 2, // 0 1 0 - D3DSPC_GE = 3, // 0 1 1 - D3DSPC_LT = 4, // 1 0 0 - D3DSPC_NE = 5, // 1 0 1 - D3DSPC_LE = 6, // 1 1 0 - D3DSPC_RESERVED1= 7 // 1 1 1 -} -alias TypeDef!(uint) D3DSHADER_COMPARISON; - -// Comparison is part of instruction opcode token: -const D3DSHADER_COMPARISON_SHIFT = D3DSP_OPCODESPECIFICCONTROL_SHIFT; -const D3DSHADER_COMPARISON_MASK = (0x7<>8)&0xFF); } -ubyte D3DSHADER_VERSION_MINOR(uint _Version) { return cast(ubyte)((_Version>>0)&0xFF); } - -// destination/source parameter register type -const D3DSI_COMMENTSIZE_SHIFT = 16; -const D3DSI_COMMENTSIZE_MASK = 0x7FFF0000; -uint D3DSHADER_COMMENT(ushort _DWordSize) { return (((_DWordSize< pV2.x ? pV1.x : pV2.x; - pOut.y = pV1.y > pV2.y ? pV1.y : pV2.y; - return pOut; -} - -D3DXVECTOR2* D3DXVec2Scale(D3DXVECTOR2* pOut, D3DXVECTOR2* pV, float s) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV is null)) return null; - } - pOut.x = pV.x * s; - pOut.y = pV.y * s; - return pOut; -} - -D3DXVECTOR2* D3DXVec2Lerp(D3DXVECTOR2* pOut, D3DXVECTOR2* pV1, D3DXVECTOR2* pV2, float s) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x + s * (pV2.x - pV1.x); - pOut.y = pV1.y + s * (pV2.y - pV1.y); - return pOut; -} - -extern(Windows) { - D3DXVECTOR2* D3DXVec2Normalize(D3DXVECTOR2* pOut, D3DXVECTOR2* pV); - D3DXVECTOR2* D3DXVec2Hermite(D3DXVECTOR2* pOut, D3DXVECTOR2* pV1, D3DXVECTOR2* pT1, D3DXVECTOR2* pV2, D3DXVECTOR2* pT2, float s); - D3DXVECTOR2* D3DXVec2CatmullRom(D3DXVECTOR2* pOut, D3DXVECTOR2* pV0, D3DXVECTOR2* pV1, D3DXVECTOR2* pV2, D3DXVECTOR2* pV3, float s); - D3DXVECTOR2* D3DXVec2BaryCentric(D3DXVECTOR2* pOut, D3DXVECTOR2* pV1, D3DXVECTOR2* pV2, D3DXVECTOR2* pV3, float f, float g); - D3DXVECTOR4* D3DXVec2Transform(D3DXVECTOR4* pOut, D3DXVECTOR2* pV, D3DXMATRIX* pM); - D3DXVECTOR2* D3DXVec2TransformCoord(D3DXVECTOR2* pOut, D3DXVECTOR2* pV, D3DXMATRIX* pM); - D3DXVECTOR2* D3DXVec2TransformNormal(D3DXVECTOR2* pOut, D3DXVECTOR2* pV, D3DXMATRIX* pM); - D3DXVECTOR4* D3DXVec2TransformArray(D3DXVECTOR4* pOut, UINT OutStride, D3DXVECTOR2* pV, UINT VStride, D3DXMATRIX* pM, UINT n); - D3DXVECTOR2* D3DXVec2TransformCoordArray(D3DXVECTOR2* pOut, UINT OutStride, D3DXVECTOR2* pV, UINT VStride, D3DXMATRIX* pM, UINT n); - D3DXVECTOR2* D3DXVec2TransformNormalArray(D3DXVECTOR2* pOut, UINT OutStride, D3DXVECTOR2* pV, UINT VStride, D3DXMATRIX* pM, UINT n); -} - -float D3DXVec3Length(D3DXVECTOR3* pV) { - debug(D3DX10_DEBUG) { - if (pV is null) return 0.0; - } - return sqrtf((pV.x * pV.x) + (pV.y * pV.y) + (pV.z * pV.z)); -} - -float D3DXVec3LengthSq(D3DXVECTOR3* pV) { - debug(D3DX10_DEBUG) { - if (pV is null) return 0.0; - } - return (pV.x * pV.x) + (pV.y * pV.y) + (pV.z * pV.z); -} - -float D3DXVec3Dot(D3DXVECTOR3* pV1, D3DXVECTOR3* pV2) { - debug(D3DX10_DEBUG) { - if ((pV1 is null) || (pV2 is null)) return 0.0; - } - return (pV1.x * pV2.x) + (pV1.y * pV2.y) + (pV1.z * pV2.z); -} - -D3DXVECTOR3* D3DXVec3Cross(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return 0.0; - } - D3DXVECTOR3 v; - v.x = (pV1.y * pV2.z) - (pV1.z * pV2.y); - v.y = (pV1.z * pV2.x) - (pV1.x * pV2.z); - v.z = (pV1.x * pV2.y) - (pV1.y * pV2.x); - *pOut = v; - return pOut; -} - -D3DXVECTOR3* D3DXVec3Add(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x + pV2.x; - pOut.y = pV1.y + pV2.y; - pOut.z = pV1.z + pV2.z; - return pOut; -} - -D3DXVECTOR3* D3DXVec3Subtract(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x - pV2.x; - pOut.y = pV1.y - pV2.y; - pOut.z = pV1.z - pV2.z; - return pOut; -} - -D3DXVECTOR3* D3DXVec3Minimize(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x < pV2.x ? pV1.x : pV2.x; - pOut.y = pV1.y < pV2.y ? pV1.y : pV2.y; - pOut.z = pV1.z < pV2.z ? pV1.z : pV2.z; - return pOut; -} - -D3DXVECTOR3* D3DXVec3Maximize(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x > pV2.x ? pV1.x : pV2.x; - pOut.y = pV1.y > pV2.y ? pV1.y : pV2.y; - pOut.z = pV1.z > pV2.z ? pV1.z : pV2.z; - return pOut; -} - -D3DXVECTOR3* D3DXVec3Scale(D3DXVECTOR3* pOut, D3DXVECTOR3* pV, float s) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV is null)) return null; - } - pOut.x = pV.x * s; - pOut.y = pV.y * s; - pOut.z = pV.z * s; - return pOut; -} - -D3DXVECTOR3* D3DXVec3Lerp(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2, float s) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x + s * (pV2.x - pV1.x); - pOut.y = pV1.y + s * (pV2.y - pV1.y); - pOut.z = pV1.z + s * (pV2.z - pV1.z); - return pOut; -} - -extern(Windows) { - D3DXVECTOR3* D3DXVec3Normalize(D3DXVECTOR3* pOut, D3DXVECTOR3* pV); - D3DXVECTOR3* D3DXVec3Hermite(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pT1, D3DXVECTOR3* pV2, D3DXVECTOR3* pT2, FLOAT s); - D3DXVECTOR3* D3DXVec3CatmullRom(D3DXVECTOR3* pOut, D3DXVECTOR3* pV0, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2, D3DXVECTOR3* pV3, FLOAT s); - D3DXVECTOR3* D3DXVec3BaryCentric(D3DXVECTOR3* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2, D3DXVECTOR3* pV3, FLOAT f, FLOAT g); - D3DXVECTOR4* D3DXVec3Transform(D3DXVECTOR4* pOut, D3DXVECTOR3* pV, D3DXMATRIX* pM); - D3DXVECTOR3* D3DXVec3TransformCoord(D3DXVECTOR3* pOut, D3DXVECTOR3* pV, D3DXMATRIX* pM); - D3DXVECTOR3* D3DXVec3TransformNormal(D3DXVECTOR3* pOut, D3DXVECTOR3* pV, D3DXMATRIX* pM); - D3DXVECTOR4* D3DXVec3TransformArray(D3DXVECTOR4* pOut, UINT OutStride, D3DXVECTOR3* pV, UINT VStride, D3DXMATRIX* pM, UINT n); - D3DXVECTOR3* D3DXVec3TransformCoordArray(D3DXVECTOR3* pOut, UINT OutStride, D3DXVECTOR3* pV, UINT VStride, D3DXMATRIX* pM, UINT n); - D3DXVECTOR3* D3DXVec3TransformNormalArray(D3DXVECTOR3* pOut, UINT OutStride, D3DXVECTOR3* pV, UINT VStride, D3DXMATRIX* pM, UINT n); - D3DXVECTOR3* D3DXVec3Project(D3DXVECTOR3* pOut, D3DXVECTOR3* pV, D3D10_VIEWPORT* pViewport, D3DXMATRIX* pProjection, D3DXMATRIX* pView, D3DXMATRIX* pWorld); - D3DXVECTOR3* D3DXVec3Unproject(D3DXVECTOR3* pOut, D3DXVECTOR3* pV, D3D10_VIEWPORT* pViewport, D3DXMATRIX* pProjection, D3DXMATRIX* pView, D3DXMATRIX* pWorld); - D3DXVECTOR3* D3DXVec3ProjectArray(D3DXVECTOR3* pOut, UINT OutStride,D3DXVECTOR3* pV, UINT VStride,D3D10_VIEWPORT* pViewport, D3DXMATRIX* pProjection, D3DXMATRIX* pView, D3DXMATRIX* pWorld, UINT n); - D3DXVECTOR3* D3DXVec3UnprojectArray(D3DXVECTOR3* pOut, UINT OutStride, D3DXVECTOR3* pV, UINT VStride, D3D10_VIEWPORT* pViewport, D3DXMATRIX* pProjection, D3DXMATRIX* pView, D3DXMATRIX* pWorld, UINT n); -} - -float D3DXVec4Length(D3DXVECTOR4* pV) { - debug(D3DX10_DEBUG) { - if (pV is null) return 0.0; - } - return sqrtf((pV.x * pV.x) + (pV.y * pV.y) + (pV.z * pV.z) + (pV.w * pV.w)); -} - -float D3DXVec4LengthSq(D3DXVECTOR4* pV) { - debug(D3DX10_DEBUG) { - if (pV is null) return 0.0; - } - return (pV.x * pV.x) + (pV.y * pV.y) + (pV.z * pV.z) + (pV.w * pV.w); -} - -float D3DXVec4Dot(D3DXVECTOR4* pV1, D3DXVECTOR4* pV2) { - debug(D3DX10_DEBUG) { - if ((pV1 is null) || (pV2 is null)) return 0.0; - } - return (pV1.x * pV2.x) + (pV1.y * pV2.y) + (pV1.z * pV2.z) + (pV1.w * pV2.w); -} - -D3DXVECTOR4* D3DXVec4Add(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x + pV2.x; - pOut.y = pV1.y + pV2.y; - pOut.z = pV1.z + pV2.z; - pOut.w = pV1.w + pV2.w; - return pOut; -} - -D3DXVECTOR4* D3DXVec4Subtract(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x - pV2.x; - pOut.y = pV1.y - pV2.y; - pOut.z = pV1.z - pV2.z; - pOut.w = pV1.w - pV2.w; - return pOut; -} - -D3DXVECTOR4* D3DXVec4Minimize(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x < pV2.x ? pV1.x : pV2.x; - pOut.y = pV1.y < pV2.y ? pV1.y : pV2.y; - pOut.z = pV1.z < pV2.z ? pV1.z : pV2.z; - pOut.w = pV1.w < pV2.w ? pV1.w : pV2.w; - return pOut; -} - -D3DXVECTOR4* D3DXVec4Maximize(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x > pV2.x ? pV1.x : pV2.x; - pOut.y = pV1.y > pV2.y ? pV1.y : pV2.y; - pOut.z = pV1.z > pV2.z ? pV1.z : pV2.z; - pOut.w = pV1.w > pV2.w ? pV1.w : pV2.w; - return pOut; -} - -D3DXVECTOR4* D3DXVec4Scale(D3DXVECTOR4* pOut, D3DXVECTOR4* pV, float s) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV is null)) return null; - } - pOut.x = pV.x * s; - pOut.y = pV.y * s; - pOut.z = pV.z * s; - pOut.w = pV.w * s; - return pOut; -} - -D3DXVECTOR4* D3DXVec4Lerp(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2, float s) { - debug(D3DX10_DEBUG) { - if ((pOut is null) || (pV1 is null) || (pV2 is null)) return null; - } - pOut.x = pV1.x + s * (pV2.x - pV1.x); - pOut.y = pV1.y + s * (pV2.y - pV1.y); - pOut.z = pV1.z + s * (pV2.z - pV1.z); - pOut.w = pV1.w + s * (pV2.w - pV1.w); - return pOut; -} - -extern(Windows) { - D3DXVECTOR4* D3DXVec4Cross(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2, D3DXVECTOR4* pV3); - D3DXVECTOR4* D3DXVec4Normalize(D3DXVECTOR4* pOut, D3DXVECTOR4* pV); - D3DXVECTOR4* D3DXVec4Hermite(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pT1, D3DXVECTOR4* pV2, D3DXVECTOR4* pT2, FLOAT s); - D3DXVECTOR4* D3DXVec4CatmullRom(D3DXVECTOR4* pOut, D3DXVECTOR4* pV0, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2, D3DXVECTOR4* pV3, FLOAT s); - D3DXVECTOR4* D3DXVec4BaryCentric(D3DXVECTOR4* pOut, D3DXVECTOR4* pV1, D3DXVECTOR4* pV2, D3DXVECTOR4* pV3, FLOAT f, FLOAT g); - D3DXVECTOR4* D3DXVec4Transform(D3DXVECTOR4* pOut, D3DXVECTOR4* pV, D3DXMATRIX* pM); - D3DXVECTOR4* D3DXVec4TransformArray(D3DXVECTOR4* pOut, UINT OutStride, D3DXVECTOR4* pV, UINT VStride, D3DXMATRIX* pM, UINT n); -} - -D3DXMATRIX* D3DXMatrixIdentity(D3DXMATRIX *pOut) { - debug(D3DX10_DEBUG) { - if (pOut is null) return NULL; - } - pOut.m[0][1] = pOut.m[0][2] = pOut.m[0][3] = - pOut.m[1][0] = pOut.m[1][2] = pOut.m[1][3] = - pOut.m[2][0] = pOut.m[2][1] = pOut.m[2][3] = - pOut.m[3][0] = pOut.m[3][1] = pOut.m[3][2] = 0.0; - pOut.m[0][0] = pOut.m[1][1] = pOut.m[2][2] = pOut.m[3][3] = 1.0; - return pOut; -} - - -BOOL D3DXMatrixIsIdentity(D3DXMATRIX *pM) { - debug(D3DX10_DEBUG) { - if(pM is null) return FALSE; - } - return (pM.m[0][0] == 1.0f) && (pM.m[0][1] == 0.0f) && (pM.m[0][2] == 0.0f) && (pM.m[0][3] == 0.0f) && - (pM.m[1][0] == 0.0f) && (pM.m[1][1] == 1.0f) && (pM.m[1][2] == 0.0f) && (pM.m[1][3] == 0.0f) && - (pM.m[2][0] == 0.0f) && (pM.m[2][1] == 0.0f) && (pM.m[2][2] == 1.0f) && (pM.m[2][3] == 0.0f) && - (pM.m[3][0] == 0.0f) && (pM.m[3][1] == 0.0f) && (pM.m[3][2] == 0.0f) && (pM.m[3][3] == 1.0f); -} - -extern(Windows) { - FLOAT D3DXMatrixDeterminant(D3DXMATRIX* pM); - HRESULT D3DXMatrixDecompose(D3DXVECTOR3* pOutScale, D3DXQUATERNION* pOutRotation, D3DXVECTOR3* pOutTranslation, D3DXMATRIX* pM); - D3DXMATRIX* D3DXMatrixTranspose(D3DXMATRIX* pOut, D3DXMATRIX* pM); - D3DXMATRIX* D3DXMatrixMultiply(D3DXMATRIX* pOut, D3DXMATRIX* pM1, D3DXMATRIX* pM2); - D3DXMATRIX* D3DXMatrixMultiplyTranspose(D3DXMATRIX* pOut, D3DXMATRIX* pM1, D3DXMATRIX* pM2); - D3DXMATRIX* D3DXMatrixInverse(D3DXMATRIX* pOut, FLOAT* pDeterminant, D3DXMATRIX* pM); - D3DXMATRIX* D3DXMatrixScaling(D3DXMATRIX* pOut, FLOAT sx, FLOAT sy, FLOAT sz); - D3DXMATRIX* D3DXMatrixTranslation(D3DXMATRIX* pOut, FLOAT x, FLOAT y, FLOAT z); - D3DXMATRIX* D3DXMatrixRotationX(D3DXMATRIX* pOut, FLOAT Angle); - D3DXMATRIX* D3DXMatrixRotationY(D3DXMATRIX* pOut, FLOAT Angle); - D3DXMATRIX* D3DXMatrixRotationZ(D3DXMATRIX* pOut, FLOAT Angle); - D3DXMATRIX* D3DXMatrixRotationAxis(D3DXMATRIX* pOut, D3DXVECTOR3* pV, FLOAT Angle); - D3DXMATRIX* D3DXMatrixRotationQuaternion(D3DXMATRIX* pOut, D3DXQUATERNION* pQ); - D3DXMATRIX* D3DXMatrixRotationYawPitchRoll(D3DXMATRIX* pOut, FLOAT Yaw, FLOAT Pitch, FLOAT Roll); - D3DXMATRIX* D3DXMatrixTransformation(D3DXMATRIX* pOut, D3DXVECTOR3* pScalingCenter, D3DXQUATERNION* pScalingRotation, D3DXVECTOR3* pScaling, D3DXVECTOR3* pRotationCenter, D3DXQUATERNION* pRotation, D3DXVECTOR3* pTranslation); - D3DXMATRIX* D3DXMatrixTransformation2D(D3DXMATRIX* pOut, D3DXVECTOR2* pScalingCenter, FLOAT ScalingRotation, D3DXVECTOR2* pScaling, D3DXVECTOR2* pRotationCenter, FLOAT Rotation, D3DXVECTOR2* pTranslation); - D3DXMATRIX* D3DXMatrixAffineTransformation(D3DXMATRIX* pOut, FLOAT Scaling, D3DXVECTOR3* pRotationCenter, D3DXQUATERNION* pRotation, D3DXVECTOR3* pTranslation); - D3DXMATRIX* D3DXMatrixAffineTransformation2D(D3DXMATRIX* pOut, FLOAT Scaling, D3DXVECTOR2* pRotationCenter, FLOAT Rotation, D3DXVECTOR2* pTranslation); - D3DXMATRIX* D3DXMatrixLookAtRH(D3DXMATRIX* pOut, D3DXVECTOR3* pEye, D3DXVECTOR3* pAt, D3DXVECTOR3* pUp); - D3DXMATRIX* D3DXMatrixLookAtLH(D3DXMATRIX* pOut, D3DXVECTOR3* pEye, D3DXVECTOR3* pAt, D3DXVECTOR3* pUp); - D3DXMATRIX* D3DXMatrixPerspectiveRH(D3DXMATRIX* pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixPerspectiveLH(D3DXMATRIX* pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixPerspectiveFovRH(D3DXMATRIX* pOut, FLOAT fovy, FLOAT Aspect, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixPerspectiveFovLH(D3DXMATRIX* pOut, FLOAT fovy, FLOAT Aspect, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixPerspectiveOffCenterRH(D3DXMATRIX* pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixPerspectiveOffCenterLH(D3DXMATRIX* pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixOrthoRH(D3DXMATRIX* pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixOrthoLH(D3DXMATRIX* pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixOrthoOffCenterRH(D3DXMATRIX* pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixOrthoOffCenterLH(D3DXMATRIX* pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, FLOAT zf); - D3DXMATRIX* D3DXMatrixShadow(D3DXMATRIX* pOut, D3DXVECTOR4* pLight, D3DXPLANE* pPlane); - D3DXMATRIX* D3DXMatrixReflect(D3DXMATRIX* pOut, D3DXPLANE* pPlane); -} - -float D3DXQuaternionLength(D3DXQUATERNION *pQ) { - debug(D3DX10_DEBUG) { - if (pQ is null) return 0.0f; - } - return sqrtf((pQ.x * pQ.x) + (pQ.y * pQ.y) + (pQ.z * pQ.z) + (pQ.w * pQ.w)); -} - -float D3DXQuaternionLengthSq(D3DXQUATERNION *pQ) { - debug(D3DX10_DEBUG) { - if(pQ is null) return 0.0f; - } - return (pQ.x * pQ.x) + (pQ.y * pQ.y) + (pQ.z * pQ.z) + (pQ.w * pQ.w); -} - -float D3DXQuaternionDot(D3DXQUATERNION *pQ1, D3DXQUATERNION *pQ2) { - debug(D3DX10_DEBUG) { - if((pQ1 is null) || (pQ2 is null)) return 0.0f; - } - return (pQ1.x * pQ2.x) + (pQ1.y * pQ2.y) + (pQ1.z * pQ2.z) + (pQ1.w * pQ2.w); -} - -D3DXQUATERNION* D3DXQuaternionIdentity(D3DXQUATERNION *pOut) { - debug(D3DX10_DEBUG) { - if(pOut is null) return null; - } - pOut.x = pOut.y = pOut.z = 0.0f; - pOut.w = 1.0f; - return pOut; -} - -bool D3DXQuaternionIsIdentity(D3DXQUATERNION *pQ) { - debug(D3DX10_DEBUG) { - if(pQ is null) return false; - } - return (pQ.x == 0.0f) && (pQ.y == 0.0f) && (pQ.z == 0.0f) && (pQ.w == 1.0f); -} - -D3DXQUATERNION* D3DXQuaternionConjugate(D3DXQUATERNION *pOut, D3DXQUATERNION *pQ) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pQis is null)) return null; - } - pOut.x = -pQ.x; - pOut.y = -pQ.y; - pOut.z = -pQ.z; - pOut.w = pQ.w; - return pOut; -} - -extern(Windows) { - void D3DXQuaternionToAxisAngle(D3DXQUATERNION* pQ, D3DXVECTOR3* pAxis, FLOAT* pAngle); - D3DXQUATERNION* D3DXQuaternionRotationMatrix(D3DXQUATERNION* pOut, D3DXMATRIX* pM); - D3DXQUATERNION* D3DXQuaternionRotationAxis(D3DXQUATERNION* pOut, D3DXVECTOR3* pV, FLOAT Angle); - D3DXQUATERNION* D3DXQuaternionRotationYawPitchRoll(D3DXQUATERNION* pOut, FLOAT Yaw, FLOAT Pitch, FLOAT Roll); - D3DXQUATERNION* D3DXQuaternionMultiply(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ1, D3DXQUATERNION* pQ2); - D3DXQUATERNION* D3DXQuaternionNormalize(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ); - D3DXQUATERNION* D3DXQuaternionInverse(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ); - D3DXQUATERNION* D3DXQuaternionLn(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ); - D3DXQUATERNION* D3DXQuaternionExp(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ); - D3DXQUATERNION* D3DXQuaternionSlerp(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ1, D3DXQUATERNION* pQ2, FLOAT t); - D3DXQUATERNION* D3DXQuaternionSquad(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ1, D3DXQUATERNION* pA, D3DXQUATERNION* pB, D3DXQUATERNION* pC, FLOAT t); - void D3DXQuaternionSquadSetup(D3DXQUATERNION* pAOut, D3DXQUATERNION* pBOut, D3DXQUATERNION* pCOut, D3DXQUATERNION* pQ0, D3DXQUATERNION* pQ1, D3DXQUATERNION* pQ2, D3DXQUATERNION* pQ3); - D3DXQUATERNION* D3DXQuaternionBaryCentric(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ1, D3DXQUATERNION* pQ2, D3DXQUATERNION* pQ3, FLOAT f, FLOAT g); -} - -float D3DXPlaneDot(D3DXPLANE *pP, D3DXVECTOR4 *pV) { - debug(D3DX10_DEBUG) { - if((pP is null) || (pV is null)) return 0.0f; - } - return (pP.a * pV.x) + (pP.b * pV.y) + (pP.c * pV.z) + (pP.d * pV.w); -} - -float D3DXPlaneDotCoord(D3DXPLANE *pP, D3DXVECTOR3 *pV) { - debug(D3DX10_DEBUG) { - if((pP is null) || (pV is null)) return 0.0f; - } - return (pP.a * pV.x) + (pP.b * pV.y) + (pP.c * pV.z) + pP.d; -} - -float D3DXPlaneDotNormal(D3DXPLANE *pP, D3DXVECTOR3 *pV) { - debug(D3DX10_DEBUG) { - if((pP is null) || (pV is null)) return 0.0f; - } - return (pP.a * pV.x) + (pP.b * pV.y) + (pP.c * pV.z); -} - -D3DXPLANE* D3DXPlaneScale(D3DXPLANE *pOut, D3DXPLANE *pP, float s) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pP is null)) return null; - } - pOut.a = pP.a * s; - pOut.b = pP.b * s; - pOut.c = pP.c * s; - pOut.d = pP.d * s; - return pOut; -} - -extern(Windows) { - D3DXPLANE* D3DXPlaneNormalize(D3DXPLANE* pOut, D3DXPLANE* pP); - D3DXVECTOR3* D3DXPlaneIntersectLine(D3DXVECTOR3* pOut, D3DXPLANE* pP, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2); - D3DXPLANE* D3DXPlaneFromPointNormal(D3DXPLANE* pOut, D3DXVECTOR3* pPoint, D3DXVECTOR3* pNormal); - D3DXPLANE* D3DXPlaneFromPoints(D3DXPLANE* pOut, D3DXVECTOR3* pV1, D3DXVECTOR3* pV2, D3DXVECTOR3* pV3); - D3DXPLANE* D3DXPlaneTransform(D3DXPLANE* pOut, D3DXPLANE* pP, D3DXMATRIX* pM); - D3DXPLANE* D3DXPlaneTransformArray(D3DXPLANE* pOut, UINT OutStride, D3DXPLANE* pP, UINT PStride, D3DXMATRIX* pM, UINT n); -} - -D3DXCOLOR* D3DXColorNegative(D3DXCOLOR* pOut, D3DXCOLOR* pC) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pC is null)) return null; - } - pOut.r = 1.0f - pC.r; - pOut.g = 1.0f - pC.g; - pOut.b = 1.0f - pC.b; - pOut.a = pC.a; - return pOut; -} - -D3DXCOLOR* D3DXColorAdd(D3DXCOLOR* pOut, D3DXCOLOR* pC1, D3DXCOLOR* pC2) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pC1 is null) || (pC2 is null)) return null; - } - pOut.r = pC1.r + pC2.r; - pOut.g = pC1.g + pC2.g; - pOut.b = pC1.b + pC2.b; - pOut.a = pC1.a + pC2.a; - return pOut; -} - -D3DXCOLOR* D3DXColorSubtract(D3DXCOLOR* pOut, D3DXCOLOR* pC1, D3DXCOLOR* pC2) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pC1 is null) || (pC2 is null)) return null; - } - pOut.r = pC1.r - pC2.r; - pOut.g = pC1.g - pC2.g; - pOut.b = pC1.b - pC2.b; - pOut.a = pC1.a - pC2.a; - return pOut; -} - -D3DXCOLOR* D3DXColorScale(D3DXCOLOR* pOut, D3DXCOLOR* pC, float s) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pC is null)) return null; - } - pOut.r = pC.r * s; - pOut.g = pC.g * s; - pOut.b = pC.b * s; - pOut.a = pC.a * s; - return pOut; -} - -D3DXCOLOR* D3DXColorModulate(D3DXCOLOR* pOut, D3DXCOLOR* pC1, D3DXCOLOR* pC2) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pC1 is null) || (pC2 is null)) return null; - } - pOut.r = pC1.r * pC2.r; - pOut.g = pC1.g * pC2.g; - pOut.b = pC1.b * pC2.b; - pOut.a = pC1.a * pC2.a; - return pOut; -} - -D3DXCOLOR* D3DXColorLerp(D3DXCOLOR* pOut, D3DXCOLOR* pC1, D3DXCOLOR* pC2, float s) { - debug(D3DX10_DEBUG) { - if((pOut is null) || (pC1 is null) || (pC2 is null)) return null; - } - pOut.r = pC1.r + s * (pC2.r - pC1.r); - pOut.g = pC1.g + s * (pC2.g - pC1.g); - pOut.b = pC1.b + s * (pC2.b - pC1.b); - pOut.a = pC1.a + s * (pC2.a - pC1.a); - return pOut; -} - -extern(Windows) { - D3DXCOLOR* D3DXColorAdjustSaturation(D3DXCOLOR* pOut, D3DXCOLOR* pC, float s); - D3DXCOLOR* D3DXColorAdjustContrast(D3DXCOLOR* pOut, D3DXCOLOR* pC, float c); - FLOAT D3DXFresnelTerm(float CosTheta, float RefractionIndex); -} - -extern (C) const GUID IID_ID3DXMatrixStack = {0xc7885ba7, 0xf990, 0x4fe7, [0x92, 0x2d, 0x85, 0x15, 0xe4, 0x77, 0xdd, 0x85]}; - -interface ID3DXMatrixStack : IUnknown { - extern(Windows) : - HRESULT Pop(); - HRESULT Push(); - HRESULT LoadIdentity(); - HRESULT LoadMatrix(D3DXMATRIX* pM ); - HRESULT MultMatrix(D3DXMATRIX* pM ); - HRESULT MultMatrixLocal(D3DXMATRIX* pM ); - HRESULT RotateAxis(D3DXVECTOR3* pV, float Angle); - HRESULT RotateAxisLocal(D3DXVECTOR3* pV, float Angle); - HRESULT RotateYawPitchRoll(float Yaw, float Pitch, float Roll); - HRESULT RotateYawPitchRollLocal(float Yaw, float Pitch, float Roll); - HRESULT Scale(float x, float y, float z); - HRESULT ScaleLocal(float x, float y, float z); - HRESULT Translate(float x, float y, float z ); - HRESULT TranslateLocal(float x, float y, float z); - D3DXMATRIX* GetTop(); -} - -//TODO extern(Windows) HRESULT D3DXCreateMatrixStack(UINT Flags, D3DXMATRIXSTACK* ppStack); - -const D3DXSH_MINORDER = 2; -const D3DXSH_MAXORDER = 6; - -extern(Windows) { - float* D3DXSHEvalDirection(float* pOut, UINT Order, D3DXVECTOR3* pDir); - float* D3DXSHRotate(float* pOut, UINT Order, D3DXMATRIX* pMatrix, float* pIn); - float* D3DXSHRotateZ(float* pOut, UINT Order, float Angle, float* pIn); - float* D3DXSHAdd(float* pOut, UINT Order, float* pA, float* pB); - float* D3DXSHScale(float* pOut, UINT Order, float* pIn, float Scale); - float D3DXSHDot(UINT Order, float* pA, float* pB); - float* D3DXSHMultiply2(float* pOut, float* pF, float* pG); - float* D3DXSHMultiply3(float* pOut, float* pF, float* pG); - float* D3DXSHMultiply4(float* pOut, float* pF, float* pG); - float* D3DXSHMultiply5(float* pOut, float* pF, float* pG); - float* D3DXSHMultiply6(float* pOut, float* pF, float* pG); - HRESULT D3DXSHEvalDirectionalLight(UINT Order, D3DXVECTOR3* pDir, float RIntensity, float GIntensity, float BIntensity, float* pROut, float* pGOut, float* pBOut); - HRESULT D3DXSHEvalSphericalLight(UINT Order, D3DXVECTOR3* pPos, float Radius, float RIntensity, float GIntensity, float BIntensity, float* pROut, float* pGOut, float* pBOut); - HRESULT D3DXSHEvalConeLight(UINT Order, D3DXVECTOR3* pDir, float Radius, float RIntensity, float GIntensity, float BIntensity, float* pROut, float* pGOut, float* pBOut); - HRESULT D3DXSHEvalHemisphereLight(UINT Order, D3DXVECTOR3* pDir, D3DXCOLOR Top, D3DXCOLOR Bottom, float* pROut, float* pGOut, float* pBOut); - BOOL D3DXIntersectTri(D3DXVECTOR3* p0, D3DXVECTOR3* p1, D3DXVECTOR3* p2, D3DXVECTOR3* pRayPos, D3DXVECTOR3* pRayDir, float* pU, float* pV, float* pDist); - BOOL D3DXSphereBoundProbe(D3DXVECTOR3* pCenter, float Radius, D3DXVECTOR3* pRayPosition, D3DXVECTOR3* pRayDirection); - BOOL D3DXBoxBoundProbe(D3DXVECTOR3* pMin, D3DXVECTOR3* pMax, D3DXVECTOR3* pRayPosition, D3DXVECTOR3* pRayDirection); - HRESULT D3DXComputeBoundingSphere(D3DXVECTOR3* pFirstPosition, DWORD NumVertices, DWORD dwStride, D3DXVECTOR3* pCenter, float* pRadius); - HRESULT D3DXComputeBoundingBox(D3DXVECTOR3* pFirstPosition, DWORD NumVertices, DWORD dwStride, D3DXVECTOR3* pMin, D3DXVECTOR3* pMax); -} - -enum D3DX_CPU_OPTIMIZATION { - D3DX_NOT_OPTIMIZED = 0, - D3DX_3DNOW_OPTIMIZED, - D3DX_SSE2_OPTIMIZED, - D3DX_SSE_OPTIMIZED -} - -extern(Windows) D3DX_CPU_OPTIMIZATION D3DXCpuOptimizations(bool Enable); diff --git a/3rdparty-extra/win32/directx/d3dx10mesh.d b/3rdparty-extra/win32/directx/d3dx10mesh.d deleted file mode 100644 index 9eeef5cf7..000000000 --- a/3rdparty-extra/win32/directx/d3dx10mesh.d +++ /dev/null @@ -1,164 +0,0 @@ -/***********************************************************************\ -* d3dx10mesh.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.d3dx10mesh; -version(Windows): - -private import win32.windows; -private import win32.directx.d3d10; -private import win32.directx.d3dx10; - -extern(C) const GUID IID_ID3DX10BaseMesh = {0x7ed943dd, 0x52e8, 0x40b5, [0xa8, 0xd8, 0x76, 0x68, 0x5c, 0x40, 0x63, 0x30]}; -extern(C) const GUID IID_ID3DX10MeshBuffer = {0x4b0d117, 0x1041, 0x46b1, [0xaa, 0x8a, 0x39, 0x52, 0x84, 0x8b, 0xa2, 0x2e]}; -extern(C) const GUID IID_ID3DX10Mesh = {0x4020e5c2, 0x1403, 0x4929, [0x88, 0x3f, 0xe2, 0xe8, 0x49, 0xfa, 0xc1, 0x95]}; -extern(C) const GUID IID_ID3DX10PMesh = {0x8875769a, 0xd579, 0x4088, [0xaa, 0xeb, 0x53, 0x4d, 0x1a, 0xd8, 0x4e, 0x96]}; -extern(C) const GUID IID_ID3DX10SPMesh = {0x667ea4c7, 0xf1cd, 0x4386, [0xb5, 0x23, 0x7c, 0x2, 0x90, 0xb8, 0x3c, 0xc5]}; -extern(C) const GUID IID_ID3DX10PatchMesh = {0x3ce6cc22, 0xdbf2, 0x44f4, [0x89, 0x4d, 0xf9, 0xc3, 0x4a, 0x33, 0x71, 0x39]}; - -enum D3DX10_MESH { - D3DX10_MESH_32_BIT = 0x001, - D3DX10_MESH_GS_ADJACENCY = 0x004 -} - -struct D3DX10_ATTRIBUTE_RANGE { - UINT AttribId; - UINT FaceStart; - UINT FaceCount; - UINT VertexStart; - UINT VertexCount; -} - -enum D3DX10_MESH_DISCARD_FLAGS { - D3DX10_MESH_DISCARD_ATTRIBUTE_BUFFER = 0x01, - D3DX10_MESH_DISCARD_ATTRIBUTE_TABLE = 0x02, - D3DX10_MESH_DISCARD_POINTREPS = 0x04, - D3DX10_MESH_DISCARD_ADJACENCY = 0x08, - D3DX10_MESH_DISCARD_DEVICE_BUFFERS = 0x10 -} - -struct D3DX10_WELD_EPSILONS { - FLOAT Position; - FLOAT BlendWeights; - FLOAT Normal; - FLOAT PSize; - FLOAT Specular; - FLOAT Diffuse; - FLOAT[8] Texcoord; - FLOAT Tangent; - FLOAT Binormal; - FLOAT TessFactor; -} - -struct D3DX10_INTERSECT_INFO { - UINT FaceIndex; - FLOAT U; - FLOAT V; - FLOAT Dist; -} - -interface ID3DX10MeshBuffer : IUnknown { - extern(Windows) : - HRESULT Map(void** ppData, SIZE_T* pSize); - HRESULT Unmap(); - SIZE_T GetSize(); -} - -interface ID3DX10Mesh : IUnknown { - extern(Windows) : - UINT GetFaceCount(); - UINT GetVertexCount(); - UINT GetVertexBufferCount(); - UINT GetFlags(); - HRESULT GetVertexDescription(D3D10_INPUT_ELEMENT_DESC** ppDesc, UINT* pDeclCount); - HRESULT SetVertexData(UINT iBuffer, void* pData); - HRESULT GetVertexBuffer(UINT iBuffer, ID3DX10MeshBuffer** ppVertexBuffer); - HRESULT SetIndexData(void* pData, UINT cIndices); - HRESULT GetIndexBuffer(ID3DX10MeshBuffer** ppIndexBuffer); - HRESULT SetAttributeData(UINT* pData); - HRESULT GetAttributeBuffer(ID3DX10MeshBuffer** ppAttributeBuffer); - HRESULT SetAttributeTable(D3DX10_ATTRIBUTE_RANGE* pAttribTable, UINT cAttribTableSize); - HRESULT GetAttributeTable(D3DX10_ATTRIBUTE_RANGE* pAttribTable, UINT* pAttribTableSize); - HRESULT GenerateAdjacencyAndPointReps(FLOAT Epsilon); - HRESULT GenerateGSAdjacency(); - HRESULT SetAdjacencyData(UINT* pAdjacency); - HRESULT GetAdjacencyBuffer(ID3DX10MeshBuffer** ppAdjacency); - HRESULT SetPointRepData(UINT* pPointReps); - HRESULT GetPointRepBuffer(ID3DX10MeshBuffer** ppPointReps); - HRESULT Discard(D3DX10_MESH_DISCARD_FLAGS dwDiscard); - HRESULT CloneMesh(UINT Flags, LPCSTR pPosSemantic, D3D10_INPUT_ELEMENT_DESC* pDesc, UINT DeclCount, ID3DX10Mesh** ppCloneMesh); - HRESULT Optimize(UINT Flags, UINT * pFaceRemap, ID3D10Blob* ppVertexRemap); - HRESULT GenerateAttributeBufferFromTable(); - HRESULT Intersect(D3DXVECTOR3* pRayPos, D3DXVECTOR3* pRayDir, UINT* pHitCount, UINT* pFaceIndex, float* pU, float* pV, float* pDist, ID3D10Blob* ppAllHits); - HRESULT IntersectSubset(UINT AttribId, D3DXVECTOR3* pRayPos, D3DXVECTOR3* pRayDir, UINT* pHitCount, UINT* pFaceIndex, float* pU, float* pV, float* pDist, ID3D10Blob* ppAllHits); - HRESULT CommitToDevice(); - HRESULT DrawSubset(UINT AttribId); - HRESULT DrawSubsetInstanced(UINT AttribId, UINT InstanceCount, UINT StartInstanceLocation); - HRESULT GetDeviceVertexBuffer(UINT iBuffer, ID3D10Buffer** ppVertexBuffer); - HRESULT GetDeviceIndexBuffer(ID3D10Buffer** ppIndexBuffer); -} - -HRESULT D3DX10CreateMesh(ID3D10Device* pDevice, D3D10_INPUT_ELEMENT_DESC* pDeclaration, UINT DeclCount, LPCSTR pPositionSemantic, UINT VertexCount, UINT FaceCount, UINT Options, ID3DX10Mesh** ppMesh); - -enum D3DX10_MESHOPT { - D3DX10_MESHOPT_COMPACT = 0x01000000, - D3DX10_MESHOPT_ATTR_SORT = 0x02000000, - D3DX10_MESHOPT_VERTEX_CACHE = 0x04000000, - D3DX10_MESHOPT_STRIP_REORDER = 0x08000000, - D3DX10_MESHOPT_IGNORE_VERTS = 0x10000000, - D3DX10_MESHOPT_DO_NOT_SPLIT = 0x20000000, - D3DX10_MESHOPT_DEVICE_INDEPENDENT = 0x00400000 -} - -extern(C) const GUID IID_ID3DX10SkinInfo = {0x420bd604, 0x1c76, 0x4a34, [0xa4, 0x66, 0xe4, 0x5d, 0x6, 0x58, 0xa3, 0x2c]}; - -const D3DX10_SKININFO_NO_SCALING = 0; -const D3DX10_SKININFO_SCALE_TO_1 = 1; -const D3DX10_SKININFO_SCALE_TO_TOTAL = 2; - -struct D3DX10_SKINNING_CHANNEL { - UINT SrcOffset; - UINT DestOffset; - BOOL IsNormal; -} - -interface ID3DX10SkinInfo : IUnknown { - extern(Windows) : - HRESULT QueryInterface(REFIID iid, LPVOID* ppv); - ULONG AddRef(); - ULONG Release(); - UINT GetNumVertices(); - UINT GetNumBones(); - UINT GetMaxBoneInfluences(); - HRESULT AddVertices(UINT Count); - HRESULT RemapVertices(UINT NewVertexCount, UINT* pVertexRemap); - HRESULT AddBones(UINT Count); - HRESULT RemoveBone(UINT Index); - HRESULT RemapBones(UINT NewBoneCount, UINT* pBoneRemap); - HRESULT AddBoneInfluences(UINT BoneIndex, UINT InfluenceCount, UINT* pIndices, float* pWeights); - HRESULT ClearBoneInfluences(UINT BoneIndex); - UINT GetBoneInfluenceCount(UINT BoneIndex); - HRESULT GetBoneInfluences(UINT BoneIndex, UINT Offset, UINT Count, UINT* pDestIndices, float* pDestWeights); - HRESULT FindBoneInfluenceIndex(UINT BoneIndex, UINT VertexIndex, UINT* pInfluenceIndex); - HRESULT SetBoneInfluence(UINT BoneIndex, UINT InfluenceIndex, float Weight); - HRESULT GetBoneInfluence(UINT BoneIndex, UINT InfluenceIndex, float* pWeight); - HRESULT Compact(UINT MaxPerVertexInfluences, UINT ScaleMode, float MinWeight); - HRESULT DoSoftwareSkinning(UINT StartVertex, UINT VertexCount, void* pSrcVertices, UINT SrcStride, void* pDestVertices, UINT DestStride, D3DXMATRIX* pBoneMatrices, D3DXMATRIX* pInverseTransposeBoneMatrices, D3DX10_SKINNING_CHANNEL* pChannelDescs, UINT NumChannels); -} - -HRESULT D3DX10CreateSkinInfo(ID3DX10SkinInfo* ppSkinInfo); - -struct D3DX10_ATTRIBUTE_WEIGHTS { - FLOAT Position; - FLOAT Boundary; - FLOAT Normal; - FLOAT Diffuse; - FLOAT Specular; - FLOAT[8] Texcoord; - FLOAT Tangent; - FLOAT Binormal; -} - diff --git a/3rdparty-extra/win32/directx/d3dx10tex.d b/3rdparty-extra/win32/directx/d3dx10tex.d deleted file mode 100644 index 5e0b376aa..000000000 --- a/3rdparty-extra/win32/directx/d3dx10tex.d +++ /dev/null @@ -1,193 +0,0 @@ -/***********************************************************************\ -* d3dx10tex.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.d3dx10tex; -version(Windows): - -private import win32.windows; -private import win32.directx.d3d10; -private import win32.directx.d3dx10core; - -enum D3DX10_FILTER_FLAG { - D3DX10_FILTER_NONE = 0x000001, - D3DX10_FILTER_POINT = 0x000002, - D3DX10_FILTER_LINEAR = 0x000003, - D3DX10_FILTER_TRIANGLE = 0x000004, - D3DX10_FILTER_BOX = 0x000005, - D3DX10_FILTER_MIRROR_U = 0x010000, - D3DX10_FILTER_MIRROR_V = 0x020000, - D3DX10_FILTER_MIRROR_W = 0x040000, - D3DX10_FILTER_MIRROR = 0x070000, - D3DX10_FILTER_DITHER = 0x080000, - D3DX10_FILTER_DITHER_DIFFUSION = 0x100000, - D3DX10_FILTER_SRGB_IN = 0x200000, - D3DX10_FILTER_SRGB_OUT = 0x400000, - D3DX10_FILTER_SRGB = 0x600000 -} - -enum D3DX10_NORMALMAP_FLAG { - D3DX10_NORMALMAP_MIRROR_U = 0x010000, - D3DX10_NORMALMAP_MIRROR_V = 0x020000, - D3DX10_NORMALMAP_MIRROR = 0x030000, - D3DX10_NORMALMAP_INVERTSIGN = 0x080000, - D3DX10_NORMALMAP_COMPUTE_OCCLUSION = 0x100000 -} - -enum D3DX10_CHANNEL_FLAG { - D3DX10_CHANNEL_RED = 1, - D3DX10_CHANNEL_BLUE = 2, - D3DX10_CHANNEL_GREEN = 4, - D3DX10_CHANNEL_ALPHA = 8, - D3DX10_CHANNEL_LUMINANCE = 16 -} - -enum D3DX10_IMAGE_FILE_FORMAT { - D3DX10_IFF_BMP = 0, - D3DX10_IFF_JPG = 1, - D3DX10_IFF_PNG = 3, - D3DX10_IFF_DDS = 4, - D3DX10_IFF_TIFF = 10, - D3DX10_IFF_GIF = 11, - D3DX10_IFF_WMP = 12, - D3DX10_IFF_FORCE_DWORD = 0x7fffffff -} - -enum D3DX10_SAVE_TEXTURE_FLAG { - D3DX10_STF_USEINPUTBLOB = 1 -} - -struct D3DX10_IMAGE_INFO { - UINT Width; - UINT Height; - UINT Depth; - UINT ArraySize; - UINT MipLevels; - UINT MiscFlags; - DXGI_FORMAT Format; - D3D10_RESOURCE_DIMENSION ResourceDimension; - D3DX10_IMAGE_FILE_FORMAT ImageFileFormat; -} - -struct D3DX10_IMAGE_LOAD_INFO { - UINT Width; - UINT Height; - UINT Depth; - UINT FirstMipLevel; - UINT MipLevels; - D3D10_USAGE Usage; - UINT BindFlags; - UINT CpuAccessFlags; - UINT MiscFlags; - DXGI_FORMAT Format; - UINT Filter; - UINT MipFilter; - D3DX10_IMAGE_INFO* pSrcInfo; -} - -HRESULT D3DX10GetImageInfoFromFileA(LPCSTR pSrcFile, ID3DX10ThreadPump pPump, - D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); -HRESULT D3DX10GetImageInfoFromFileW(LPCWSTR pSrcFile, ID3DX10ThreadPump pPump, - D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); - -HRESULT D3DX10GetImageInfoFromResourceA(HMODULE hSrcModule, - LPCSTR pSrcResource, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, - HRESULT* pHResult); -HRESULT D3DX10GetImageInfoFromResourceW(HMODULE hSrcModule, - LPCWSTR pSrcResource, ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, - HRESULT* pHResult); - -HRESULT D3DX10GetImageInfoFromMemory(LPCVOID pSrcData, SIZE_T SrcDataSize, - ID3DX10ThreadPump pPump, D3DX10_IMAGE_INFO* pSrcInfo, HRESULT* pHResult); - -HRESULT D3DX10CreateShaderResourceViewFromFileA(ID3D10Device pDevice, - LPCSTR pSrcFile, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, - ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); -HRESULT D3DX10CreateShaderResourceViewFromFileW(ID3D10Device pDevice, - LPCWSTR pSrcFile, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, - ID3D10ShaderResourceView* ppShaderResourceView, HRESULT* pHResult); - -HRESULT D3DX10CreateTextureFromFileA(ID3D10Device pDevice, LPCSTR pSrcFile, - D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, - ID3D10Resource* ppTexture, HRESULT* pHResult); -HRESULT D3DX10CreateTextureFromFileW(ID3D10Device pDevice, LPCWSTR pSrcFile, - D3DX10_IMAGE_LOAD_INFO* pLoadInfo, ID3DX10ThreadPump pPump, - ID3D10Resource* ppTexture, HRESULT* pHResult); - -HRESULT D3DX10CreateShaderResourceViewFromResourceA(ID3D10Device pDevice, - HMODULE hSrcModule, LPCSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, - ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, - HRESULT* pHResult); -HRESULT D3DX10CreateShaderResourceViewFromResourceW(ID3D10Device pDevice, - HMODULE hSrcModule, LPCWSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, - ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, - HRESULT* pHResult); - -HRESULT D3DX10CreateTextureFromResourceA(ID3D10Device pDevice, - HMODULE hSrcModule, LPCSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, - ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); -HRESULT D3DX10CreateTextureFromResourceW(ID3D10Device pDevice, - HMODULE hSrcModule, LPCWSTR pSrcResource, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, - ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); - -HRESULT D3DX10CreateShaderResourceViewFromMemory(ID3D10Device pDevice, - LPCVOID pSrcData, SIZE_T SrcDataSize, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, - ID3DX10ThreadPump pPump, ID3D10ShaderResourceView* ppShaderResourceView, - HRESULT* pHResult); - -HRESULT D3DX10CreateTextureFromMemory(ID3D10Device pDevice, LPCVOID pSrcData, - SIZE_T SrcDataSize, D3DX10_IMAGE_LOAD_INFO* pLoadInfo, - ID3DX10ThreadPump pPump, ID3D10Resource* ppTexture, HRESULT* pHResult); - -struct D3DX10_TEXTURE_LOAD_INFO { - D3D10_BOX* pSrcBox; - D3D10_BOX* pDstBox; - UINT SrcFirstMip; - UINT DstFirstMip; - UINT NumMips; - UINT SrcFirstElement; - UINT DstFirstElement; - UINT NumElements; - UINT Filter; - UINT MipFilter; -} - -HRESULT D3DX10LoadTextureFromTexture(ID3D10Resource pSrcTexture, - D3DX10_TEXTURE_LOAD_INFO* pLoadInfo, ID3D10Resource pDstTexture); - -HRESULT D3DX10FilterTexture(ID3D10Resource pTexture, UINT SrcLevel, UINT MipFilter); - -HRESULT D3DX10SaveTextureToFileA(ID3D10Resource pSrcTexture, - D3DX10_IMAGE_FILE_FORMAT DestFormat, LPCSTR pDestFile); -HRESULT D3DX10SaveTextureToFileW(ID3D10Resource pSrcTexture, - D3DX10_IMAGE_FILE_FORMAT DestFormat, LPCWSTR pDestFile); - -HRESULT D3DX10SaveTextureToMemory(ID3D10Resource pSrcTexture, - D3DX10_IMAGE_FILE_FORMAT DestFormat, ID3D10Blob* ppDestBuf, UINT Flags); - -HRESULT D3DX10ComputeNormalMap(ID3D10Texture2D pSrcTexture, UINT Flags, - UINT Channel, FLOAT Amplitude, ID3D10Texture2D pDestTexture); - -HRESULT D3DX10SHProjectCubeMap(UINT Order, ID3D10Texture2D pCubeMap, - FLOAT* pROut, FLOAT* pGOut, FLOAT* pBOut); - -version(Unicode) { - alias D3DX10GetImageInfoFromFileW D3DX10GetImageInfoFromFile; - alias D3DX10GetImageInfoFromResourceW D3DX10GetImageInfoFromResource; - alias D3DX10CreateShaderResourceViewFromFileW D3DX10CreateShaderResourceViewFromFile; - alias D3DX10CreateTextureFromFileW D3DX10CreateTextureFromFile; - alias D3DX10CreateShaderResourceViewFromResourceW D3DX10CreateShaderResourceViewFromResource; - alias D3DX10CreateTextureFromResourceW D3DX10CreateTextureFromResource; - alias D3DX10SaveTextureToFileW D3DX10SaveTextureToFile; -} else { - alias D3DX10GetImageInfoFromFileA D3DX10GetImageInfoFromFile; - alias D3DX10GetImageInfoFromResourceA D3DX10GetImageInfoFromResource; - alias D3DX10CreateShaderResourceViewFromFileA D3DX10CreateShaderResourceViewFromFile; - alias D3DX10CreateTextureFromFileA D3DX10CreateTextureFromFile; - alias D3DX10CreateShaderResourceViewFromResourceA D3DX10CreateShaderResourceViewFromResource; - alias D3DX10CreateTextureFromResourceA D3DX10CreateTextureFromResource; - alias D3DX10SaveTextureToFileA D3DX10SaveTextureToFile; -} diff --git a/3rdparty-extra/win32/directx/d3dx9.d b/3rdparty-extra/win32/directx/d3dx9.d deleted file mode 100644 index a6f34f729..000000000 --- a/3rdparty-extra/win32/directx/d3dx9.d +++ /dev/null @@ -1,1991 +0,0 @@ -// D3DX Types and Constants --------------------------------------------------------------------------------------- - -module win32.directx.d3dx9; -version(Windows): - -public import win32.directx.d3d9; -public import win32.windows; - -alias D3DMATRIX D3DXMATRIX; - -const uint MAXD3DDECLLENGTH = 64; -const uint MAX_FVF_DECL_SIZE = MAXD3DDECLLENGTH + 1; - -align(4) struct D3DXATTRIBUTERANGE -{ - DWORD AttribId; - DWORD FaceStart; - DWORD FaceCount; - DWORD VertexStart; - DWORD VertexCount; -} - -align(4) struct D3DXVECTOR2 -{ - float x = 0, y = 0; - - static D3DXVECTOR2 opCall(float x, float y) - { - D3DXVECTOR2 v; - v.x = x; - v.y = y; - return v; - } -} - -alias D3DVECTOR D3DXVECTOR3; - -align(4) struct D3DXVECTOR4 -{ - float x = 0, y = 0, z = 0, w = 0; - - static D3DXVECTOR4 opCall(float x, float y, float z, float w) - { - D3DXVECTOR4 v; - v.x = x; - v.y = y; - v.z = z; - v.w = w; - return v; - } -} - -align(4) struct D3DXQUATERNION -{ - float x = 0, y = 0, z = 0, w = 0; -} - -align(4) struct D3DXFRAME -{ - LPSTR Name; - D3DXMATRIX TransformationMatrix; - - D3DXMESHCONTAINER* pMeshContainer; - - D3DXFRAME *pFrameSibling; - D3DXFRAME *pFrameFirstChild; -} - -align(4) struct D3DXMESHCONTAINER -{ - LPSTR Name; - - D3DXMESHDATA MeshData; - - D3DXMATERIAL* pMaterials; - D3DXEFFECTINSTANCE* pEffects; - DWORD NumMaterials; - DWORD *pAdjacency; - - ID3DXSkinInfo pSkinInfo; - - D3DXMESHCONTAINER* pNextMeshContainer; -} - -align(4) struct D3DXMESHDATA -{ - D3DXMESHDATATYPE Type; - - // current mesh data interface - union - { - ID3DXMesh pMesh; - ID3DXPMesh pPMesh; - ID3DXPatchMesh pPatchMesh; - } -} - -alias uint D3DXMESHDATATYPE; -enum : uint -{ - D3DXMESHTYPE_MESH = 0x001, // Normal ID3DXMesh data - D3DXMESHTYPE_PMESH = 0x002, // Progressive Mesh - ID3DXPMesh - D3DXMESHTYPE_PATCHMESH = 0x003 // Patch Mesh - ID3DXPatchMesh -} - -align(4) struct D3DXMATERIAL -{ - D3DMATERIAL9 MatD3D; - LPSTR pTextureFilename; -} - -alias uint D3DXEFFECTDEFAULTTYPE; -enum : uint -{ - D3DXEDT_STRING = 0x1, // pValue points to a null terminated ASCII string - D3DXEDT_FLOATS = 0x2, // pValue points to an array of floats - number of floats is NumBytes / sizeof(float) - D3DXEDT_DWORD = 0x3 // pValue points to a DWORD -} - -align(4) struct D3DXEFFECTDEFAULT -{ - LPSTR pParamName; - D3DXEFFECTDEFAULTTYPE Type; // type of the data pointed to by pValue - DWORD NumBytes; // size in bytes of the data pointed to by pValue - LPVOID pValue; // data for the default of the effect -} - -align(4) struct D3DXEFFECTINSTANCE -{ - LPSTR pEffectFilename; - DWORD NumDefaults; - D3DXEFFECTDEFAULT* pDefaults; -} - -alias uint D3DXPATCHMESHTYPE; -enum : uint -{ - D3DXPATCHMESH_RECT = 0x001, - D3DXPATCHMESH_TRI = 0x002, - D3DXPATCHMESH_NPATCH = 0x003 -} - -align(4) struct D3DXPATCHINFO -{ - D3DXPATCHMESHTYPE PatchType; - D3DDEGREETYPE Degree; - D3DBASISTYPE Basis; -} - -const uint LF_FACESIZE = 32; - -align(4) struct D3DXFONT_DESCA -{ - INT Height; - UINT Width; - UINT Weight; - UINT MipLevels; - BOOL Italic; - BYTE CharSet; - BYTE OutputPrecision; - BYTE Quality; - BYTE PitchAndFamily; - CHAR[LF_FACESIZE] FaceName; -} - -align(4) struct D3DXFONT_DESCW -{ - INT Height; - UINT Width; - UINT Weight; - UINT MipLevels; - BOOL Italic; - BYTE CharSet; - BYTE OutputPrecision; - BYTE Quality; - BYTE PitchAndFamily; - WCHAR[LF_FACESIZE] FaceName; -} - -align(4) struct TEXTMETRICA -{ - LONG tmHeight; - LONG tmAscent; - LONG tmDescent; - LONG tmInternalLeading; - LONG tmExternalLeading; - LONG tmAveCharWidth; - LONG tmMaxCharWidth; - LONG tmWeight; - LONG tmOverhang; - LONG tmDigitizedAspectX; - LONG tmDigitizedAspectY; - BYTE tmFirstChar; - BYTE tmLastChar; - BYTE tmDefaultChar; - BYTE tmBreakChar; - BYTE tmItalic; - BYTE tmUnderlined; - BYTE tmStruckOut; - BYTE tmPitchAndFamily; - BYTE tmCharSet; -} - -align(4) struct TEXTMETRICW -{ - LONG tmHeight; - LONG tmAscent; - LONG tmDescent; - LONG tmInternalLeading; - LONG tmExternalLeading; - LONG tmAveCharWidth; - LONG tmMaxCharWidth; - LONG tmWeight; - LONG tmOverhang; - LONG tmDigitizedAspectX; - LONG tmDigitizedAspectY; - WCHAR tmFirstChar; - WCHAR tmLastChar; - WCHAR tmDefaultChar; - WCHAR tmBreakChar; - BYTE tmItalic; - BYTE tmUnderlined; - BYTE tmStruckOut; - BYTE tmPitchAndFamily; - BYTE tmCharSet; -} - -align(4) struct D3DXEFFECT_DESC -{ - LPCSTR Creator; // Creator string - UINT Parameters; // Number of parameters - UINT Techniques; // Number of techniques - UINT Functions; // Number of function entrypoints -} - -alias char* D3DXHANDLE; - -align(4) struct D3DXPARAMETER_DESC -{ - LPCSTR Name; // Parameter name - LPCSTR Semantic; // Parameter semantic - D3DXPARAMETER_CLASS Class; // Class - D3DXPARAMETER_TYPE Type; // Component type - UINT Rows; // Number of rows - UINT Columns; // Number of columns - UINT Elements; // Number of array elements - UINT Annotations; // Number of annotations - UINT StructMembers; // Number of structure member sub-parameters - DWORD Flags; // D3DX_PARAMETER_* flags - UINT Bytes; // Parameter size, in bytes -} - -alias uint D3DXPARAMETER_CLASS; -enum : uint -{ - D3DXPC_SCALAR, - D3DXPC_VECTOR, - D3DXPC_MATRIX_ROWS, - D3DXPC_MATRIX_COLUMNS, - D3DXPC_OBJECT, - D3DXPC_STRUCT -} - -alias uint D3DXPARAMETER_TYPE; -enum : uint -{ - D3DXPT_VOID, - D3DXPT_BOOL, - D3DXPT_INT, - D3DXPT_FLOAT, - D3DXPT_STRING, - D3DXPT_TEXTURE, - D3DXPT_TEXTURE1D, - D3DXPT_TEXTURE2D, - D3DXPT_TEXTURE3D, - D3DXPT_TEXTURECUBE, - D3DXPT_SAMPLER, - D3DXPT_SAMPLER1D, - D3DXPT_SAMPLER2D, - D3DXPT_SAMPLER3D, - D3DXPT_SAMPLERCUBE, - D3DXPT_PIXELSHADER, - D3DXPT_VERTEXSHADER, - D3DXPT_PIXELFRAGMENT, - D3DXPT_VERTEXFRAGMENT -} - -align(4) struct D3DXTECHNIQUE_DESC -{ - LPCSTR Name; // Technique name - UINT Passes; // Number of passes - UINT Annotations; // Number of annotations -} - -align(4) struct D3DXPASS_DESC -{ - LPCSTR Name; // Pass name - UINT Annotations; // Number of annotations - - DWORD *pVertexShaderFunction; // Vertex shader function - DWORD *pPixelShaderFunction; // Pixel shader function -} - -align(4) struct D3DXFUNCTION_DESC -{ - LPCSTR Name; // Function name - UINT Annotations; // Number of annotations -} - -struct D3DXTRACK_DESC -{ - DWORD Priority; - FLOAT Weight = 0; - FLOAT Speed = 0; - double Position = 0; - BOOL Enable; -} - -align(4) struct D3DXEVENT_DESC -{ - DWORD Type; - UINT Track; - double StartTime = 0; - double Duration = 0; - DWORD Transition; - union - { - FLOAT Weight = 0; - FLOAT Speed; - double Position; - BOOL Enable; - }; -} - -align(4) struct D3DXKEY_VECTOR3 -{ - FLOAT Time = 0; - D3DXVECTOR3 Value; -} - -align(4) struct D3DXKEY_QUATERNION -{ - FLOAT Time = 0; - D3DXQUATERNION Value; -} - -align(4) struct D3DXKEY_CALLBACK -{ - FLOAT Time = 0; - LPVOID pCallbackData; -} - -align(4) struct D3DXIMAGE_INFO -{ - UINT Width; - UINT Height; - UINT Depth; - UINT MipLevels; - D3DFORMAT Format; - D3DRESOURCETYPE ResourceType; - D3DXIMAGE_FILEFORMAT ImageFileFormat; -} - -alias uint D3DXIMAGE_FILEFORMAT; -enum : uint -{ - D3DXIFF_BMP = 0, - D3DXIFF_JPG = 1, - D3DXIFF_TGA = 2, - D3DXIFF_PNG = 3, - D3DXIFF_DDS = 4, - D3DXIFF_PPM = 5, - D3DXIFF_DIB = 6, -} - -align(4) struct D3DXATTRIBUTEWEIGHTS -{ - FLOAT Position = 0; - FLOAT Boundary = 0; - FLOAT Normal = 0; - FLOAT Diffuse = 0; - FLOAT Specular = 0; - FLOAT Texcoord[8] = 0; - FLOAT Tangent = 0; - FLOAT Binormal = 0; -} - -align(4) struct D3DXPLANE -{ - FLOAT a = 0, b = 0, c = 0, d = 0; -} - -alias uint D3DXMESH; -enum : uint -{ - D3DXMESH_32BIT = 0x001, - D3DXMESH_DONOTCLIP = 0x002, - D3DXMESH_POINTS = 0x004, - D3DXMESH_RTPATCHES = 0x008, - D3DXMESH_NPATCHES = 0x4000, - D3DXMESH_VB_SYSTEMMEM = 0x010, - D3DXMESH_VB_MANAGED = 0x020, - D3DXMESH_VB_WRITEONLY = 0x040, - D3DXMESH_VB_DYNAMIC = 0x080, - D3DXMESH_VB_SOFTWAREPROCESSING = 0x8000, - D3DXMESH_IB_SYSTEMMEM = 0x100, - D3DXMESH_IB_MANAGED = 0x200, - D3DXMESH_IB_WRITEONLY = 0x400, - D3DXMESH_IB_DYNAMIC = 0x800, - D3DXMESH_IB_SOFTWAREPROCESSING= 0x10000, - D3DXMESH_VB_SHARE = 0x1000, - D3DXMESH_USEHWONLY = 0x2000, - D3DXMESH_SYSTEMMEM = 0x110, - D3DXMESH_MANAGED = 0x220, - D3DXMESH_WRITEONLY = 0x440, - D3DXMESH_DYNAMIC = 0x880, - D3DXMESH_SOFTWAREPROCESSING = 0x18000, -} - -align(4) struct D3DXMACRO -{ - LPCSTR Name; - LPCSTR Definition; -} - -align(4) struct D3DXSEMANTIC -{ - UINT Usage; - UINT UsageIndex; -} - -alias uint D3DXINCLUDE_TYPE; -enum : uint -{ - D3DXINC_LOCAL, - D3DXINC_SYSTEM, -} - -enum : uint -{ - D3DXFX_DONOTSAVESTATE = (1 << 0), - D3DXFX_DONOTSAVESHADERSTATE = (1 << 1), - D3DXFX_DONOTSAVESAMPLERSTATE = (1 << 2), - D3DXFX_NOT_CLONEABLE = (1 << 11) -} - -alias uint D3DXMESHSIMP; -enum : uint -{ - D3DXMESHSIMP_VERTEX = 0x1, - D3DXMESHSIMP_FACE = 0x2 -} - -enum : uint -{ - DT_TOP = 0x00000000, - DT_LEFT = 0x00000000, - DT_CENTER = 0x00000001, - DT_RIGHT = 0x00000002, - DT_VCENTER = 0x00000004, - DT_BOTTOM = 0x00000008, - DT_WORDBREAK = 0x00000010, - DT_SINGLELINE = 0x00000020, - DT_EXPANDTABS = 0x00000040, - DT_TABSTOP = 0x00000080, - DT_NOCLIP = 0x00000100, - DT_EXTERNALLEADING = 0x00000200, - DT_CALCRECT = 0x00000400, - DT_NOPREFIX = 0x00000800, - DT_INTERNAL = 0x00001000 -} - -enum : uint -{ - D3DXSPRITE_DONOTSAVESTATE = (1 << 0), - D3DXSPRITE_DONOTMODIFY_RENDERSTATE = (1 << 1), - D3DXSPRITE_OBJECTSPACE = (1 << 2), - D3DXSPRITE_BILLBOARD = (1 << 3), - D3DXSPRITE_ALPHABLEND = (1 << 4), - D3DXSPRITE_SORT_TEXTURE = (1 << 5), - D3DXSPRITE_SORT_DEPTH_FRONTTOBACK = (1 << 6), - D3DXSPRITE_SORT_DEPTH_BACKTOFRONT = (1 << 7) -} - -enum : uint -{ - D3DX_FILTER_NONE = (1 << 0), - D3DX_FILTER_POINT = (2 << 0), - D3DX_FILTER_LINEAR = (3 << 0), - D3DX_FILTER_TRIANGLE = (4 << 0), - D3DX_FILTER_BOX = (5 << 0), - D3DX_FILTER_MIRROR_U = (1 << 16), - D3DX_FILTER_MIRROR_V = (2 << 16), - D3DX_FILTER_MIRROR_W = (4 << 16), - D3DX_FILTER_MIRROR = (7 << 16), - D3DX_FILTER_DITHER = (1 << 19), - D3DX_FILTER_DITHER_DIFFUSION = (2 << 19), - D3DX_FILTER_SRGB_IN = (1 << 21), - D3DX_FILTER_SRGB_OUT = (2 << 21), - D3DX_FILTER_SRGB = (3 << 21) -} - -const uint D3DX_DEFAULT = cast(UINT) -1; - -alias uint D3DXMESHOPT; -enum : uint -{ - D3DXMESHOPT_COMPACT = 0x01000000, - D3DXMESHOPT_ATTRSORT = 0x02000000, - D3DXMESHOPT_VERTEXCACHE = 0x04000000, - D3DXMESHOPT_STRIPREORDER = 0x08000000, - D3DXMESHOPT_IGNOREVERTS = 0x10000000, // optimize faces only, don't touch vertices - D3DXMESHOPT_DONOTSPLIT = 0x20000000, // do not split vertices shared between attribute groups when attribute sorting - D3DXMESHOPT_DEVICEINDEPENDENT = 0x00400000 // Only affects VCache. uses a static known good cache size for all cards -} - -enum : uint -{ - D3DXPLAY_LOOP = 0, - D3DXPLAY_ONCE = 1, - D3DXPLAY_PINGPONG = 2 -} -alias uint D3DXPLAYBACK_TYPE; - - -// D3DX Interfaces --------------------------------------------------------------------------------------- - -interface ID3DXSkinInfo : IUnknown -{ - extern(Windows): - - // Specify the which vertices do each bones influence and by how much - HRESULT SetBoneInfluence(DWORD bone, DWORD numInfluences, DWORD* vertices, FLOAT* weights); - HRESULT SetBoneVertexInfluence(DWORD boneNum, DWORD influenceNum, float weight); - DWORD GetNumBoneInfluences(DWORD bone); - HRESULT GetBoneInfluence(DWORD bone, DWORD* vertices, FLOAT* weights); - HRESULT GetBoneVertexInfluence(DWORD boneNum, DWORD influenceNum, float *pWeight, DWORD *pVertexNum); - HRESULT GetMaxVertexInfluences(DWORD* maxVertexInfluences); - DWORD GetNumBones(); - HRESULT FindBoneVertexInfluenceIndex(DWORD boneNum, DWORD vertexNum, DWORD *pInfluenceIndex); - - // This gets the max face influences based on a triangle mesh with the specified index buffer - HRESULT GetMaxFaceInfluences(IDirect3DIndexBuffer9 pIB, DWORD NumFaces, DWORD* maxFaceInfluences); - - // Set min bone influence. Bone influences that are smaller than this are ignored - HRESULT SetMinBoneInfluence(FLOAT MinInfl); - // Get min bone influence. - FLOAT GetMinBoneInfluence(); - - // Bone names are returned by D3DXLoadSkinMeshFromXof. They are not used by any other method of this object - HRESULT SetBoneName(DWORD Bone, LPCSTR pName); // pName is copied to an internal string buffer - LPCSTR GetBoneName(DWORD Bone); // A pointer to an internal string buffer is returned. Do not free this. - - // Bone offset matrices are returned by D3DXLoadSkinMeshFromXof. They are not used by any other method of this object - HRESULT SetBoneOffsetMatrix(DWORD Bone, D3DXMATRIX *pBoneTransform); // pBoneTransform is copied to an internal buffer - D3DXMATRIX* GetBoneOffsetMatrix(DWORD Bone); // A pointer to an internal matrix is returned. Do not free this. - - // Clone a skin info object - HRESULT Clone(ID3DXSkinInfo* ppSkinInfo); - - // Update bone influence information to match vertices after they are reordered. This should be called - // if the target vertex buffer has been reordered externally. - HRESULT Remap(DWORD NumVertices, DWORD* pVertexRemap); - - // These methods enable the modification of the vertex layout of the vertices that will be skinned - HRESULT SetFVF(DWORD FVF); - HRESULT SetDeclaration(D3DVERTEXELEMENT9 *pDeclaration); - DWORD GetFVF(); - HRESULT GetDeclaration(D3DVERTEXELEMENT9 Declaration[MAX_FVF_DECL_SIZE]); - - // Apply SW skinning based on current pose matrices to the target vertices. - HRESULT UpdateSkinnedMesh( - D3DXMATRIX* pBoneTransforms, - D3DXMATRIX* pBoneInvTransposeTransforms, - LPCVOID pVerticesSrc, - PVOID pVerticesDst); - - // Takes a mesh and returns a new mesh with per vertex blend weights and a bone combination - // table that describes which bones affect which subsets of the mesh - HRESULT ConvertToBlendedMesh( - ID3DXMesh pMesh, - DWORD Options, - DWORD *pAdjacencyIn, - LPDWORD pAdjacencyOut, - DWORD* pFaceRemap, - ID3DXBuffer* ppVertexRemap, - DWORD* pMaxFaceInfl, - DWORD* pNumBoneCombinations, - ID3DXBuffer* ppBoneCombinationTable, - ID3DXMesh* ppMesh); - - // Takes a mesh and returns a new mesh with per vertex blend weights and indices - // and a bone combination table that describes which bones palettes affect which subsets of the mesh - HRESULT ConvertToIndexedBlendedMesh( - ID3DXMesh pMesh, - DWORD Options, - DWORD paletteSize, - DWORD *pAdjacencyIn, - LPDWORD pAdjacencyOut, - DWORD* pFaceRemap, - ID3DXBuffer* ppVertexRemap, - DWORD* pMaxVertexInfl, - DWORD *pNumBoneCombinations, - ID3DXBuffer* ppBoneCombinationTable, - ID3DXMesh* ppMesh); -} - -interface ID3DXBaseMesh : IUnknown -{ - extern(Windows): - - // ID3DXBaseMesh - HRESULT DrawSubset( DWORD AttribId) ; - DWORD GetNumFaces() ; - DWORD GetNumVertices() ; - DWORD GetFVF() ; - HRESULT GetDeclaration( D3DVERTEXELEMENT9 Declaration[MAX_FVF_DECL_SIZE]) ; - DWORD GetNumBytesPerVertex() ; - DWORD GetOptions() ; - HRESULT GetDevice( IDirect3DDevice9* ppDevice) ; - HRESULT CloneMeshFVF( DWORD Options, - DWORD FVF, IDirect3DDevice9 pD3DDevice, ID3DXMesh* ppCloneMesh) ; - HRESULT CloneMesh( DWORD Options, - D3DVERTEXELEMENT9 *pDeclaration, IDirect3DDevice9 pD3DDevice, ID3DXMesh* ppCloneMesh) ; - HRESULT GetVertexBuffer( IDirect3DVertexBuffer9* ppVB) ; - HRESULT GetIndexBuffer( IDirect3DIndexBuffer9* ppIB) ; - HRESULT LockVertexBuffer( DWORD Flags, LPVOID *ppData) ; - HRESULT UnlockVertexBuffer() ; - HRESULT LockIndexBuffer( DWORD Flags, LPVOID *ppData) ; - HRESULT UnlockIndexBuffer() ; - HRESULT GetAttributeTable( - D3DXATTRIBUTERANGE *pAttribTable, DWORD* pAttribTableSize) ; - - HRESULT ConvertPointRepsToAdjacency( DWORD* pPRep, DWORD* pAdjacency) ; - HRESULT ConvertAdjacencyToPointReps( DWORD* pAdjacency, DWORD* pPRep) ; - HRESULT GenerateAdjacency( FLOAT Epsilon, DWORD* pAdjacency) ; - - HRESULT UpdateSemantics( D3DVERTEXELEMENT9 Declaration[MAX_FVF_DECL_SIZE]) ; -} - -interface ID3DXMesh : ID3DXBaseMesh -{ - extern(Windows): - - // ID3DXMesh - HRESULT LockAttributeBuffer( DWORD Flags, DWORD** ppData) ; - HRESULT UnlockAttributeBuffer() ; - HRESULT Optimize( DWORD Flags, DWORD* pAdjacencyIn, DWORD* pAdjacencyOut, - DWORD* pFaceRemap, ID3DXBuffer *ppVertexRemap, - ID3DXMesh* ppOptMesh) ; - HRESULT OptimizeInplace( DWORD Flags, DWORD* pAdjacencyIn, DWORD* pAdjacencyOut, - DWORD* pFaceRemap, ID3DXBuffer *ppVertexRemap) ; - HRESULT SetAttributeTable( D3DXATTRIBUTERANGE *pAttribTable, DWORD cAttribTableSize) ; -} - -interface ID3DXBuffer : IUnknown -{ - extern(Windows): - - // ID3DXBuffer - LPVOID GetBufferPointer(); - DWORD GetBufferSize(); -} - -interface ID3DXPMesh : ID3DXBaseMesh -{ - extern(Windows): - - // ID3DXPMesh - HRESULT ClonePMeshFVF( DWORD Options, - DWORD FVF, IDirect3DDevice9 pD3DDevice, ID3DXPMesh* ppCloneMesh) ; - HRESULT ClonePMesh( DWORD Options, - D3DVERTEXELEMENT9 *pDeclaration, IDirect3DDevice9 pD3DDevice, ID3DXPMesh* ppCloneMesh) ; - HRESULT SetNumFaces( DWORD Faces) ; - HRESULT SetNumVertices( DWORD Vertices) ; - DWORD GetMaxFaces() ; - DWORD GetMinFaces() ; - DWORD GetMaxVertices() ; - DWORD GetMinVertices() ; - HRESULT Save( void *pStream, D3DXMATERIAL* pMaterials, D3DXEFFECTINSTANCE* pEffectInstances, DWORD NumMaterials) ; - - HRESULT Optimize( DWORD Flags, DWORD* pAdjacencyOut, - DWORD* pFaceRemap, ID3DXBuffer *ppVertexRemap, - ID3DXMesh* ppOptMesh) ; - - HRESULT OptimizeBaseLOD( DWORD Flags, DWORD* pFaceRemap) ; - HRESULT TrimByFaces( DWORD NewFacesMin, DWORD NewFacesMax, DWORD *rgiFaceRemap, DWORD *rgiVertRemap) ; - HRESULT TrimByVertices( DWORD NewVerticesMin, DWORD NewVerticesMax, DWORD *rgiFaceRemap, DWORD *rgiVertRemap) ; - - HRESULT GetAdjacency( DWORD* pAdjacency) ; - - // Used to generate the immediate "ancestor" for each vertex when it is removed by a vsplit. Allows generation of geomorphs - // Vertex buffer must be equal to or greater than the maximum number of vertices in the pmesh - HRESULT GenerateVertexHistory( DWORD* pVertexHistory) ; -} - -interface ID3DXPatchMesh : IUnknown -{ - extern(Windows): - - // ID3DXPatchMesh - - // Return creation parameters - DWORD GetNumPatches() ; - DWORD GetNumVertices() ; - HRESULT GetDeclaration( D3DVERTEXELEMENT9 Declaration[MAX_FVF_DECL_SIZE]) ; - DWORD GetControlVerticesPerPatch() ; - DWORD GetOptions() ; - HRESULT GetDevice( IDirect3DDevice9 *ppDevice) ; - HRESULT GetPatchInfo( D3DXPATCHINFO* PatchInfo) ; - - // Control mesh access - HRESULT GetVertexBuffer( IDirect3DVertexBuffer9* ppVB) ; - HRESULT GetIndexBuffer( IDirect3DIndexBuffer9* ppIB) ; - HRESULT LockVertexBuffer( DWORD flags, LPVOID *ppData) ; - HRESULT UnlockVertexBuffer() ; - HRESULT LockIndexBuffer( DWORD flags, LPVOID *ppData) ; - HRESULT UnlockIndexBuffer() ; - HRESULT LockAttributeBuffer( DWORD flags, DWORD** ppData) ; - HRESULT UnlockAttributeBuffer() ; - - // function returns the size of the tessellated mesh given a tessellation level. - // assumes uniform tessellation. For adaptive tessellation the Adaptive parameter must - // be set to TRUE and TessellationLevel should be the max tessellation. - // will result in the max mesh size necessary for adaptive tessellation. - HRESULT GetTessSize( FLOAT fTessLevel,DWORD Adaptive, DWORD *NumTriangles,DWORD *NumVertices) ; - - //GenerateAdjacency determines which patches are adjacent with provided tolerance - // information is used internally to optimize tessellation - HRESULT GenerateAdjacency( FLOAT Tolerance) ; - - //CloneMesh Creates a new patchmesh with the specified decl, and converts the vertex buffer - //to the new decl. Entries in the new decl which are new are set to 0. If the current mesh - //has adjacency, the new mesh will also have adjacency - HRESULT CloneMesh( DWORD Options, D3DVERTEXELEMENT9 *pDecl, ID3DXPatchMesh *pMesh) ; - - // Optimizes the patchmesh for efficient tessellation. function is designed - // to perform one time optimization for patch meshes that need to be tessellated - // repeatedly by calling the Tessellate() method. The optimization performed is - // independent of the actual tessellation level used. - // Currently Flags is unused. - // If vertices are changed, Optimize must be called again - HRESULT Optimize( DWORD flags) ; - - //gets and sets displacement parameters - //displacement maps can only be 2D textures MIP-MAPPING is ignored for non adapative tessellation - HRESULT SetDisplaceParam( IDirect3DBaseTexture9 Texture, - D3DTEXTUREFILTERTYPE MinFilter, - D3DTEXTUREFILTERTYPE MagFilter, - D3DTEXTUREFILTERTYPE MipFilter, - D3DTEXTUREADDRESS Wrap, - DWORD dwLODBias) ; - - HRESULT GetDisplaceParam( IDirect3DBaseTexture9 *Texture, - D3DTEXTUREFILTERTYPE *MinFilter, - D3DTEXTUREFILTERTYPE *MagFilter, - D3DTEXTUREFILTERTYPE *MipFilter, - D3DTEXTUREADDRESS *Wrap, - DWORD *dwLODBias) ; - - // Performs the uniform tessellation based on the tessellation level. - // function will perform more efficiently if the patch mesh has been optimized using the Optimize() call. - HRESULT Tessellate( FLOAT fTessLevel,ID3DXMesh pMesh) ; - - // Performs adaptive tessellation based on the Z based adaptive tessellation criterion. - // pTrans specifies a 4D vector that is dotted with the vertices to get the per vertex - // adaptive tessellation amount. Each edge is tessellated to the average of the criterion - // at the 2 vertices it connects. - // MaxTessLevel specifies the upper limit for adaptive tesselation. - // function will perform more efficiently if the patch mesh has been optimized using the Optimize() call. - HRESULT TessellateAdaptive( - D3DXVECTOR4 *pTrans, - DWORD dwMaxTessLevel, - DWORD dwMinTessLevel, - ID3DXMesh pMesh) ; - -} - -interface ID3DXFont : IUnknown -{ - extern(Windows): - - // ID3DXFont - HRESULT GetDevice( IDirect3DDevice9 *ppDevice) ; - HRESULT GetDescA( D3DXFONT_DESCA *pDesc) ; - HRESULT GetDescW( D3DXFONT_DESCW *pDesc) ; - BOOL GetTextMetricsA( TEXTMETRICA *pTextMetrics) ; - BOOL GetTextMetricsW( TEXTMETRICW *pTextMetrics) ; - - HDC GetDC() ; - HRESULT GetGlyphData( UINT Glyph, IDirect3DTexture9 *ppTexture, RECT *pBlackBox, POINT *pCellInc) ; - - HRESULT PreloadCharacters( UINT First, UINT Last) ; - HRESULT PreloadGlyphs( UINT First, UINT Last) ; - HRESULT PreloadTextA( LPCSTR pString, INT Count) ; - HRESULT PreloadTextW( LPCWSTR pString, INT Count) ; - - INT DrawTextA( ID3DXSprite pSprite, LPCSTR pString, INT Count, LPRECT pRect, DWORD Format, D3DCOLOR Color) ; - INT DrawTextW( ID3DXSprite pSprite, LPCWSTR pString, INT Count, LPRECT pRect, DWORD Format, D3DCOLOR Color) ; - - HRESULT OnLostDevice() ; - HRESULT OnResetDevice() ; -} - -interface ID3DXSprite : IUnknown -{ - extern(Windows): - - // ID3DXSprite - HRESULT GetDevice( IDirect3DDevice9* ppDevice) ; - - HRESULT GetTransform( D3DXMATRIX *pTransform) ; - HRESULT SetTransform( D3DXMATRIX *pTransform) ; - - HRESULT SetWorldViewRH( D3DXMATRIX *pWorld, D3DXMATRIX *pView) ; - HRESULT SetWorldViewLH( D3DXMATRIX *pWorld, D3DXMATRIX *pView) ; - - HRESULT Begin( DWORD Flags) ; - HRESULT Draw( IDirect3DTexture9 pTexture, RECT *pSrcRect, D3DXVECTOR3 *pCenter, D3DXVECTOR3 *pPosition, D3DCOLOR Color) ; - HRESULT Flush() ; - HRESULT End() ; - - HRESULT OnLostDevice() ; - HRESULT OnResetDevice() ; -} - -interface ID3DXBaseEffect : IUnknown -{ - extern(Windows): - - // Descs - HRESULT GetDesc( D3DXEFFECT_DESC* pDesc) ; - HRESULT GetParameterDesc( D3DXHANDLE hParameter, D3DXPARAMETER_DESC* pDesc) ; - HRESULT GetTechniqueDesc( D3DXHANDLE hTechnique, D3DXTECHNIQUE_DESC* pDesc) ; - HRESULT GetPassDesc( D3DXHANDLE hPass, D3DXPASS_DESC* pDesc) ; - HRESULT GetFunctionDesc( D3DXHANDLE hShader, D3DXFUNCTION_DESC* pDesc) ; - - // Handle operations - D3DXHANDLE GetParameter( D3DXHANDLE hParameter, UINT Index) ; - D3DXHANDLE GetParameterByName( D3DXHANDLE hParameter, LPCSTR pName) ; - D3DXHANDLE GetParameterBySemantic( D3DXHANDLE hParameter, LPCSTR pSemantic) ; - D3DXHANDLE GetParameterElement( D3DXHANDLE hParameter, UINT Index) ; - D3DXHANDLE GetTechnique( UINT Index) ; - D3DXHANDLE GetTechniqueByName( LPCSTR pName) ; - D3DXHANDLE GetPass( D3DXHANDLE hTechnique, UINT Index) ; - D3DXHANDLE GetPassByName( D3DXHANDLE hTechnique, LPCSTR pName) ; - D3DXHANDLE GetFunction( UINT Index) ; - D3DXHANDLE GetFunctionByName( LPCSTR pName) ; - D3DXHANDLE GetAnnotation( D3DXHANDLE hObject, UINT Index) ; - D3DXHANDLE GetAnnotationByName( D3DXHANDLE hObject, LPCSTR pName) ; - - // Get/Set Parameters - HRESULT SetValue( D3DXHANDLE hParameter, LPCVOID pData, UINT Bytes) ; - HRESULT GetValue( D3DXHANDLE hParameter, LPVOID pData, UINT Bytes) ; - HRESULT SetBool( D3DXHANDLE hParameter, BOOL b) ; - HRESULT GetBool( D3DXHANDLE hParameter, BOOL* pb) ; - HRESULT SetBoolArray( D3DXHANDLE hParameter, BOOL* pb, UINT Count) ; - HRESULT GetBoolArray( D3DXHANDLE hParameter, BOOL* pb, UINT Count) ; - HRESULT SetInt( D3DXHANDLE hParameter, INT n) ; - HRESULT GetInt( D3DXHANDLE hParameter, INT* pn) ; - HRESULT SetIntArray( D3DXHANDLE hParameter, INT* pn, UINT Count) ; - HRESULT GetIntArray( D3DXHANDLE hParameter, INT* pn, UINT Count) ; - HRESULT SetFloat( D3DXHANDLE hParameter, FLOAT f) ; - HRESULT GetFloat( D3DXHANDLE hParameter, FLOAT* pf) ; - HRESULT SetFloatArray( D3DXHANDLE hParameter, FLOAT* pf, UINT Count) ; - HRESULT GetFloatArray( D3DXHANDLE hParameter, FLOAT* pf, UINT Count) ; - HRESULT SetVector( D3DXHANDLE hParameter, D3DXVECTOR4* pVector) ; - HRESULT GetVector( D3DXHANDLE hParameter, D3DXVECTOR4* pVector) ; - HRESULT SetVectorArray( D3DXHANDLE hParameter, D3DXVECTOR4* pVector, UINT Count) ; - HRESULT GetVectorArray( D3DXHANDLE hParameter, D3DXVECTOR4* pVector, UINT Count) ; - HRESULT SetMatrix( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix) ; - HRESULT GetMatrix( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix) ; - HRESULT SetMatrixArray( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix, UINT Count) ; - HRESULT GetMatrixArray( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix, UINT Count) ; - HRESULT SetMatrixPointerArray( D3DXHANDLE hParameter, D3DXMATRIX** ppMatrix, UINT Count) ; - HRESULT GetMatrixPointerArray( D3DXHANDLE hParameter, D3DXMATRIX** ppMatrix, UINT Count) ; - HRESULT SetMatrixTranspose( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix) ; - HRESULT GetMatrixTranspose( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix) ; - HRESULT SetMatrixTransposeArray( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix, UINT Count) ; - HRESULT GetMatrixTransposeArray( D3DXHANDLE hParameter, D3DXMATRIX* pMatrix, UINT Count) ; - HRESULT SetMatrixTransposePointerArray( D3DXHANDLE hParameter, D3DXMATRIX** ppMatrix, UINT Count) ; - HRESULT GetMatrixTransposePointerArray( D3DXHANDLE hParameter, D3DXMATRIX** ppMatrix, UINT Count) ; - HRESULT SetString( D3DXHANDLE hParameter, LPCSTR pString) ; - HRESULT GetString( D3DXHANDLE hParameter, LPCSTR* ppString) ; - HRESULT SetTexture( D3DXHANDLE hParameter, IDirect3DBaseTexture9 pTexture) ; - HRESULT GetTexture( D3DXHANDLE hParameter, IDirect3DBaseTexture9 *ppTexture) ; - HRESULT GetPixelShader( D3DXHANDLE hParameter, IDirect3DPixelShader9 *ppPShader) ; - HRESULT GetVertexShader( D3DXHANDLE hParameter, IDirect3DVertexShader9 *ppVShader) ; - - //Set Range of an Array to pass to device - //Useful for sending only a subrange of an array down to the device - HRESULT SetArrayRange( D3DXHANDLE hParameter, UINT uStart, UINT uEnd) ; - -} - -interface ID3DXEffect : ID3DXBaseEffect -{ - extern(Windows): - - // Pool - HRESULT GetPool( ID3DXEffectPool* ppPool) ; - - // Selecting and setting a technique - HRESULT SetTechnique( D3DXHANDLE hTechnique) ; - D3DXHANDLE GetCurrentTechnique() ; - HRESULT ValidateTechnique( D3DXHANDLE hTechnique) ; - HRESULT FindNextValidTechnique( D3DXHANDLE hTechnique, D3DXHANDLE *pTechnique) ; - BOOL IsParameterUsed( D3DXHANDLE hParameter, D3DXHANDLE hTechnique) ; - - // Using current technique - // Begin starts active technique - // BeginPass begins a pass - // CommitChanges updates changes to any set calls in the pass. should be called before - // any DrawPrimitive call to d3d - // EndPass ends a pass - // End ends active technique - HRESULT Begin( UINT *pPasses, DWORD Flags) ; - HRESULT BeginPass( UINT Pass) ; - HRESULT CommitChanges() ; - HRESULT EndPass() ; - HRESULT End() ; - - // Managing D3D Device - HRESULT GetDevice( IDirect3DDevice9* ppDevice) ; - HRESULT OnLostDevice() ; - HRESULT OnResetDevice() ; - - // Logging device calls - HRESULT SetStateManager( ID3DXEffectStateManager pManager) ; - HRESULT GetStateManager( ID3DXEffectStateManager *ppManager) ; - - // Parameter blocks - HRESULT BeginParameterBlock() ; - D3DXHANDLE EndParameterBlock() ; - HRESULT ApplyParameterBlock( D3DXHANDLE hParameterBlock) ; - HRESULT DeleteParameterBlock( D3DXHANDLE hParameterBlock) ; - - // Cloning - HRESULT CloneEffect( IDirect3DDevice9 pDevice, ID3DXEffect* ppEffect) ; -} - -interface ID3DXEffectPool : IUnknown -{ - extern(Windows): - - // No public methods -} - -interface ID3DXEffectStateManager : IUnknown -{ - extern(Windows): - - // The following methods are called by the Effect when it wants to make - // the corresponding device call. Note that: - // 1. Users manage the state and are therefore responsible for making the - // the corresponding device calls themselves inside their callbacks. - // 2. Effects pay attention to the return values of the callbacks, and so - // users must pay attention to what they return in their callbacks. - - HRESULT SetTransform( D3DTRANSFORMSTATETYPE State, D3DMATRIX *pMatrix) ; - HRESULT SetMaterial( D3DMATERIAL9 *pMaterial) ; - HRESULT SetLight( DWORD Index, D3DLIGHT9 *pLight) ; - HRESULT LightEnable( DWORD Index, BOOL Enable) ; - HRESULT SetRenderState( D3DRENDERSTATETYPE State, DWORD Value) ; - HRESULT SetTexture( DWORD Stage, IDirect3DBaseTexture9 pTexture) ; - HRESULT SetTextureStageState( DWORD Stage, D3DTEXTURESTAGESTATETYPE Type, DWORD Value) ; - HRESULT SetSamplerState( DWORD Sampler, D3DSAMPLERSTATETYPE Type, DWORD Value) ; - HRESULT SetNPatchMode( FLOAT NumSegments) ; - HRESULT SetFVF( DWORD FVF) ; - HRESULT SetVertexShader( IDirect3DVertexShader9 pShader) ; - HRESULT SetVertexShaderConstantF( UINT RegisterIndex, FLOAT *pConstantData, UINT RegisterCount) ; - HRESULT SetVertexShaderConstantI( UINT RegisterIndex, INT *pConstantData, UINT RegisterCount) ; - HRESULT SetVertexShaderConstantB( UINT RegisterIndex, BOOL *pConstantData, UINT RegisterCount) ; - HRESULT SetPixelShader( IDirect3DPixelShader9 pShader) ; - HRESULT SetPixelShaderConstantF( UINT RegisterIndex, FLOAT *pConstantData, UINT RegisterCount) ; - HRESULT SetPixelShaderConstantI( UINT RegisterIndex, INT *pConstantData, UINT RegisterCount) ; - HRESULT SetPixelShaderConstantB( UINT RegisterIndex, BOOL *pConstantData, UINT RegisterCount) ; -} - -interface ID3DXInclude -{ - HRESULT Open(D3DXINCLUDE_TYPE IncludeType, LPCSTR pFileName, LPCVOID pParentData, LPCVOID *ppData, UINT *pBytes); - HRESULT Close(LPCVOID pData); -} - -// D3DX Functions --------------------------------------------------------------------------------------- -extern(Windows) -{ - uint D3DXGetShaderVersion(uint* pFunction); - - HRESULT D3DXCheckTextureRequirements( - IDirect3DDevice9 pDevice, - UINT* pWidth, - UINT* pHeight, - UINT* pNumMipLevels, - DWORD Usage, - D3DFORMAT* pFormat, - D3DPOOL Pool) ; - - HRESULT D3DXCreateTexture( - IDirect3DDevice9 pDevice, - UINT Width, - UINT Height, - UINT MipLevels, - DWORD Usage, - D3DFORMAT Format, - D3DPOOL Pool, - IDirect3DTexture9* ppTexture); - - HRESULT D3DXCreateCubeTexture( - IDirect3DDevice9 pDevice, - UINT Size, - UINT MipLevels, - DWORD Usage, - D3DFORMAT Format, - D3DPOOL Pool, - IDirect3DCubeTexture9* ppCubeTexture); - - HRESULT D3DXCreateTextureFromFileA( - LPDIRECT3DDEVICE9 pDevice, - LPCTSTR pSrcFile, - LPDIRECT3DTEXTURE9 * ppTexture); - - HRESULT D3DXCreateTextureFromFileExA( - IDirect3DDevice9 pDevice, - LPCSTR pSrcFile, - UINT Width, - UINT Height, - UINT MipLevels, - DWORD Usage, - D3DFORMAT Format, - D3DPOOL Pool, - DWORD Filter, - DWORD MipFilter, - D3DCOLOR ColorKey, - D3DXIMAGE_INFO* pSrcInfo, - PALETTEENTRY* pPalette, - IDirect3DTexture9* ppTexture); - - HRESULT D3DXCreateCubeTextureFromFileExA( - IDirect3DDevice9 pDevice, - LPCSTR pSrcFile, - UINT Size, - UINT MipLevels, - DWORD Usage, - D3DFORMAT Format, - D3DPOOL Pool, - DWORD Filter, - DWORD MipFilter, - D3DCOLOR ColorKey, - D3DXIMAGE_INFO* pSrcInfo, - PALETTEENTRY* pPalette, - IDirect3DCubeTexture9* ppCubeTexture); - - HRESULT D3DXSimplifyMesh( - ID3DXMesh pMesh, - DWORD* pAdjacency, - D3DXATTRIBUTEWEIGHTS *pVertexAttributeWeights, - FLOAT *pVertexWeights, - DWORD MinValue, - DWORD Options, - ID3DXMesh* ppMesh); - - HRESULT D3DXCreateSkinInfoFVF( - DWORD NumVertices, - DWORD FVF, - DWORD NumBones, - ID3DXSkinInfo* ppSkinInfo); - - D3DXVECTOR2* D3DXVec2TransformCoord( D3DXVECTOR2 *pOut, D3DXVECTOR2 *pV, D3DXMATRIX *pM ); - - D3DXVECTOR4* D3DXVec3Transform( D3DXVECTOR4 *pOut, D3DXVECTOR3 *pV, D3DXMATRIX *pM ); - - D3DXVECTOR3* D3DXVec3TransformCoord( D3DXVECTOR3 *pOut, D3DXVECTOR3 *pV, D3DXMATRIX *pM ); - - D3DXVECTOR4* D3DXVec4Transform( D3DXVECTOR4 *pOut, D3DXVECTOR4 *pV, D3DXMATRIX *pM ); - - D3DXMATRIX* D3DXMatrixTranspose( D3DXMATRIX *pOut, D3DXMATRIX *pM ); - - D3DXMATRIX* D3DXMatrixMultiply( D3DXMATRIX *pOut, D3DXMATRIX *pM1, D3DXMATRIX *pM2 ); - - D3DXMATRIX* D3DXMatrixInverse( D3DXMATRIX *pOut, FLOAT *pDeterminant, D3DXMATRIX *pM ); - - D3DXMATRIX* D3DXMatrixScaling( D3DXMATRIX *pOut, FLOAT sx, FLOAT sy, FLOAT sz ); - - D3DXMATRIX* D3DXMatrixTranslation( D3DXMATRIX *pOut, FLOAT x, FLOAT y, FLOAT z ); - - D3DXMATRIX* D3DXMatrixRotationX( D3DXMATRIX *pOut, FLOAT Angle ); - - D3DXMATRIX* D3DXMatrixRotationY( D3DXMATRIX *pOut, FLOAT Angle ); - - D3DXMATRIX* D3DXMatrixRotationZ( D3DXMATRIX *pOut, FLOAT Angle ); - - D3DXMATRIX* D3DXMatrixRotationQuaternion( D3DXMATRIX *pOut, D3DXQUATERNION *pQ); - - D3DXMATRIX* D3DXMatrixRotationYawPitchRoll( D3DXMATRIX *pOut, FLOAT Yaw, FLOAT Pitch, FLOAT Roll ); - - D3DXMATRIX* D3DXMatrixAffineTransformation2D( D3DXMATRIX *pOut, FLOAT Scaling, D3DXVECTOR2 *pRotationCenter, - float Rotation, D3DXVECTOR2 *pTranslation); - - D3DXMATRIX* D3DXMatrixPerspectiveFovLH( D3DXMATRIX *pOut, FLOAT fovy, FLOAT Aspect, FLOAT zn, FLOAT zf ); - - D3DXMATRIX* D3DXMatrixOrthoLH( D3DXMATRIX *pOut, FLOAT w, FLOAT h, FLOAT zn, FLOAT zf ); - - D3DXMATRIX* D3DXMatrixOrthoOffCenterLH( D3DXMATRIX *pOut, FLOAT l, FLOAT r, FLOAT b, FLOAT t, FLOAT zn, - FLOAT zf ); - - void D3DXQuaternionToAxisAngle( D3DXQUATERNION *pQ, D3DXVECTOR3 *pAxis, FLOAT *pAngle ); - - D3DXQUATERNION* D3DXQuaternionRotationMatrix( D3DXQUATERNION *pOut, D3DXMATRIX *pM); - - D3DXQUATERNION* D3DXQuaternionNormalize( D3DXQUATERNION *pOut, D3DXQUATERNION *pQ ); - - D3DXPLANE* D3DXPlaneNormalize( D3DXPLANE *pOut, D3DXPLANE *pP); - - char* DXGetErrorDescription9A(HRESULT hr); - - HRESULT D3DXCreateEffectFromFileA( - IDirect3DDevice9 pDevice, - LPCSTR pSrcFile, - D3DXMACRO* pDefines, - ID3DXInclude pInclude, - DWORD Flags, - ID3DXEffectPool pPool, - ID3DXEffect* ppEffect, - ID3DXBuffer* ppCompilationErrors); - - D3DXMATRIX* D3DXMatrixTransformation2D( D3DXMATRIX *pOut, D3DXVECTOR2 *pScalingCenter, - float *pScalingRotation, D3DXVECTOR2 *pScaling, - D3DXVECTOR2 *pRotationCenter, float Rotation, - D3DXVECTOR2 *pTranslation); - - HRESULT D3DXLoadMeshFromXA( - LPCSTR pFilename, - DWORD Options, - IDirect3DDevice9 pD3D, - ID3DXBuffer *ppAdjacency, - ID3DXBuffer *ppMaterials, - ID3DXBuffer *ppEffectInstances, - DWORD *pNumMaterials, - ID3DXMesh *ppMesh); - - HRESULT D3DXCreatePolygon( - IDirect3DDevice9 pDevice, - FLOAT Length, - UINT Sides, - ID3DXMesh* ppMesh, - ID3DXBuffer* ppAdjacency); - - HRESULT D3DXCreateBox( - IDirect3DDevice9 pDevice, - FLOAT Width, - FLOAT Height, - FLOAT Depth, - ID3DXMesh* ppMesh, - ID3DXBuffer* ppAdjacency); - - HRESULT D3DXCreateCylinder( - IDirect3DDevice9 pDevice, - FLOAT Radius1, - FLOAT Radius2, - FLOAT Length, - UINT Slices, - UINT Stacks, - ID3DXMesh* ppMesh, - ID3DXBuffer* ppAdjacency); - - HRESULT D3DXCreateSphere( - IDirect3DDevice9 pDevice, - FLOAT Radius, - UINT Slices, - UINT Stacks, - ID3DXMesh* ppMesh, - ID3DXBuffer* ppAdjacency); - - HRESULT D3DXCreateTorus( - IDirect3DDevice9 pDevice, - FLOAT InnerRadius, - FLOAT OuterRadius, - UINT Sides, - UINT Rings, - ID3DXMesh* ppMesh, - ID3DXBuffer* ppAdjacency); - - HRESULT D3DXCreateTeapot( - IDirect3DDevice9 pDevice, - ID3DXMesh* ppMesh, - ID3DXBuffer* ppAdjacency); - - HRESULT D3DXCreateFontA( - IDirect3DDevice9 pDevice, - UINT Height, - UINT Width, - UINT Weight, - UINT MipLevels, - BOOL Italic, - DWORD CharSet, - DWORD OutputPrecision, - DWORD Quality, - DWORD PitchAndFamily, - LPCTSTR pFacename, - ID3DXFont *ppFont); - - HRESULT D3DXCreateSprite( - IDirect3DDevice9 pDevice, - ID3DXSprite* ppSprite) ; - - HRESULT D3DXCreateEffect( - IDirect3DDevice9 pDevice, - LPCVOID pSrcData, - UINT SrcDataLen, - D3DXMACRO* pDefines, - ID3DXInclude pInclude, - DWORD Flags, - ID3DXEffectPool pPool, - ID3DXEffect* ppEffect, - ID3DXBuffer* ppCompilationErrors); - - HRESULT D3DXCreateEffectPool( - ID3DXEffectPool* pEffectPool); - - HRESULT D3DXGetShaderInputSemantics( - DWORD* pFunction, - D3DXSEMANTIC* pSemantics, - UINT* pCount); - - HRESULT - D3DXCreateMeshFVF( - DWORD NumFaces, - DWORD NumVertices, - DWORD Options, - DWORD FVF, - IDirect3DDevice9 pD3DDevice, - ID3DXMesh* ppMesh); - - UINT D3DXGetFVFVertexSize(DWORD FVF); - - HRESULT D3DXFileCreate(ID3DXFile* lplpDirectXFile); - - HRESULT D3DXLoadMeshFromXof( - ID3DXFileData pxofMesh, - DWORD Options, - IDirect3DDevice9 pD3DDevice, - ID3DXBuffer *ppAdjacency, - ID3DXBuffer *ppMaterials, - ID3DXBuffer *ppEffectInstances, - DWORD *pNumMaterials, - ID3DXMesh *ppMesh); - - HRESULT D3DXConcatenateMeshes( - ID3DXMesh * ppMeshes, - UINT NumMeshes, - DWORD Options, - D3DXMATRIX * pGeomXForms, - D3DXMATRIX * pTextureXForms, - D3DVERTEXELEMENT9 * pDecl, - IDirect3DDevice9 pD3DDevice, - ID3DXMesh * ppMeshOut); - - HRESULT D3DXDeclaratorFromFVF(DWORD FVF, D3DVERTEXELEMENT9* Declaration); - - D3DXQUATERNION* D3DXQuaternionSlerp(D3DXQUATERNION* pOut, D3DXQUATERNION* pQ1, D3DXQUATERNION* pQ2, float t); - - D3DXVECTOR3* D3DXVec3CatmullRom(D3DXVECTOR3 *pOut, D3DXVECTOR3 *pV0, D3DXVECTOR3 *pV1, D3DXVECTOR3 *pV2, D3DXVECTOR3 *pV3, float s); - - void D3DXQuaternionSquadSetup( D3DXQUATERNION *pAOut, - D3DXQUATERNION *pBOut, - D3DXQUATERNION *pCOut, - D3DXQUATERNION *pQ0, - D3DXQUATERNION *pQ1, - D3DXQUATERNION *pQ2, - D3DXQUATERNION *pQ3); - - D3DXQUATERNION* D3DXQuaternionSquad(D3DXQUATERNION *pOut, - D3DXQUATERNION *pQ1, - D3DXQUATERNION *pA, - D3DXQUATERNION *pB, - D3DXQUATERNION *pC, - float t); - - HRESULT D3DXMatrixDecompose(D3DXVECTOR3 *pOutScale, - D3DXQUATERNION *pOutRotation, - D3DXVECTOR3 *pOutTranslation, - D3DXMATRIX *pM - ); - - D3DXQUATERNION* D3DXQuaternionRotationYawPitchRoll(D3DXQUATERNION *pOut, - FLOAT Yaw, - FLOAT Pitch, - FLOAT Roll - ); - - UINT D3DXGetDeclVertexSize(D3DVERTEXELEMENT9 *pDecl, DWORD Stream ); -} // extern(Windows) - -D3DXMATRIX* D3DXMatrixIdentity( D3DXMATRIX *pOut ) -{ - pOut.m[0][1] = pOut.m[0][2] = pOut.m[0][3] = - pOut.m[1][0] = pOut.m[1][2] = pOut.m[1][3] = - pOut.m[2][0] = pOut.m[2][1] = pOut.m[2][3] = - pOut.m[3][0] = pOut.m[3][1] = pOut.m[3][2] = 0.0f; - - pOut.m[0][0] = pOut.m[1][1] = pOut.m[2][2] = pOut.m[3][3] = 1.0f; - return pOut; -} - -FLOAT D3DXVec3LengthSq(D3DXVECTOR3* v) -{ - return (v.x * v.x) + (v.y * v.y) + (v.z * v.z); -} - -template DEFINE_GUID(uint d1, ushort d2, ushort d3, ubyte d4, ubyte d5, ubyte d6, ubyte d7, ubyte d8, ubyte d9, ubyte d10, ubyte d11) -{ - const GUID DEFINE_GUID = {d1, d2, d3, [d4, d5, d6, d7, d8, d9, d10, d11]}; -} - -const GUID TID_D3DRMInfo = DEFINE_GUID!(0x2b957100, 0x9e9a, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMMesh = DEFINE_GUID!(0x3d82ab44, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMVector = DEFINE_GUID!(0x3d82ab5e, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMMeshFace = DEFINE_GUID!(0x3d82ab5f, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMMaterial = DEFINE_GUID!(0x3d82ab4d, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMMaterialArray = DEFINE_GUID!(0x35ff44e1, 0x6c7c, 0x11cf, 0x8F, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMFrame = DEFINE_GUID!(0x3d82ab46, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMFrameTransformMatrix = DEFINE_GUID!(0xf6f23f41, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMeshMaterialList = DEFINE_GUID!(0xf6f23f42, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMeshTextureCoords = DEFINE_GUID!(0xf6f23f40, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMeshNormals = DEFINE_GUID!(0xf6f23f43, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMCoords2d = DEFINE_GUID!(0xf6f23f44, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMatrix4x4 = DEFINE_GUID!(0xf6f23f45, 0x7686, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMAnimation = DEFINE_GUID!(0x3d82ab4f, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMAnimationSet = DEFINE_GUID!(0x3d82ab50, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMAnimationKey = DEFINE_GUID!(0x10dd46a8, 0x775b, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMFloatKeys = DEFINE_GUID!(0x10dd46a9, 0x775b, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMMaterialAmbientColor = DEFINE_GUID!(0x01411840, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMMaterialDiffuseColor = DEFINE_GUID!(0x01411841, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMMaterialSpecularColor = DEFINE_GUID!(0x01411842, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMMaterialEmissiveColor = DEFINE_GUID!(0xd3e16e80, 0x7835, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMaterialPower = DEFINE_GUID!(0x01411843, 0x7786, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMColorRGBA = DEFINE_GUID!(0x35ff44e0, 0x6c7c, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xA3); -const GUID TID_D3DRMColorRGB = DEFINE_GUID!(0xd3e16e81, 0x7835, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMGuid = DEFINE_GUID!(0xa42790e0, 0x7810, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMTextureFilename = DEFINE_GUID!(0xa42790e1, 0x7810, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMTextureReference = DEFINE_GUID!(0xa42790e2, 0x7810, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMIndexedColor = DEFINE_GUID!(0x1630b820, 0x7842, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMeshVertexColors = DEFINE_GUID!(0x1630b821, 0x7842, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMMaterialWrap = DEFINE_GUID!(0x4885ae60, 0x78e8, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMBoolean = DEFINE_GUID!(0x537da6a0, 0xca37, 0x11d0, 0x94, 0x1c, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b); -const GUID TID_D3DRMMeshFaceWraps = DEFINE_GUID!(0xed1ec5c0, 0xc0a8, 0x11d0, 0x94, 0x1c, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b); -const GUID TID_D3DRMBoolean2d = DEFINE_GUID!(0x4885ae63, 0x78e8, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMTimedFloatKeys = DEFINE_GUID!(0xf406b180, 0x7b3b, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMAnimationOptions = DEFINE_GUID!(0xe2bf56c0, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMFramePosition = DEFINE_GUID!(0xe2bf56c1, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMFrameVelocity = DEFINE_GUID!(0xe2bf56c2, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMFrameRotation = DEFINE_GUID!(0xe2bf56c3, 0x840f, 0x11cf, 0x8f, 0x52, 0x0, 0x40, 0x33, 0x35, 0x94, 0xa3); -const GUID TID_D3DRMLight = DEFINE_GUID!(0x3d82ab4a, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMCamera = DEFINE_GUID!(0x3d82ab51, 0x62da, 0x11cf, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMAppData = DEFINE_GUID!(0xe5745280, 0xb24f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -const GUID TID_D3DRMLightUmbra = DEFINE_GUID!(0xaed22740, 0xb31f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -const GUID TID_D3DRMLightRange = DEFINE_GUID!(0xaed22742, 0xb31f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -const GUID TID_D3DRMLightPenumbra = DEFINE_GUID!(0xaed22741, 0xb31f, 0x11cf, 0x9d, 0xd5, 0x0, 0xaa, 0x0, 0xa7, 0x1a, 0x2f); -const GUID TID_D3DRMLightAttenuation = DEFINE_GUID!(0xa8a98ba0, 0xc5e5, 0x11cf, 0xb9, 0x41, 0x0, 0x80, 0xc8, 0xc, 0xfa, 0x7b); -const GUID TID_D3DRMInlineData = DEFINE_GUID!(0x3a23eea0, 0x94b1, 0x11d0, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMUrl = DEFINE_GUID!(0x3a23eea1, 0x94b1, 0x11d0, 0xab, 0x39, 0x0, 0x20, 0xaf, 0x71, 0xe4, 0x33); -const GUID TID_D3DRMProgressiveMesh = DEFINE_GUID!(0x8A63C360, 0x997D, 0x11d0, 0x94, 0x1C, 0x0, 0x80, 0xC8, 0x0C, 0xFA, 0x7B); -const GUID TID_D3DRMExternalVisual = DEFINE_GUID!(0x98116AA0, 0xBDBA, 0x11d1, 0x82, 0xC0, 0x00, 0xA0, 0xC9, 0x69, 0x72, 0x71); -const GUID TID_D3DRMStringProperty = DEFINE_GUID!(0x7f0f21e0, 0xbfe1, 0x11d1, 0x82, 0xc0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x71); -const GUID TID_D3DRMPropertyBag = DEFINE_GUID!(0x7f0f21e1, 0xbfe1, 0x11d1, 0x82, 0xc0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x71); -const GUID TID_D3DRMRightHanded = DEFINE_GUID!(0x7f5d5ea0, 0xd53a, 0x11d1, 0x82, 0xc0, 0x0, 0xa0, 0xc9, 0x69, 0x72, 0x71); - -ubyte D3DRM_XTEMPLATES[] = -[ - 0x78, 0x6f, 0x66, 0x20, 0x30, 0x33, 0x30, 0x32, 0x62, - 0x69, 0x6e, 0x20, 0x30, 0x30, 0x36, 0x34, 0x1f, 0, 0x1, - 0, 0x6, 0, 0, 0, 0x48, 0x65, 0x61, 0x64, 0x65, - 0x72, 0xa, 0, 0x5, 0, 0x43, 0xab, 0x82, 0x3d, 0xda, - 0x62, 0xcf, 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, - 0x33, 0x28, 0, 0x1, 0, 0x5, 0, 0, 0, 0x6d, - 0x61, 0x6a, 0x6f, 0x72, 0x14, 0, 0x28, 0, 0x1, 0, - 0x5, 0, 0, 0, 0x6d, 0x69, 0x6e, 0x6f, 0x72, 0x14, - 0, 0x29, 0, 0x1, 0, 0x5, 0, 0, 0, 0x66, - 0x6c, 0x61, 0x67, 0x73, 0x14, 0, 0xb, 0, 0x1f, 0, - 0x1, 0, 0x6, 0, 0, 0, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0xa, 0, 0x5, 0, 0x5e, 0xab, 0x82, 0x3d, - 0xda, 0x62, 0xcf, 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, - 0xe4, 0x33, 0x2a, 0, 0x1, 0, 0x1, 0, 0, 0, - 0x78, 0x14, 0, 0x2a, 0, 0x1, 0, 0x1, 0, 0, - 0, 0x79, 0x14, 0, 0x2a, 0, 0x1, 0, 0x1, 0, - 0, 0, 0x7a, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, - 0, 0x8, 0, 0, 0, 0x43, 0x6f, 0x6f, 0x72, 0x64, - 0x73, 0x32, 0x64, 0xa, 0, 0x5, 0, 0x44, 0x3f, 0xf2, - 0xf6, 0x86, 0x76, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, - 0x35, 0x94, 0xa3, 0x2a, 0, 0x1, 0, 0x1, 0, 0, - 0, 0x75, 0x14, 0, 0x2a, 0, 0x1, 0, 0x1, 0, - 0, 0, 0x76, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, - 0, 0x9, 0, 0, 0, 0x4d, 0x61, 0x74, 0x72, 0x69, - 0x78, 0x34, 0x78, 0x34, 0xa, 0, 0x5, 0, 0x45, 0x3f, - 0xf2, 0xf6, 0x86, 0x76, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, - 0x33, 0x35, 0x94, 0xa3, 0x34, 0, 0x2a, 0, 0x1, 0, - 0x6, 0, 0, 0, 0x6d, 0x61, 0x74, 0x72, 0x69, 0x78, - 0xe, 0, 0x3, 0, 0x10, 0, 0, 0, 0xf, 0, - 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, 0, 0x9, 0, - 0, 0, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x47, 0x42, - 0x41, 0xa, 0, 0x5, 0, 0xe0, 0x44, 0xff, 0x35, 0x7c, - 0x6c, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, - 0xa3, 0x2a, 0, 0x1, 0, 0x3, 0, 0, 0, 0x72, - 0x65, 0x64, 0x14, 0, 0x2a, 0, 0x1, 0, 0x5, 0, - 0, 0, 0x67, 0x72, 0x65, 0x65, 0x6e, 0x14, 0, 0x2a, - 0, 0x1, 0, 0x4, 0, 0, 0, 0x62, 0x6c, 0x75, - 0x65, 0x14, 0, 0x2a, 0, 0x1, 0, 0x5, 0, 0, - 0, 0x61, 0x6c, 0x70, 0x68, 0x61, 0x14, 0, 0xb, 0, - 0x1f, 0, 0x1, 0, 0x8, 0, 0, 0, 0x43, 0x6f, - 0x6c, 0x6f, 0x72, 0x52, 0x47, 0x42, 0xa, 0, 0x5, 0, - 0x81, 0x6e, 0xe1, 0xd3, 0x35, 0x78, 0xcf, 0x11, 0x8f, 0x52, - 0, 0x40, 0x33, 0x35, 0x94, 0xa3, 0x2a, 0, 0x1, 0, - 0x3, 0, 0, 0, 0x72, 0x65, 0x64, 0x14, 0, 0x2a, - 0, 0x1, 0, 0x5, 0, 0, 0, 0x67, 0x72, 0x65, - 0x65, 0x6e, 0x14, 0, 0x2a, 0, 0x1, 0, 0x4, 0, - 0, 0, 0x62, 0x6c, 0x75, 0x65, 0x14, 0, 0xb, 0, - 0x1f, 0, 0x1, 0, 0xc, 0, 0, 0, 0x49, 0x6e, - 0x64, 0x65, 0x78, 0x65, 0x64, 0x43, 0x6f, 0x6c, 0x6f, 0x72, - 0xa, 0, 0x5, 0, 0x20, 0xb8, 0x30, 0x16, 0x42, 0x78, - 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, - 0x29, 0, 0x1, 0, 0x5, 0, 0, 0, 0x69, 0x6e, - 0x64, 0x65, 0x78, 0x14, 0, 0x1, 0, 0x9, 0, 0, - 0, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x47, 0x42, 0x41, - 0x1, 0, 0xa, 0, 0, 0, 0x69, 0x6e, 0x64, 0x65, - 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x14, 0, 0xb, 0, - 0x1f, 0, 0x1, 0, 0x7, 0, 0, 0, 0x42, 0x6f, - 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0xa, 0, 0x5, 0, 0xa0, - 0xa6, 0x7d, 0x53, 0x37, 0xca, 0xd0, 0x11, 0x94, 0x1c, 0, - 0x80, 0xc8, 0xc, 0xfa, 0x7b, 0x29, 0, 0x1, 0, 0x9, - 0, 0, 0, 0x74, 0x72, 0x75, 0x65, 0x66, 0x61, 0x6c, - 0x73, 0x65, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, 0, - 0x9, 0, 0, 0, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, - 0x6e, 0x32, 0x64, 0xa, 0, 0x5, 0, 0x63, 0xae, 0x85, - 0x48, 0xe8, 0x78, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, - 0x35, 0x94, 0xa3, 0x1, 0, 0x7, 0, 0, 0, 0x42, - 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x1, 0, 0x1, 0, - 0, 0, 0x75, 0x14, 0, 0x1, 0, 0x7, 0, 0, - 0, 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x1, 0, - 0x1, 0, 0, 0, 0x76, 0x14, 0, 0xb, 0, 0x1f, - 0, 0x1, 0, 0xc, 0, 0, 0, 0x4d, 0x61, 0x74, - 0x65, 0x72, 0x69, 0x61, 0x6c, 0x57, 0x72, 0x61, 0x70, 0xa, - 0, 0x5, 0, 0x60, 0xae, 0x85, 0x48, 0xe8, 0x78, 0xcf, - 0x11, 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, 0x1, - 0, 0x7, 0, 0, 0, 0x42, 0x6f, 0x6f, 0x6c, 0x65, - 0x61, 0x6e, 0x1, 0, 0x1, 0, 0, 0, 0x75, 0x14, - 0, 0x1, 0, 0x7, 0, 0, 0, 0x42, 0x6f, 0x6f, - 0x6c, 0x65, 0x61, 0x6e, 0x1, 0, 0x1, 0, 0, 0, - 0x76, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, 0, 0xf, - 0, 0, 0, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, - 0x46, 0x69, 0x6c, 0x65, 0x6e, 0x61, 0x6d, 0x65, 0xa, 0, - 0x5, 0, 0xe1, 0x90, 0x27, 0xa4, 0x10, 0x78, 0xcf, 0x11, - 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, 0x31, 0, - 0x1, 0, 0x8, 0, 0, 0, 0x66, 0x69, 0x6c, 0x65, - 0x6e, 0x61, 0x6d, 0x65, 0x14, 0, 0xb, 0, 0x1f, 0, - 0x1, 0, 0x8, 0, 0, 0, 0x4d, 0x61, 0x74, 0x65, - 0x72, 0x69, 0x61, 0x6c, 0xa, 0, 0x5, 0, 0x4d, 0xab, - 0x82, 0x3d, 0xda, 0x62, 0xcf, 0x11, 0xab, 0x39, 0, 0x20, - 0xaf, 0x71, 0xe4, 0x33, 0x1, 0, 0x9, 0, 0, 0, - 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x47, 0x42, 0x41, 0x1, - 0, 0x9, 0, 0, 0, 0x66, 0x61, 0x63, 0x65, 0x43, - 0x6f, 0x6c, 0x6f, 0x72, 0x14, 0, 0x2a, 0, 0x1, 0, - 0x5, 0, 0, 0, 0x70, 0x6f, 0x77, 0x65, 0x72, 0x14, - 0, 0x1, 0, 0x8, 0, 0, 0, 0x43, 0x6f, 0x6c, - 0x6f, 0x72, 0x52, 0x47, 0x42, 0x1, 0, 0xd, 0, 0, - 0, 0x73, 0x70, 0x65, 0x63, 0x75, 0x6c, 0x61, 0x72, 0x43, - 0x6f, 0x6c, 0x6f, 0x72, 0x14, 0, 0x1, 0, 0x8, 0, - 0, 0, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x52, 0x47, 0x42, - 0x1, 0, 0xd, 0, 0, 0, 0x65, 0x6d, 0x69, 0x73, - 0x73, 0x69, 0x76, 0x65, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x14, - 0, 0xe, 0, 0x12, 0, 0x12, 0, 0x12, 0, 0xf, - 0, 0xb, 0, 0x1f, 0, 0x1, 0, 0x8, 0, 0, - 0, 0x4d, 0x65, 0x73, 0x68, 0x46, 0x61, 0x63, 0x65, 0xa, - 0, 0x5, 0, 0x5f, 0xab, 0x82, 0x3d, 0xda, 0x62, 0xcf, - 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, 0x33, 0x29, - 0, 0x1, 0, 0x12, 0, 0, 0, 0x6e, 0x46, 0x61, - 0x63, 0x65, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x49, 0x6e, - 0x64, 0x69, 0x63, 0x65, 0x73, 0x14, 0, 0x34, 0, 0x29, - 0, 0x1, 0, 0x11, 0, 0, 0, 0x66, 0x61, 0x63, - 0x65, 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x49, 0x6e, 0x64, - 0x69, 0x63, 0x65, 0x73, 0xe, 0, 0x1, 0, 0x12, 0, - 0, 0, 0x6e, 0x46, 0x61, 0x63, 0x65, 0x56, 0x65, 0x72, - 0x74, 0x65, 0x78, 0x49, 0x6e, 0x64, 0x69, 0x63, 0x65, 0x73, - 0xf, 0, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, 0, - 0xd, 0, 0, 0, 0x4d, 0x65, 0x73, 0x68, 0x46, 0x61, - 0x63, 0x65, 0x57, 0x72, 0x61, 0x70, 0x73, 0xa, 0, 0x5, - 0, 0xc0, 0xc5, 0x1e, 0xed, 0xa8, 0xc0, 0xd0, 0x11, 0x94, - 0x1c, 0, 0x80, 0xc8, 0xc, 0xfa, 0x7b, 0x29, 0, 0x1, - 0, 0xf, 0, 0, 0, 0x6e, 0x46, 0x61, 0x63, 0x65, - 0x57, 0x72, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0x14, 0, 0x34, 0, 0x1, 0, 0x9, 0, 0, 0, - 0x42, 0x6f, 0x6f, 0x6c, 0x65, 0x61, 0x6e, 0x32, 0x64, 0x1, - 0, 0xe, 0, 0, 0, 0x66, 0x61, 0x63, 0x65, 0x57, - 0x72, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, 0x65, 0x73, 0xe, - 0, 0x1, 0, 0xf, 0, 0, 0, 0x6e, 0x46, 0x61, - 0x63, 0x65, 0x57, 0x72, 0x61, 0x70, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0xf, 0, 0x14, 0, 0xb, 0, 0x1f, 0, - 0x1, 0, 0x11, 0, 0, 0, 0x4d, 0x65, 0x73, 0x68, - 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6f, - 0x72, 0x64, 0x73, 0xa, 0, 0x5, 0, 0x40, 0x3f, 0xf2, - 0xf6, 0x86, 0x76, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, - 0x35, 0x94, 0xa3, 0x29, 0, 0x1, 0, 0xe, 0, 0, - 0, 0x6e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, - 0x6f, 0x6f, 0x72, 0x64, 0x73, 0x14, 0, 0x34, 0, 0x1, - 0, 0x8, 0, 0, 0, 0x43, 0x6f, 0x6f, 0x72, 0x64, - 0x73, 0x32, 0x64, 0x1, 0, 0xd, 0, 0, 0, 0x74, - 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, 0x6f, 0x72, - 0x64, 0x73, 0xe, 0, 0x1, 0, 0xe, 0, 0, 0, - 0x6e, 0x54, 0x65, 0x78, 0x74, 0x75, 0x72, 0x65, 0x43, 0x6f, - 0x6f, 0x72, 0x64, 0x73, 0xf, 0, 0x14, 0, 0xb, 0, - 0x1f, 0, 0x1, 0, 0x10, 0, 0, 0, 0x4d, 0x65, - 0x73, 0x68, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, - 0x4c, 0x69, 0x73, 0x74, 0xa, 0, 0x5, 0, 0x42, 0x3f, - 0xf2, 0xf6, 0x86, 0x76, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, - 0x33, 0x35, 0x94, 0xa3, 0x29, 0, 0x1, 0, 0xa, 0, - 0, 0, 0x6e, 0x4d, 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, - 0x6c, 0x73, 0x14, 0, 0x29, 0, 0x1, 0, 0xc, 0, - 0, 0, 0x6e, 0x46, 0x61, 0x63, 0x65, 0x49, 0x6e, 0x64, - 0x65, 0x78, 0x65, 0x73, 0x14, 0, 0x34, 0, 0x29, 0, - 0x1, 0, 0xb, 0, 0, 0, 0x66, 0x61, 0x63, 0x65, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0xe, 0, 0x1, - 0, 0xc, 0, 0, 0, 0x6e, 0x46, 0x61, 0x63, 0x65, - 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x73, 0xf, 0, 0x14, - 0, 0xe, 0, 0x1, 0, 0x8, 0, 0, 0, 0x4d, - 0x61, 0x74, 0x65, 0x72, 0x69, 0x61, 0x6c, 0xf, 0, 0xb, - 0, 0x1f, 0, 0x1, 0, 0xb, 0, 0, 0, 0x4d, - 0x65, 0x73, 0x68, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x73, - 0xa, 0, 0x5, 0, 0x43, 0x3f, 0xf2, 0xf6, 0x86, 0x76, - 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, - 0x29, 0, 0x1, 0, 0x8, 0, 0, 0, 0x6e, 0x4e, - 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x73, 0x14, 0, 0x34, 0, - 0x1, 0, 0x6, 0, 0, 0, 0x56, 0x65, 0x63, 0x74, - 0x6f, 0x72, 0x1, 0, 0x7, 0, 0, 0, 0x6e, 0x6f, - 0x72, 0x6d, 0x61, 0x6c, 0x73, 0xe, 0, 0x1, 0, 0x8, - 0, 0, 0, 0x6e, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, - 0x73, 0xf, 0, 0x14, 0, 0x29, 0, 0x1, 0, 0xc, - 0, 0, 0, 0x6e, 0x46, 0x61, 0x63, 0x65, 0x4e, 0x6f, - 0x72, 0x6d, 0x61, 0x6c, 0x73, 0x14, 0, 0x34, 0, 0x1, - 0, 0x8, 0, 0, 0, 0x4d, 0x65, 0x73, 0x68, 0x46, - 0x61, 0x63, 0x65, 0x1, 0, 0xb, 0, 0, 0, 0x66, - 0x61, 0x63, 0x65, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x73, - 0xe, 0, 0x1, 0, 0xc, 0, 0, 0, 0x6e, 0x46, - 0x61, 0x63, 0x65, 0x4e, 0x6f, 0x72, 0x6d, 0x61, 0x6c, 0x73, - 0xf, 0, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, 0, - 0x10, 0, 0, 0, 0x4d, 0x65, 0x73, 0x68, 0x56, 0x65, - 0x72, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, 0x73, - 0xa, 0, 0x5, 0, 0x21, 0xb8, 0x30, 0x16, 0x42, 0x78, - 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, - 0x29, 0, 0x1, 0, 0xd, 0, 0, 0, 0x6e, 0x56, - 0x65, 0x72, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, - 0x73, 0x14, 0, 0x34, 0, 0x1, 0, 0xc, 0, 0, - 0, 0x49, 0x6e, 0x64, 0x65, 0x78, 0x65, 0x64, 0x43, 0x6f, - 0x6c, 0x6f, 0x72, 0x1, 0, 0xc, 0, 0, 0, 0x76, - 0x65, 0x72, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, 0x72, - 0x73, 0xe, 0, 0x1, 0, 0xd, 0, 0, 0, 0x6e, - 0x56, 0x65, 0x72, 0x74, 0x65, 0x78, 0x43, 0x6f, 0x6c, 0x6f, - 0x72, 0x73, 0xf, 0, 0x14, 0, 0xb, 0, 0x1f, 0, - 0x1, 0, 0x4, 0, 0, 0, 0x4d, 0x65, 0x73, 0x68, - 0xa, 0, 0x5, 0, 0x44, 0xab, 0x82, 0x3d, 0xda, 0x62, - 0xcf, 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, 0x33, - 0x29, 0, 0x1, 0, 0x9, 0, 0, 0, 0x6e, 0x56, - 0x65, 0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0x14, 0, 0x34, - 0, 0x1, 0, 0x6, 0, 0, 0, 0x56, 0x65, 0x63, - 0x74, 0x6f, 0x72, 0x1, 0, 0x8, 0, 0, 0, 0x76, - 0x65, 0x72, 0x74, 0x69, 0x63, 0x65, 0x73, 0xe, 0, 0x1, - 0, 0x9, 0, 0, 0, 0x6e, 0x56, 0x65, 0x72, 0x74, - 0x69, 0x63, 0x65, 0x73, 0xf, 0, 0x14, 0, 0x29, 0, - 0x1, 0, 0x6, 0, 0, 0, 0x6e, 0x46, 0x61, 0x63, - 0x65, 0x73, 0x14, 0, 0x34, 0, 0x1, 0, 0x8, 0, - 0, 0, 0x4d, 0x65, 0x73, 0x68, 0x46, 0x61, 0x63, 0x65, - 0x1, 0, 0x5, 0, 0, 0, 0x66, 0x61, 0x63, 0x65, - 0x73, 0xe, 0, 0x1, 0, 0x6, 0, 0, 0, 0x6e, - 0x46, 0x61, 0x63, 0x65, 0x73, 0xf, 0, 0x14, 0, 0xe, - 0, 0x12, 0, 0x12, 0, 0x12, 0, 0xf, 0, 0xb, - 0, 0x1f, 0, 0x1, 0, 0x14, 0, 0, 0, 0x46, - 0x72, 0x61, 0x6d, 0x65, 0x54, 0x72, 0x61, 0x6e, 0x73, 0x66, - 0x6f, 0x72, 0x6d, 0x4d, 0x61, 0x74, 0x72, 0x69, 0x78, 0xa, - 0, 0x5, 0, 0x41, 0x3f, 0xf2, 0xf6, 0x86, 0x76, 0xcf, - 0x11, 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, 0x1, - 0, 0x9, 0, 0, 0, 0x4d, 0x61, 0x74, 0x72, 0x69, - 0x78, 0x34, 0x78, 0x34, 0x1, 0, 0xb, 0, 0, 0, - 0x66, 0x72, 0x61, 0x6d, 0x65, 0x4d, 0x61, 0x74, 0x72, 0x69, - 0x78, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, 0, 0x5, - 0, 0, 0, 0x46, 0x72, 0x61, 0x6d, 0x65, 0xa, 0, - 0x5, 0, 0x46, 0xab, 0x82, 0x3d, 0xda, 0x62, 0xcf, 0x11, - 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, 0x33, 0xe, 0, - 0x12, 0, 0x12, 0, 0x12, 0, 0xf, 0, 0xb, 0, - 0x1f, 0, 0x1, 0, 0x9, 0, 0, 0, 0x46, 0x6c, - 0x6f, 0x61, 0x74, 0x4b, 0x65, 0x79, 0x73, 0xa, 0, 0x5, - 0, 0xa9, 0x46, 0xdd, 0x10, 0x5b, 0x77, 0xcf, 0x11, 0x8f, - 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, 0x29, 0, 0x1, - 0, 0x7, 0, 0, 0, 0x6e, 0x56, 0x61, 0x6c, 0x75, - 0x65, 0x73, 0x14, 0, 0x34, 0, 0x2a, 0, 0x1, 0, - 0x6, 0, 0, 0, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x73, - 0xe, 0, 0x1, 0, 0x7, 0, 0, 0, 0x6e, 0x56, - 0x61, 0x6c, 0x75, 0x65, 0x73, 0xf, 0, 0x14, 0, 0xb, - 0, 0x1f, 0, 0x1, 0, 0xe, 0, 0, 0, 0x54, - 0x69, 0x6d, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x4b, - 0x65, 0x79, 0x73, 0xa, 0, 0x5, 0, 0x80, 0xb1, 0x6, - 0xf4, 0x3b, 0x7b, 0xcf, 0x11, 0x8f, 0x52, 0, 0x40, 0x33, - 0x35, 0x94, 0xa3, 0x29, 0, 0x1, 0, 0x4, 0, 0, - 0, 0x74, 0x69, 0x6d, 0x65, 0x14, 0, 0x1, 0, 0x9, - 0, 0, 0, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x4b, 0x65, - 0x79, 0x73, 0x1, 0, 0x6, 0, 0, 0, 0x74, 0x66, - 0x6b, 0x65, 0x79, 0x73, 0x14, 0, 0xb, 0, 0x1f, 0, - 0x1, 0, 0xc, 0, 0, 0, 0x41, 0x6e, 0x69, 0x6d, - 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4b, 0x65, 0x79, 0xa, 0, - 0x5, 0, 0xa8, 0x46, 0xdd, 0x10, 0x5b, 0x77, 0xcf, 0x11, - 0x8f, 0x52, 0, 0x40, 0x33, 0x35, 0x94, 0xa3, 0x29, 0, - 0x1, 0, 0x7, 0, 0, 0, 0x6b, 0x65, 0x79, 0x54, - 0x79, 0x70, 0x65, 0x14, 0, 0x29, 0, 0x1, 0, 0x5, - 0, 0, 0, 0x6e, 0x4b, 0x65, 0x79, 0x73, 0x14, 0, - 0x34, 0, 0x1, 0, 0xe, 0, 0, 0, 0x54, 0x69, - 0x6d, 0x65, 0x64, 0x46, 0x6c, 0x6f, 0x61, 0x74, 0x4b, 0x65, - 0x79, 0x73, 0x1, 0, 0x4, 0, 0, 0, 0x6b, 0x65, - 0x79, 0x73, 0xe, 0, 0x1, 0, 0x5, 0, 0, 0, - 0x6e, 0x4b, 0x65, 0x79, 0x73, 0xf, 0, 0x14, 0, 0xb, - 0, 0x1f, 0, 0x1, 0, 0x10, 0, 0, 0, 0x41, - 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x4f, 0x70, - 0x74, 0x69, 0x6f, 0x6e, 0x73, 0xa, 0, 0x5, 0, 0xc0, - 0x56, 0xbf, 0xe2, 0xf, 0x84, 0xcf, 0x11, 0x8f, 0x52, 0, - 0x40, 0x33, 0x35, 0x94, 0xa3, 0x29, 0, 0x1, 0, 0xa, - 0, 0, 0, 0x6f, 0x70, 0x65, 0x6e, 0x63, 0x6c, 0x6f, - 0x73, 0x65, 0x64, 0x14, 0, 0x29, 0, 0x1, 0, 0xf, - 0, 0, 0, 0x70, 0x6f, 0x73, 0x69, 0x74, 0x69, 0x6f, - 0x6e, 0x71, 0x75, 0x61, 0x6c, 0x69, 0x74, 0x79, 0x14, 0, - 0xb, 0, 0x1f, 0, 0x1, 0, 0x9, 0, 0, 0, - 0x41, 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xa, - 0, 0x5, 0, 0x4f, 0xab, 0x82, 0x3d, 0xda, 0x62, 0xcf, - 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, 0x33, 0xe, - 0, 0x12, 0, 0x12, 0, 0x12, 0, 0xf, 0, 0xb, - 0, 0x1f, 0, 0x1, 0, 0xc, 0, 0, 0, 0x41, - 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0x53, 0x65, - 0x74, 0xa, 0, 0x5, 0, 0x50, 0xab, 0x82, 0x3d, 0xda, - 0x62, 0xcf, 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, - 0x33, 0xe, 0, 0x1, 0, 0x9, 0, 0, 0, 0x41, - 0x6e, 0x69, 0x6d, 0x61, 0x74, 0x69, 0x6f, 0x6e, 0xf, 0, - 0xb, 0, 0x1f, 0, 0x1, 0, 0xa, 0, 0, 0, - 0x49, 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, - 0xa, 0, 0x5, 0, 0xa0, 0xee, 0x23, 0x3a, 0xb1, 0x94, - 0xd0, 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, 0x33, - 0xe, 0, 0x1, 0, 0x6, 0, 0, 0, 0x42, 0x49, - 0x4e, 0x41, 0x52, 0x59, 0xf, 0, 0xb, 0, 0x1f, 0, - 0x1, 0, 0x3, 0, 0, 0, 0x55, 0x72, 0x6c, 0xa, - 0, 0x5, 0, 0xa1, 0xee, 0x23, 0x3a, 0xb1, 0x94, 0xd0, - 0x11, 0xab, 0x39, 0, 0x20, 0xaf, 0x71, 0xe4, 0x33, 0x29, - 0, 0x1, 0, 0x5, 0, 0, 0, 0x6e, 0x55, 0x72, - 0x6c, 0x73, 0x14, 0, 0x34, 0, 0x31, 0, 0x1, 0, - 0x4, 0, 0, 0, 0x75, 0x72, 0x6c, 0x73, 0xe, 0, - 0x1, 0, 0x5, 0, 0, 0, 0x6e, 0x55, 0x72, 0x6c, - 0x73, 0xf, 0, 0x14, 0, 0xb, 0, 0x1f, 0, 0x1, - 0, 0xf, 0, 0, 0, 0x50, 0x72, 0x6f, 0x67, 0x72, - 0x65, 0x73, 0x73, 0x69, 0x76, 0x65, 0x4d, 0x65, 0x73, 0x68, - 0xa, 0, 0x5, 0, 0x60, 0xc3, 0x63, 0x8a, 0x7d, 0x99, - 0xd0, 0x11, 0x94, 0x1c, 0, 0x80, 0xc8, 0xc, 0xfa, 0x7b, - 0xe, 0, 0x1, 0, 0x3, 0, 0, 0, 0x55, 0x72, - 0x6c, 0x13, 0, 0x1, 0, 0xa, 0, 0, 0, 0x49, - 0x6e, 0x6c, 0x69, 0x6e, 0x65, 0x44, 0x61, 0x74, 0x61, 0xf, - 0, 0xb, 0, 0x1f, 0, 0x1, 0, 0x4, 0, 0, - 0, 0x47, 0x75, 0x69, 0x64, 0xa, 0, 0x5, 0, 0xe0, - 0x90, 0x27, 0xa4, 0x10, 0x78, 0xcf, 0x11, 0x8f, 0x52, 0, - 0x40, 0x33, 0x35, 0x94, 0xa3, 0x29, 0, 0x1, 0, 0x5, - 0, 0, 0, 0x64, 0x61, 0x74, 0x61, 0x31, 0x14, 0, - 0x28, 0, 0x1, 0, 0x5, 0, 0, 0, 0x64, 0x61, - 0x74, 0x61, 0x32, 0x14, 0, 0x28, 0, 0x1, 0, 0x5, - 0, 0, 0, 0x64, 0x61, 0x74, 0x61, 0x33, 0x14, 0, - 0x34, 0, 0x2d, 0, 0x1, 0, 0x5, 0, 0, 0, - 0x64, 0x61, 0x74, 0x61, 0x34, 0xe, 0, 0x3, 0, 0x8, - 0, 0, 0, 0xf, 0, 0x14, 0, 0xb, 0, 0x1f, - 0, 0x1, 0, 0xe, 0, 0, 0, 0x53, 0x74, 0x72, - 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, - 0x79, 0xa, 0, 0x5, 0, 0xe0, 0x21, 0xf, 0x7f, 0xe1, - 0xbf, 0xd1, 0x11, 0x82, 0xc0, 0, 0xa0, 0xc9, 0x69, 0x72, - 0x71, 0x31, 0, 0x1, 0, 0x3, 0, 0, 0, 0x6b, - 0x65, 0x79, 0x14, 0, 0x31, 0, 0x1, 0, 0x5, 0, - 0, 0, 0x76, 0x61, 0x6c, 0x75, 0x65, 0x14, 0, 0xb, - 0, 0x1f, 0, 0x1, 0, 0xb, 0, 0, 0, 0x50, - 0x72, 0x6f, 0x70, 0x65, 0x72, 0x74, 0x79, 0x42, 0x61, 0x67, - 0xa, 0, 0x5, 0, 0xe1, 0x21, 0xf, 0x7f, 0xe1, 0xbf, - 0xd1, 0x11, 0x82, 0xc0, 0, 0xa0, 0xc9, 0x69, 0x72, 0x71, - 0xe, 0, 0x1, 0, 0xe, 0, 0, 0, 0x53, 0x74, - 0x72, 0x69, 0x6e, 0x67, 0x50, 0x72, 0x6f, 0x70, 0x65, 0x72, - 0x74, 0x79, 0xf, 0, 0xb, 0, 0x1f, 0, 0x1, 0, - 0xe, 0, 0, 0, 0x45, 0x78, 0x74, 0x65, 0x72, 0x6e, - 0x61, 0x6c, 0x56, 0x69, 0x73, 0x75, 0x61, 0x6c, 0xa, 0, - 0x5, 0, 0xa0, 0x6a, 0x11, 0x98, 0xba, 0xbd, 0xd1, 0x11, - 0x82, 0xc0, 0, 0xa0, 0xc9, 0x69, 0x72, 0x71, 0x1, 0, - 0x4, 0, 0, 0, 0x47, 0x75, 0x69, 0x64, 0x1, 0, - 0x12, 0, 0, 0, 0x67, 0x75, 0x69, 0x64, 0x45, 0x78, - 0x74, 0x65, 0x72, 0x6e, 0x61, 0x6c, 0x56, 0x69, 0x73, 0x75, - 0x61, 0x6c, 0x14, 0, 0xe, 0, 0x12, 0, 0x12, 0, - 0x12, 0, 0xf, 0, 0xb, 0, 0x1f, 0, 0x1, 0, - 0xb, 0, 0, 0, 0x52, 0x69, 0x67, 0x68, 0x74, 0x48, - 0x61, 0x6e, 0x64, 0x65, 0x64, 0xa, 0, 0x5, 0, 0xa0, - 0x5e, 0x5d, 0x7f, 0x3a, 0xd5, 0xd1, 0x11, 0x82, 0xc0, 0, - 0xa0, 0xc9, 0x69, 0x72, 0x71, 0x29, 0, 0x1, 0, 0xc, - 0, 0, 0, 0x62, 0x52, 0x69, 0x67, 0x68, 0x74, 0x48, - 0x61, 0x6e, 0x64, 0x65, 0x64, 0x14, 0, 0xb, 0 -]; - -const GUID DXFILEOBJ_XSkinMeshHeader = DEFINE_GUID!(0x3cf169ce, 0xff7c, 0x44ab, 0x93, 0xc0, 0xf7, 0x8f, 0x62, 0xd1, 0x72, 0xe2); -const GUID DXFILEOBJ_VertexDuplicationIndices = DEFINE_GUID!(0xb8d65549, 0xd7c9, 0x4995, 0x89, 0xcf, 0x53, 0xa9, 0xa8, 0xb0, 0x31, 0xe3); -const GUID DXFILEOBJ_FaceAdjacency = DEFINE_GUID!(0xa64c844a, 0xe282, 0x4756, 0x8b, 0x80, 0x25, 0xc, 0xde, 0x4, 0x39, 0x8c); -const GUID DXFILEOBJ_SkinWeights = DEFINE_GUID!(0x6f0d123b, 0xbad2, 0x4167, 0xa0, 0xd0, 0x80, 0x22, 0x4f, 0x25, 0xfa, 0xbb); -const GUID DXFILEOBJ_Patch = DEFINE_GUID!(0xa3eb5d44, 0xfc22, 0x429d, 0x9a, 0xfb, 0x32, 0x21, 0xcb, 0x97, 0x19, 0xa6); -const GUID DXFILEOBJ_PatchMesh = DEFINE_GUID!(0xd02c95cc, 0xedba, 0x4305, 0x9b, 0x5d, 0x18, 0x20, 0xd7, 0x70, 0x4b, 0xbf); -const GUID DXFILEOBJ_PatchMesh9 = DEFINE_GUID!(0xb9ec94e1, 0xb9a6, 0x4251, 0xba, 0x18, 0x94, 0x89, 0x3f, 0x2, 0xc0, 0xea); -const GUID DXFILEOBJ_PMInfo = DEFINE_GUID!(0xb6c3e656, 0xec8b, 0x4b92, 0x9b, 0x62, 0x68, 0x16, 0x59, 0x52, 0x29, 0x47); -const GUID DXFILEOBJ_PMAttributeRange = DEFINE_GUID!(0x917e0427, 0xc61e, 0x4a14, 0x9c, 0x64, 0xaf, 0xe6, 0x5f, 0x9e, 0x98, 0x44); -const GUID DXFILEOBJ_PMVSplitRecord = DEFINE_GUID!(0x574ccc14, 0xf0b3, 0x4333, 0x82, 0x2d, 0x93, 0xe8, 0xa8, 0xa0, 0x8e, 0x4c); -const GUID DXFILEOBJ_FVFData = DEFINE_GUID!(0xb6e70a0e, 0x8ef9, 0x4e83, 0x94, 0xad, 0xec, 0xc8, 0xb0, 0xc0, 0x48, 0x97); -const GUID DXFILEOBJ_VertexElement = DEFINE_GUID!(0xf752461c, 0x1e23, 0x48f6, 0xb9, 0xf8, 0x83, 0x50, 0x85, 0xf, 0x33, 0x6f); -const GUID DXFILEOBJ_DeclData = DEFINE_GUID!(0xbf22e553, 0x292c, 0x4781, 0x9f, 0xea, 0x62, 0xbd, 0x55, 0x4b, 0xdd, 0x93); -const GUID DXFILEOBJ_EffectFloats = DEFINE_GUID!(0xf1cfe2b3, 0xde3, 0x4e28, 0xaf, 0xa1, 0x15, 0x5a, 0x75, 0xa, 0x28, 0x2d); -const GUID DXFILEOBJ_EffectString = DEFINE_GUID!(0xd55b097e, 0xbdb6, 0x4c52, 0xb0, 0x3d, 0x60, 0x51, 0xc8, 0x9d, 0xe, 0x42); -const GUID DXFILEOBJ_EffectDWord = DEFINE_GUID!(0x622c0ed0, 0x956e, 0x4da9, 0x90, 0x8a, 0x2a, 0xf9, 0x4f, 0x3c, 0xe7, 0x16); -const GUID DXFILEOBJ_EffectParamFloats = DEFINE_GUID!(0x3014b9a0, 0x62f5, 0x478c, 0x9b, 0x86, 0xe4, 0xac, 0x9f, 0x4e, 0x41, 0x8b); -const GUID DXFILEOBJ_EffectParamString = DEFINE_GUID!(0x1dbc4c88, 0x94c1, 0x46ee, 0x90, 0x76, 0x2c, 0x28, 0x81, 0x8c, 0x94, 0x81); -const GUID DXFILEOBJ_EffectParamDWord = DEFINE_GUID!(0xe13963bc, 0xae51, 0x4c5d, 0xb0, 0xf, 0xcf, 0xa3, 0xa9, 0xd9, 0x7c, 0xe5); -const GUID DXFILEOBJ_EffectInstance = DEFINE_GUID!(0xe331f7e4, 0x559, 0x4cc2, 0x8e, 0x99, 0x1c, 0xec, 0x16, 0x57, 0x92, 0x8f); -const GUID DXFILEOBJ_AnimTicksPerSecond = DEFINE_GUID!(0x9e415a43, 0x7ba6, 0x4a73, 0x87, 0x43, 0xb7, 0x3d, 0x47, 0xe8, 0x84, 0x76); -const GUID DXFILEOBJ_CompressedAnimationSet = DEFINE_GUID!(0x7f9b00b3, 0xf125, 0x4890, 0x87, 0x6e, 0x1c, 0x42, 0xbf, 0x69, 0x7c, 0x4d); - -align(1) struct XFILECOMPRESSEDANIMATIONSET -{ - DWORD CompressedBlockSize; - FLOAT TicksPerSec; - DWORD PlaybackType; - DWORD BufferLength; -} - -const char[] XSKINEXP_TEMPLATES = - "xof 0303txt 0032 - template XSkinMeshHeader - { - <3CF169CE-FF7C-44ab-93C0-F78F62D172E2> - WORD nMaxSkinWeightsPerVertex; - WORD nMaxSkinWeightsPerFace; - WORD nBones; - } - template VertexDuplicationIndices - { - - DWORD nIndices; - DWORD nOriginalVertices; - array DWORD[nIndices] indices; - } - template FaceAdjacency - { - - DWORD nIndices; - array DWORD[nIndices] indices; - } - template SkinWeights - { - <6F0D123B-BAD2-4167-A0D0-80224F25FABB> - STRING transformNodeName; - DWORD nWeights; - array DWORD[nWeights] vertexIndices; - array float[nWeights] weights; - Matrix4x4 matrixOffset; - } - template Patch - { - - DWORD nControlIndices; - array DWORD[nControlIndices] controlIndices; - } - template PatchMesh - { - - DWORD nVertices; - array Vector[nVertices] vertices; - DWORD nPatches; - array Patch[nPatches] patches; - [ ... ] - } - template PatchMesh9 - { - - DWORD Type; - DWORD Degree; - DWORD Basis; - DWORD nVertices; - array Vector[nVertices] vertices; - DWORD nPatches; - array Patch[nPatches] patches; - [ ... ] - } " - "template EffectFloats - { - - DWORD nFloats; - array float[nFloats] Floats; - } - template EffectString - { - - STRING Value; - } - template EffectDWord - { - <622C0ED0-956E-4da9-908A-2AF94F3CE716> - DWORD Value; - } " - "template EffectParamFloats - { - <3014B9A0-62F5-478c-9B86-E4AC9F4E418B> - STRING ParamName; - DWORD nFloats; - array float[nFloats] Floats; - } " - "template EffectParamString - { - <1DBC4C88-94C1-46ee-9076-2C28818C9481> - STRING ParamName; - STRING Value; - } - template EffectParamDWord - { - - STRING ParamName; - DWORD Value; - } - template EffectInstance - { - - STRING EffectFilename; - [ ... ] - } " - "template AnimTicksPerSecond - { - <9E415A43-7BA6-4a73-8743-B73D47E88476> - DWORD AnimTicksPerSecond; - } - template CompressedAnimationSet - { - <7F9B00B3-F125-4890-876E-1C42BF697C4D> - DWORD CompressedBlockSize; - FLOAT TicksPerSec; - DWORD PlaybackType; - DWORD BufferLength; - array DWORD[BufferLength] CompressedData; - } "; - -const char[] XEXTENSIONS_TEMPLATES = - "xof 0303txt 0032 - template FVFData - { - - DWORD dwFVF; - DWORD nDWords; - array DWORD[nDWords] data; - } - template VertexElement - { - - DWORD Type; - DWORD Method; - DWORD Usage; - DWORD UsageIndex; - } - template DeclData - { - - DWORD nElements; - array VertexElement[nElements] Elements; - DWORD nDWords; - array DWORD[nDWords] data; - } - template PMAttributeRange - { - <917E0427-C61E-4a14-9C64-AFE65F9E9844> - DWORD iFaceOffset; - DWORD nFacesMin; - DWORD nFacesMax; - DWORD iVertexOffset; - DWORD nVerticesMin; - DWORD nVerticesMax; - } - template PMVSplitRecord - { - <574CCC14-F0B3-4333-822D-93E8A8A08E4C> - DWORD iFaceCLW; - DWORD iVlrOffset; - DWORD iCode; - } - template PMInfo - { - - DWORD nAttributes; - array PMAttributeRange[nAttributes] attributeRanges; - DWORD nMaxValence; - DWORD nMinLogicalVertices; - DWORD nMaxLogicalVertices; - DWORD nVSplits; - array PMVSplitRecord[nVSplits] splitRecords; - DWORD nAttributeMispredicts; - array DWORD[nAttributeMispredicts] attributeMispredicts; - } "; - -enum : uint -{ - D3DXF_FILEFORMAT_BINARY = 0, - D3DXF_FILEFORMAT_TEXT = 1, - D3DXF_FILEFORMAT_COMPRESSED = 2 -} -alias uint D3DXF_FILEFORMAT; - -enum : uint -{ - D3DXF_FILESAVE_TOFILE = 0x00L, - D3DXF_FILESAVE_TOWFILE = 0x01L -} -alias uint D3DXF_FILESAVEOPTIONS; - -enum : uint -{ - D3DXF_FILELOAD_FROMFILE = 0x00L, - D3DXF_FILELOAD_FROMWFILE = 0x01L, - D3DXF_FILELOAD_FROMRESOURCE = 0x02L, - D3DXF_FILELOAD_FROMMEMORY = 0x03L -} -alias uint D3DXF_FILELOADOPTIONS; - -struct D3DXF_FILELOADRESOURCE -{ - HMODULE hModule; // Desc - LPCSTR lpName; // Desc - LPCSTR lpType; // Desc -} - -struct D3DXF_FILELOADMEMORY -{ - LPCVOID lpMemory; // Desc - size_t dSize; // Desc -} - -const GUID IID_ID3DXFile = DEFINE_GUID!(0xcef08cf9, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01 ); -const GUID IID_ID3DXFileSaveObject = DEFINE_GUID!(0xcef08cfa, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01 ); -const GUID IID_ID3DXFileSaveData = DEFINE_GUID!(0xcef08cfb, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01 ); -const GUID IID_ID3DXFileEnumObject = DEFINE_GUID!(0xcef08cfc, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01 ); -const GUID IID_ID3DXFileData = DEFINE_GUID!(0xcef08cfd, 0x7b4f, 0x4429, 0x96, 0x24, 0x2a, 0x69, 0x0a, 0x93, 0x32, 0x01 ); - -interface ID3DXFile : IUnknown -{ - HRESULT CreateEnumObject(LPCVOID, D3DXF_FILELOADOPTIONS, ID3DXFileEnumObject*); - HRESULT CreateSaveObject(LPCVOID, D3DXF_FILESAVEOPTIONS, D3DXF_FILEFORMAT, ID3DXFileSaveObject*); - HRESULT RegisterTemplates(LPCVOID, size_t); - HRESULT RegisterEnumTemplates(ID3DXFileEnumObject); -} - -interface ID3DXFileSaveObject : IUnknown -{ - HRESULT GetFile(ID3DXFile*); - HRESULT AddDataObject(GUID*, LPCSTR, GUID*, size_t, LPCVOID, ID3DXFileSaveData*); - HRESULT Save(); -} - -interface ID3DXFileSaveData : IUnknown -{ - HRESULT GetSave(ID3DXFileSaveObject*); - HRESULT GetName(LPSTR, size_t*); - HRESULT GetId(GUID*); - HRESULT GetType(GUID*); - HRESULT AddDataObject(GUID*, LPCSTR, GUID*, size_t, LPCVOID, ID3DXFileSaveData*); - HRESULT AddDataReference(LPCSTR, GUID* ); -} - -interface ID3DXFileEnumObject : IUnknown -{ - HRESULT GetFile(ID3DXFile*); - HRESULT GetChildren(size_t*); - HRESULT GetChild(size_t, ID3DXFileData*); - HRESULT GetDataObjectById(REFGUID, ID3DXFileData*); - HRESULT GetDataObjectByName(LPCSTR, ID3DXFileData*); -} - -interface ID3DXFileData : IUnknown -{ - HRESULT GetEnum(ID3DXFileEnumObject*); - HRESULT GetName(LPSTR, size_t*); - HRESULT GetId(GUID*); - HRESULT Lock(size_t*, LPCVOID*); - HRESULT Unlock(); - HRESULT GetType(GUID*); - BOOL IsReference(); - HRESULT GetChildren(size_t*); - HRESULT GetChild(size_t, ID3DXFileData*); -} diff --git a/3rdparty-extra/win32/directx/d3dx9.def b/3rdparty-extra/win32/directx/d3dx9.def deleted file mode 100644 index f9c674472..000000000 --- a/3rdparty-extra/win32/directx/d3dx9.def +++ /dev/null @@ -1,48 +0,0 @@ -IMPORTS -_D3DXConcatenateMeshes@32 = d3dx9_29.D3DXConcatenateMeshes -_D3DXCreateBox@24 = d3dx9_29.D3DXCreateBox -_D3DXCreateCubeTexture@28 = d3dx9_29.D3DXCreateCubeTexture -_D3DXCreateCubeTextureFromFileExA@52 = d3dx9_29.D3DXCreateCubeTextureFromFileExA -_D3DXCreateCylinder@32 = d3dx9_29.D3DXCreateCylinder -_D3DXCreateFontA@48 = d3dx9_29.D3DXCreateFontA -_D3DXCreatePolygon@20 = d3dx9_29.D3DXCreatePolygon -_D3DXCreateSkinInfoFVF@16 = d3dx9_29.D3DXCreateSkinInfoFVF -_D3DXCreateSphere@24 = d3dx9_29.D3DXCreateSphere -_D3DXCreateSprite@8 = d3dx9_29.D3DXCreateSprite -_D3DXCreateTeapot@12 = d3dx9_29.D3DXCreateTeapot -_D3DXCreateTexture@32 = d3dx9_29.D3DXCreateTexture -_D3DXCreateTextureFromFileExA@56 = d3dx9_29.D3DXCreateTextureFromFileExA -_D3DXCreateTextureFromFileA@12 = d3dx9_29.D3DXCreateTextureFromFileA -_D3DXCreateTorus@28 = d3dx9_29.D3DXCreateTorus -_D3DXFileCreate@4 = d3dx9_29.D3DXFileCreate -_D3DXGetDeclVertexSize@8 = d3dx9_29.D3DXGetDeclVertexSize -_D3DXLoadMeshFromXof@32 = d3dx9_29.D3DXLoadMeshFromXof -_D3DXMatrixDecompose@16 = d3dx9_29.D3DXMatrixDecompose -_D3DXMatrixInverse@12 = d3dx9_29.D3DXMatrixInverse -_D3DXMatrixMultiply@12 = d3dx9_29.D3DXMatrixMultiply -_D3DXMatrixOrthoOffCenterLH@28 = d3dx9_29.D3DXMatrixOrthoOffCenterLH -_D3DXMatrixPerspectiveFovLH@20 = d3dx9_29.D3DXMatrixPerspectiveFovLH -_D3DXMatrixRotationQuaternion@8 = d3dx9_29.D3DXMatrixRotationQuaternion -_D3DXMatrixRotationX@8 = d3dx9_29.D3DXMatrixRotationX -_D3DXMatrixRotationY@8 = d3dx9_29.D3DXMatrixRotationY -_D3DXMatrixRotationYawPitchRoll@16 = d3dx9_29.D3DXMatrixRotationYawPitchRoll -_D3DXMatrixRotationZ@8 = d3dx9_29.D3DXMatrixRotationZ -_D3DXMatrixScaling@16 = d3dx9_29.D3DXMatrixScaling -_D3DXMatrixTransformation2D@28 = d3dx9_29.D3DXMatrixTransformation2D -_D3DXMatrixTranslation@16 = d3dx9_29.D3DXMatrixTranslation -_D3DXPlaneNormalize@8 = d3dx9_29.D3DXPlaneNormalize -_D3DXQuaternionNormalize@8 = d3dx9_29.D3DXQuaternionNormalize -_D3DXQuaternionRotationYawPitchRoll@16 = d3dx9_29.D3DXQuaternionRotationYawPitchRoll -_D3DXQuaternionSlerp@16 = d3dx9_29.D3DXQuaternionSlerp -_D3DXQuaternionSquad@24 = d3dx9_29.D3DXQuaternionSquad -_D3DXQuaternionSquadSetup@28 = d3dx9_29.D3DXQuaternionSquadSetup -_D3DXSimplifyMesh@28 = d3dx9_29.D3DXSimplifyMesh -_D3DXVec2TransformCoord@12 = d3dx9_29.D3DXVec2TransformCoord -_D3DXVec3CatmullRom@24 = d3dx9_29.D3DXVec3CatmullRom -_D3DXVec3TransformCoord@12 = d3dx9_29.D3DXVec3TransformCoord -_D3DXCreateEffect@36 = d3dx9_29.D3DXCreateEffect -_D3DXCreateEffectFromFileA@32 = d3dx9_29.D3DXCreateEffectFromFileA -_D3DXCreateEffectPool@4 = d3dx9_29.D3DXCreateEffectPool -_D3DXGetShaderInputSemantics@12 = d3dx9_29.D3DXGetShaderInputSemantics -_D3DXGetShaderVersion@4 = d3dx9_29.D3DXGetShaderVersion -_D3DXMatrixTranspose@8 = d3dx9_29.D3DXMatrixTranspose diff --git a/3rdparty-extra/win32/directx/dinput8.d b/3rdparty-extra/win32/directx/dinput8.d deleted file mode 100644 index f94c839a1..000000000 --- a/3rdparty-extra/win32/directx/dinput8.d +++ /dev/null @@ -1,432 +0,0 @@ -module win32.directx.dinput8; -version(Windows): - -//import tango.sys.win32.Types; -//alias char CHAR; - -import win32.windows; - -enum { - CLASS_E_NOAGGREGATION = cast(int) 0x80040110, -} - -interface IUnknown { - HRESULT QueryInterface(IID* riid, void** pvObject); - ULONG AddRef(); - ULONG Release(); -} - -extern(C): - -struct DIDEVICEINSTANCEA -{ - DWORD dwSize; - GUID guidInstance; - GUID guidProduct; - DWORD dwDevType; - CHAR[MAX_PATH] tszInstanceName; - CHAR[MAX_PATH] tszProductName; - GUID guidFFDriver; - WORD wUsagePage; - WORD wUsage; -} -alias DIDEVICEINSTANCEA DIDEVICEINSTANCE; - -struct DIDEVICEOBJECTINSTANCEA -{ - DWORD dwSize; - GUID guidType; - DWORD dwOfs; - DWORD dwType; - DWORD dwFlags; - CHAR[MAX_PATH] tszName; - DWORD dwFFMaxForce; - DWORD dwFFForceResolution; - WORD wCollectionNumber; - WORD wDesignatorIndex; - WORD wUsagePage; - WORD wUsage; - DWORD dwDimension; - WORD wExponent; - WORD wReportId; -} - -struct DIOBJECTDATAFORMAT -{ - const GUID *pguid; - DWORD dwOfs; - DWORD dwType; - DWORD dwFlags; -} - -struct DIDATAFORMAT -{ - DWORD dwSize; - DWORD dwObjSize; - DWORD dwFlags; - DWORD dwDataSize; - DWORD dwNumObjs; - DIOBJECTDATAFORMAT* rgodf; -} - -extern DIDATAFORMAT c_dfDIKeyboard; -extern DIDATAFORMAT c_dfDIMouse2; -extern DIDATAFORMAT c_dfDIJoystick; - -struct DIACTIONA -{ - UINT* uAppData; - DWORD dwSemantic; - DWORD dwFlags; - union - { - LPCSTR lptszActionName; - UINT uResIdString; - } - GUID guidInstance; - DWORD dwObjID; - DWORD dwHow; -} - -struct DIACTIONFORMATA -{ - DWORD dwSize; - DWORD dwActionSize; - DWORD dwDataSize; - DWORD dwNumActions; - DIACTIONA* rgoAction; - GUID guidActionMap; - DWORD dwGenre; - DWORD dwBufferSize; - LONG lAxisMin; - LONG lAxisMax; - HINSTANCE hInstString; - FILETIME ftTimeStamp; - DWORD dwCRC; - CHAR[MAX_PATH] tszActionMap; -} - -struct DIDEVCAPS -{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwDevType; - DWORD dwAxes; - DWORD dwButtons; - DWORD dwPOVs; - DWORD dwFFSamplePeriod; - DWORD dwFFMinTimeResolution; - DWORD dwFirmwareRevision; - DWORD dwHardwareRevision; - DWORD dwFFDriverVersion; -} - -struct DIPROPHEADER -{ - DWORD dwSize; - DWORD dwHeaderSize; - DWORD dwObj; - DWORD dwHow; -} - -struct DIDEVICEOBJECTDATA -{ - DWORD dwOfs; - DWORD dwData; - DWORD dwTimeStamp; - DWORD dwSequence; - UINT* uAppData; -} - -struct DIENVELOPE -{ - DWORD dwSize = DIENVELOPE.sizeof; - DWORD dwAttackLevel; - DWORD dwAttackTime; // Microseconds - DWORD dwFadeLevel; - DWORD dwFadeTime; // Microseconds -} - -struct DIEFFECT -{ - DWORD dwSize = DIEFFECT.sizeof; - DWORD dwFlags; // DIEFF_* - DWORD dwDuration; // Microseconds - DWORD dwSamplePeriod; // Microseconds - DWORD dwGain; - DWORD dwTriggerButton; // or DIEB_NOTRIGGER - DWORD dwTriggerRepeatInterval; // Microseconds - DWORD cAxes; // Number of axes - LPDWORD rgdwAxes; // Array of axes - LPLONG rglDirection; // Array of directions - DIENVELOPE* lpEnvelope; // Optional - DWORD cbTypeSpecificParams; // Size of params - LPVOID lpvTypeSpecificParams; // Pointer to params - DWORD dwStartDelay; // Microseconds -} - -struct DIEFFESCAPE -{ - DWORD dwSize; - DWORD dwCommand; - LPVOID lpvInBuffer; - DWORD cbInBuffer; - LPVOID lpvOutBuffer; - DWORD cbOutBuffer; -} - -struct DIEFFECTINFOA -{ - DWORD dwSize; - GUID guid; - DWORD dwEffType; - DWORD dwStaticParams; - DWORD dwDynamicParams; - CHAR[MAX_PATH] tszName; -} - -struct DIFILEEFFECT -{ - DWORD dwSize; - GUID GuidEffect; - DIEFFECT* lpDiEffect; - CHAR[MAX_PATH] szFriendlyName; -} - -struct DIDEVICEIMAGEINFOA -{ - CHAR[MAX_PATH] tszImagePath; - DWORD dwFlags; - // These are valid if DIDIFT_OVERLAY is present in dwFlags. - DWORD dwViewID; - RECT rcOverlay; - DWORD dwObjID; - DWORD dwcValidPts; - POINT[5] rgptCalloutLine; - RECT rcCalloutRect; - DWORD dwTextAlign; -} - -struct DIDEVICEIMAGEINFOHEADERA -{ - DWORD dwSize; - DWORD dwSizeImageInfo; - DWORD dwcViews; - DWORD dwcButtons; - DWORD dwcAxes; - DWORD dwcPOVs; - DWORD dwBufferSize; - DWORD dwBufferUsed; - DIDEVICEIMAGEINFOA* lprgImageInfoArray; -} - -struct DICONFIGUREDEVICESPARAMSA -{ - DWORD dwSize; - DWORD dwcUsers; - LPSTR lptszUserNames; - DWORD dwcFormats; - DIACTIONFORMATA* lprgFormats; - HWND hwnd; - DICOLORSET dics; - IUnknown lpUnkDDSTarget; -} - -struct DICOLORSET -{ - DWORD dwSize; - DWORD cTextFore; - DWORD cTextHighlight; - DWORD cCalloutLine; - DWORD cCalloutHighlight; - DWORD cBorder; - DWORD cControlFill; - DWORD cHighlightFill; - DWORD cAreaFill; -} - -struct DIMOUSESTATE2 -{ - LONG lX; - LONG lY; - LONG lZ; - BYTE[8] rgbButtons; -} - -struct DIJOYSTATE -{ - LONG lX; /* x-axis position */ - LONG lY; /* y-axis position */ - LONG lZ; /* z-axis position */ - LONG lRx; /* x-axis rotation */ - LONG lRy; /* y-axis rotation */ - LONG lRz; /* z-axis rotation */ - LONG[2] rglSlider; /* extra axes positions */ - DWORD[4] rgdwPOV; /* POV directions */ - BYTE[32] rgbButtons; /* 32 buttons */ -} - -struct DIPROPRANGE -{ - DIPROPHEADER diph; - LONG lMin; - LONG lMax; -} - -interface IDirectInputEffect : IUnknown -{ - HRESULT Initialize(HINSTANCE, DWORD, GUID*); - HRESULT GetEffectGuid(GUID*); - HRESULT GetParameters(DIEFFECT*, DWORD); - HRESULT SetParameters(DIEFFECT*, DWORD); - HRESULT Start(DWORD, DWORD); - HRESULT Stop(); - HRESULT GetEffectStatus(LPDWORD); - HRESULT Download(); - HRESULT Unload(); - HRESULT Escape(DIEFFESCAPE*); -} - -extern(Windows) alias bool function(DIDEVICEINSTANCEA*, LPVOID) LPDIENUMDEVICESCALLBACKA; -extern(Windows) alias bool function(DIDEVICEINSTANCEA*, IDirectInputDevice8A*, DWORD, DWORD, LPVOID) LPDIENUMDEVICESBYSEMANTICSCBA; - -extern(Windows) alias bool function(DIDEVICEOBJECTINSTANCEA *didoi, void* pContext) LPDIENUMDEVICEOBJECTSCALLBACKA; - -extern(Windows) alias bool function(DIEFFECTINFOA*, LPVOID) LPDIENUMEFFECTSCALLBACKA; -extern(Windows) alias bool function(IDirectInputEffect, LPVOID) LPDIENUMCREATEDEFFECTOBJECTSCALLBACK; -extern(Windows) alias bool function(DIFILEEFFECT* , LPVOID) LPDIENUMEFFECTSINFILECALLBACK; -extern(Windows) alias bool function(IUnknown, LPVOID) LPDICONFIGUREDEVICESCALLBACK; - -interface IDirectInputDevice8A : IUnknown -{ - HRESULT GetCapabilities(DIDEVCAPS*); - HRESULT EnumObjects(LPDIENUMDEVICEOBJECTSCALLBACKA, VOID*, DWORD); - HRESULT GetProperty(GUID*, DIPROPHEADER*); - HRESULT SetProperty(GUID*, DIPROPHEADER*); - HRESULT Acquire(); - HRESULT Unacquire(); - HRESULT GetDeviceState(DWORD, LPVOID); - HRESULT GetDeviceData(DWORD, DIDEVICEOBJECTDATA*, LPDWORD, DWORD); - HRESULT SetDataFormat(DIDATAFORMAT*); - HRESULT SetEventNotification(HANDLE); - HRESULT SetCooperativeLevel(HWND, DWORD); - HRESULT GetObjectInfo(DIDEVICEOBJECTINSTANCEA*, DWORD, DWORD); - HRESULT GetDeviceInfo(DIDEVICEINSTANCEA*); - HRESULT RunControlPanel(HWND, DWORD); - HRESULT Initialize(HINSTANCE, DWORD, GUID*); - HRESULT CreateEffect(GUID*, DIEFFECT*, IDirectInputEffect*, IUnknown); - HRESULT EnumEffects(LPDIENUMEFFECTSCALLBACKA, LPVOID, DWORD); - HRESULT GetEffectInfo(DIEFFECTINFOA*, GUID*); - HRESULT GetForceFeedbackState(LPDWORD); - HRESULT SendForceFeedbackCommand(DWORD); - HRESULT EnumCreatedEffectObjects(LPDIENUMCREATEDEFFECTOBJECTSCALLBACK, LPVOID, DWORD); - HRESULT Escape(DIEFFESCAPE*); - HRESULT Poll(); - HRESULT SendDeviceData(DWORD, DIDEVICEOBJECTDATA*, LPDWORD, DWORD); - HRESULT EnumEffectsInFile(LPCSTR, LPDIENUMEFFECTSINFILECALLBACK, LPVOID, DWORD); - HRESULT WriteEffectToFile(LPCSTR, DWORD, DIFILEEFFECT*, DWORD); - HRESULT BuildActionMap(DIACTIONFORMATA*, LPCSTR, DWORD); - HRESULT SetActionMap(DIACTIONFORMATA*, LPCSTR, DWORD); - HRESULT GetImageInfo(DIDEVICEIMAGEINFOHEADERA*); -} -alias IDirectInputDevice8A IDirectInputDevice8; - -interface IDirectInput8A : IUnknown -{ -extern(Windows): - HRESULT CreateDevice(GUID*, IDirectInputDevice8A*, IUnknown); - HRESULT EnumDevices(DWORD, LPDIENUMDEVICESCALLBACKA, LPVOID, DWORD); - HRESULT GetDeviceStatus(GUID*); - HRESULT RunControlPanel(HWND, DWORD); - HRESULT Initialize(HINSTANCE, DWORD); - HRESULT FindDevice(GUID*, LPCSTR, GUID*); - HRESULT EnumDevicesBySemantics(LPCSTR, DIACTIONFORMATA*, LPDIENUMDEVICESBYSEMANTICSCBA, LPVOID, DWORD); - HRESULT ConfigureDevices(LPDICONFIGUREDEVICESCALLBACK, DICONFIGUREDEVICESPARAMSA*, DWORD, LPVOID); -} -alias IDirectInput8A IDirectInput8; - -extern(Windows) HRESULT DirectInput8Create(HINSTANCE hinst, DWORD dwVersion, GUID* riidltf, void** ppvOut, IUnknown punkOuter); - -const GUID IID_IDirectInput8A={0xBF798030, 0x483A, 0x4DA2, [0xAA, 0x99, 0x5D, 0x64, 0xED, 0x36, 0x97, 0x00]}; -alias IID_IDirectInput8A IID_IDirectInput8; -const GUID GUID_SysKeyboard = {0x6F1D2B61, 0xD5A0, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_SysMouse = {0x6F1D2B60, 0xD5A0, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_XAxis = {0xA36D02E0, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_YAxis = {0xA36D02E1, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_ZAxis = {0xA36D02E2, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_RxAxis = {0xA36D02F4, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_RyAxis = {0xA36D02F5, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_RzAxis = {0xA36D02E3, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_Slider = {0xA36D02E4, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_Key = {0x55728220, 0xD33C, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; -const GUID GUID_POV = {0xA36D02F2, 0xC9F3, 0x11CF, [0xBF, 0xC7, 0x44, 0x45, 0x53, 0x54, 0x00, 0x00]}; - -enum : uint -{ - DISCL_EXCLUSIVE= 0x00000001, - DISCL_NONEXCLUSIVE= 0x00000002, - DISCL_FOREGROUND= 0x00000004, - DISCL_BACKGROUND= 0x00000008, - DISCL_NOWINKEY= 0x00000010, - - DIPH_DEVICE=0, - DIPH_BYOFFSET=1, - - DI8DEVCLASS_GAMECTRL=4, - DIEDFL_ATTACHEDONLY= 0x00000001, - DIDFT_AXIS= 0x00000003 -} - -enum -{ - SEVERITY_SUCCESS= 0, - SEVERITY_ERROR= 1, - FACILITY_WIN32= 7, - ERROR_READ_FAULT= 30L, - DIENUM_CONTINUE= 1, - DIPH_BYID= 2 -} - -struct DIPROPDWORD -{ - DIPROPHEADER diph; - DWORD dwData; -} - -template MAKE_HRESULT(uint sev, uint fac, uint code) -{ - const HRESULT MAKE_HRESULT = cast(HRESULT)((sev << 31) | (fac << 16) | code); -} - -const HRESULT DIERR_OLDDIRECTINPUTVERSION = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 1150); -const HRESULT DIERR_BETADIRECTINPUTVERSION = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 1153); -const HRESULT DIERR_BADDRIVERVER = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 119); -const HRESULT DIERR_DEVICENOTREG = 0x80040154; -const HRESULT DIERR_NOTFOUND = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, ERROR_FILE_NOT_FOUND); -const HRESULT DIERR_OBJECTNOTFOUND = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, ERROR_FILE_NOT_FOUND); -const HRESULT DIERR_INVALIDPARAM = E_INVALIDARG; -const HRESULT DIERR_NOINTERFACE = E_NOINTERFACE; -const HRESULT DIERR_GENERIC = E_FAIL; -const HRESULT DIERR_OUTOFMEMORY = E_OUTOFMEMORY; -const HRESULT DIERR_UNSUPPORTED = E_NOTIMPL; -const HRESULT DIERR_NOTINITIALIZED = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 21); -const HRESULT DIERR_ALREADYINITIALIZED = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 1247); -const HRESULT DIERR_NOAGGREGATION = CLASS_E_NOAGGREGATION; -const HRESULT DIERR_OTHERAPPHASPRIO = 0x80070005; -const HRESULT DIERR_INPUTLOST = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, ERROR_READ_FAULT); -const HRESULT DIERR_ACQUIRED = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 170); -const HRESULT DIERR_NOTACQUIRED = MAKE_HRESULT!(SEVERITY_ERROR, FACILITY_WIN32, 12); -const HRESULT DIERR_READONLY = 0x80070005; -const HRESULT DIERR_HANDLEEXISTS = 0x80070005; -const HRESULT DIERR_INSUFFICIENTPRIVS = 0x80040200; -const HRESULT DIERR_DEVICEFULL = 0x80040201; -const HRESULT DIERR_MOREDATA = 0x80040202; -const HRESULT DIERR_NOTDOWNLOADED = 0x80040203; -const HRESULT DIERR_HASEFFECTS = 0x80040204; -const HRESULT DIERR_NOTEXCLUSIVEACQUIRED = 0x80040205; -const HRESULT DIERR_INCOMPLETEEFFECT = 0x80040206; -const HRESULT DIERR_NOTBUFFERED = 0x80040207; -const HRESULT DIERR_EFFECTPLAYING = 0x80040208; -const HRESULT DIERR_UNPLUGGED = 0x80040209; -const HRESULT DIERR_REPORTFULL = 0x8004020A; -const HRESULT DIERR_MAPFILEFAIL = 0x8004020B; diff --git a/3rdparty-extra/win32/directx/dinput8.def b/3rdparty-extra/win32/directx/dinput8.def deleted file mode 100644 index e84a903c9..000000000 --- a/3rdparty-extra/win32/directx/dinput8.def +++ /dev/null @@ -1,2 +0,0 @@ -IMPORTS -_DirectInput8Create@20 = dinput8.DirectInput8Create \ No newline at end of file diff --git a/3rdparty-extra/win32/directx/dsound8.d b/3rdparty-extra/win32/directx/dsound8.d deleted file mode 100644 index ee2585984..000000000 --- a/3rdparty-extra/win32/directx/dsound8.d +++ /dev/null @@ -1,229 +0,0 @@ -module win32.directx.dsound8; -version(Windows): - -//import tango.sys.win32.Types; -import win32.windows; - -alias GUID* LPCGUID; - -interface IUnknown -{ - HRESULT QueryInterface(IID* riid, void** pvObject); - ULONG AddRef(); - ULONG Release(); -} - -alias IUnknown LPUNKNOWN; - -interface IDirectSound : IUnknown -{ - extern(Windows): - - // IDirectSound methods - HRESULT CreateSoundBuffer (LPCDSBUFFERDESC pcDSBufferDesc, LPDIRECTSOUNDBUFFER *ppDSBuffer, LPUNKNOWN pUnkOuter); - HRESULT GetCaps (LPDSCAPS pDSCaps); - HRESULT DuplicateSoundBuffer (LPDIRECTSOUNDBUFFER pDSBufferOriginal, LPDIRECTSOUNDBUFFER *ppDSBufferDuplicate); - HRESULT SetCooperativeLevel (HWND hwnd, DWORD dwLevel); - HRESULT Compact (); - HRESULT GetSpeakerConfig (LPDWORD pdwSpeakerConfig); - HRESULT SetSpeakerConfig (DWORD dwSpeakerConfig); - HRESULT Initialize (LPCGUID pcGuidDevice); -} - -alias IDirectSound LPDIRECTSOUND; - -interface IDirectSound8 : IDirectSound -{ - extern(Windows): - - // IDirectSound8 methods - HRESULT VerifyCertification (LPDWORD pdwCertified); -} - -alias IDirectSound8 LPDIRECTSOUND8; - -interface IDirectSoundBuffer : IUnknown -{ - extern(Windows): - - // IDirectSoundBuffer methods - HRESULT GetCaps (LPDSBCAPS pDSBufferCaps); - HRESULT GetCurrentPosition (LPDWORD pdwCurrentPlayCursor, LPDWORD pdwCurrentWriteCursor); - HRESULT GetFormat (LPWAVEFORMATEX pwfxFormat, DWORD dwSizeAllocated, LPDWORD pdwSizeWritten); - HRESULT GetVolume (LPLONG plVolume); - HRESULT GetPan (LPLONG plPan); - HRESULT GetFrequency (LPDWORD pdwFrequency); - HRESULT GetStatus (LPDWORD pdwStatus); - HRESULT Initialize (LPDIRECTSOUND pDirectSound, LPCDSBUFFERDESC pcDSBufferDesc); - HRESULT Lock (DWORD dwOffset, DWORD dwBytes, LPVOID *ppvAudioPtr1, LPDWORD pdwAudioBytes1, - LPVOID *ppvAudioPtr2, LPDWORD pdwAudioBytes2, DWORD dwFlags); - HRESULT Play (DWORD dwReserved1, DWORD dwPriority, DWORD dwFlags); - HRESULT SetCurrentPosition (DWORD dwNewPosition); - HRESULT SetFormat (LPCWAVEFORMATEX pcfxFormat); - HRESULT SetVolume (LONG lVolume); - HRESULT SetPan (LONG lPan); - HRESULT SetFrequency (DWORD dwFrequency); - HRESULT Stop (); - HRESULT Unlock (LPVOID pvAudioPtr1, DWORD dwAudioBytes1, LPVOID pvAudioPtr2, DWORD dwAudioBytes2); - HRESULT Restore (); -} - -alias IDirectSoundBuffer LPDIRECTSOUNDBUFFER; - -interface IDirectSound3DListener : IUnknown -{ - extern(Windows): - - // IDirectSound3DListener methods - HRESULT GetAllParameters (LPDS3DLISTENER pListener); - HRESULT GetDistanceFactor (D3DVALUE* pflDistanceFactor); - HRESULT GetDopplerFactor (D3DVALUE* pflDopplerFactor); - HRESULT GetOrientation (D3DVECTOR* pvOrientFront, D3DVECTOR* pvOrientTop); - HRESULT GetPosition (D3DVECTOR* pvPosition); - HRESULT GetRolloffFactor (D3DVALUE* pflRolloffFactor); - HRESULT GetVelocity (D3DVECTOR* pvVelocity); - HRESULT SetAllParameters (LPCDS3DLISTENER pcListener, DWORD dwApply); - HRESULT SetDistanceFactor (D3DVALUE flDistanceFactor, DWORD dwApply); - HRESULT SetDopplerFactor (D3DVALUE flDopplerFactor, DWORD dwApply); - HRESULT SetOrientation (D3DVALUE xFront, D3DVALUE yFront, D3DVALUE zFront, - D3DVALUE xTop, D3DVALUE yTop, D3DVALUE zTop, DWORD dwApply); - HRESULT SetPosition (D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply); - HRESULT SetRolloffFactor (D3DVALUE flRolloffFactor, DWORD dwApply); - HRESULT SetVelocity (D3DVALUE x, D3DVALUE y, D3DVALUE z, DWORD dwApply); - HRESULT CommitDeferredSettings (); -} - -struct WAVEFORMATEX -{ - ushort wFormatTag; - ushort nChannels; - uint nSamplesPerSec; - uint nAvgBytesPerSec; - ushort nBlockAlign; - ushort wBitsPerSample; - ushort cbSize; -} - -alias WAVEFORMATEX* LPWAVEFORMATEX, LPCWAVEFORMATEX; - -enum : uint -{ - WAVE_FORMAT_PCM = 1 -} - -struct DSCBUFFERDESC -{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwBufferBytes; - DWORD dwReserved; - LPWAVEFORMATEX lpwfxFormat; - DWORD dwFXCount; - LPDSCEFFECTDESC lpDSCFXDesc; -} - -alias DSCBUFFERDESC* LPDSCBUFFERDESC; - -struct DSBUFFERDESC -{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwBufferBytes; - DWORD dwReserved; - LPWAVEFORMATEX lpwfxFormat; - GUID guid3DAlgorithm; -} - -alias DSBUFFERDESC* LPCDSBUFFERDESC; - -struct DSCAPS -{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwMinSecondarySampleRate; - DWORD dwMaxSecondarySampleRate; - DWORD dwPrimaryBuffers; - DWORD dwMaxHwMixingAllBuffers; - DWORD dwMaxHwMixingStaticBuffers; - DWORD dwMaxHwMixingStreamingBuffers; - DWORD dwFreeHwMixingAllBuffers; - DWORD dwFreeHwMixingStaticBuffers; - DWORD dwFreeHwMixingStreamingBuffers; - DWORD dwMaxHw3DAllBuffers; - DWORD dwMaxHw3DStaticBuffers; - DWORD dwMaxHw3DStreamingBuffers; - DWORD dwFreeHw3DAllBuffers; - DWORD dwFreeHw3DStaticBuffers; - DWORD dwFreeHw3DStreamingBuffers; - DWORD dwTotalHwMemBytes; - DWORD dwFreeHwMemBytes; - DWORD dwMaxContigFreeHwMemBytes; - DWORD dwUnlockTransferRateHwBuffers; - DWORD dwPlayCpuOverheadSwBuffers; - DWORD dwReserved1; - DWORD dwReserved2; -} - -alias DSCAPS* LPDSCAPS; - -struct DSBCAPS -{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwBufferBytes; - DWORD dwUnlockTransferRate; - DWORD dwPlayCpuOverhead; -} - -alias DSBCAPS *LPDSBCAPS; - -struct DSCEFFECTDESC -{ - DWORD dwSize; - DWORD dwFlags; - GUID guidDSCFXClass; - GUID guidDSCFXInstance; - DWORD dwReserved1; - DWORD dwReserved2; -} - -alias DSCEFFECTDESC *LPDSCEFFECTDESC; - -struct DS3DLISTENER -{ - DWORD dwSize; - D3DVECTOR vPosition; - D3DVECTOR vVelocity; - D3DVECTOR vOrientFront; - D3DVECTOR vOrientTop; - D3DVALUE flDistanceFactor; - D3DVALUE flRolloffFactor; - D3DVALUE flDopplerFactor; -} - -alias DS3DLISTENER *LPDS3DLISTENER, LPCDS3DLISTENER; - -alias float D3DVALUE; - -struct D3DVECTOR -{ - float x; - float y; - float z; -} - -extern(Windows) export HRESULT DirectSoundCreate8(LPCGUID pcGuidDevice, LPDIRECTSOUND8 *ppDS8, LPUNKNOWN pUnkOuter); - -const DSSCL_PRIORITY = 0x00000002; -const DSBCAPS_PRIMARYBUFFER = 0x00000001; -const DSBCAPS_CTRL3D = 0x00000010; -const DSBCAPS_GETCURRENTPOSITION2 = 0x00010000; -const DSBCAPS_LOCDEFER = 0x00040000; -const DSBPLAY_LOOPING = 0x00000001; -const DSBSTATUS_PLAYING = 0x00000001; -const DSBCAPS_CTRLFREQUENCY = 0x00000020; -const DSBCAPS_CTRLPAN = 0x00000040; -const DSBCAPS_CTRLVOLUME = 0x00000080; -const DSBLOCK_ENTIREBUFFER = 0x00000002; - -const GUID IID_IDirectSound3DListener8 = {0x279AFA84,0x4981,0x11CE,[0xA5, 0x21, 0x00, 0x20, 0xAF, 0x0B, 0xE5, 0x60]}; \ No newline at end of file diff --git a/3rdparty-extra/win32/directx/dsound8.def b/3rdparty-extra/win32/directx/dsound8.def deleted file mode 100644 index 9fa1e374f..000000000 --- a/3rdparty-extra/win32/directx/dsound8.def +++ /dev/null @@ -1,2 +0,0 @@ -IMPORTS -_DirectSoundCreate8@12 = dsound.DirectSoundCreate8 \ No newline at end of file diff --git a/3rdparty-extra/win32/directx/dxerr.d b/3rdparty-extra/win32/directx/dxerr.d deleted file mode 100644 index ce74d3486..000000000 --- a/3rdparty-extra/win32/directx/dxerr.d +++ /dev/null @@ -1,56 +0,0 @@ -/***********************************************************************\ -* dxerr.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.dxerr; -version(Windows): - -import win32.windows; - -pragma(lib, "dxerr.lib"); - -extern (Windows) { - CHAR* DXGetErrorStringA(HRESULT hr); - WCHAR* DXGetErrorStringW(HRESULT hr); - CHAR* DXGetErrorDescriptionA(HRESULT hr); - WCHAR* DXGetErrorDescriptionW(HRESULT hr); - HRESULT DXTraceA(CHAR* strFile, DWORD dwLine, HRESULT hr, CHAR* strMsg, - BOOL bPopMsgBox); - HRESULT DXTraceW(CHAR* strFile, DWORD dwLine, HRESULT hr, WCHAR* strMsg, - BOOL bPopMsgBox); -} - -version (Unicode) { - alias DXGetErrorStringW DXGetErrorString; - alias DXGetErrorDescriptionW DXGetErrorDescription; - alias DXTraceW DXTrace; -} else { - alias DXGetErrorStringA DXGetErrorString; - alias DXGetErrorDescriptionA DXGetErrorDescription; - alias DXTraceA DXTrace; -} - -debug (dxerr) { - HRESULT DXTRACE_MSG(TCHAR* str) { - return DXTrace(__FILE__, __LINE__, 0, str, false); - } - HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { - return DXTrace(__FILE__, __LINE__, hr, str, false); - } - HRESULT DXTRACE_ERR_MSGBOX(TCHAR* str, HRESULT hr) { - return DXTrace(__FILE__, __LINE__, hr, str, true); - } -} else { - HRESULT DXTRACE_MSG(TCHAR* str) { - return 0; - } - HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { - return hr; - } - HRESULT DXTRACE_ERR_MSGBOX(TCHAR* str, HRESULT hr) { - return hr; - } -} \ No newline at end of file diff --git a/3rdparty-extra/win32/directx/dxerr8.d b/3rdparty-extra/win32/directx/dxerr8.d deleted file mode 100644 index 8f33bb23a..000000000 --- a/3rdparty-extra/win32/directx/dxerr8.d +++ /dev/null @@ -1,69 +0,0 @@ -/***********************************************************************\ -* dxerr8.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.dxerr8; -version(Windows): - -/* - dxerr8.d - Header file for the DirectX 8 Error API - - Written by Filip Navara - Ported to D by James Pelcis - - This library 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. -*/ - -private import win32.windef; - -extern (Windows) { - char* DXGetErrorString8A (HRESULT); - WCHAR* DXGetErrorString8W (HRESULT); - char* DXGetErrorDescription8A (HRESULT); - WCHAR* DXGetErrorDescription8W (HRESULT); - HRESULT DXTraceA (char*, DWORD, HRESULT, char*, BOOL); - HRESULT DXTraceW (char*, DWORD, HRESULT, WCHAR*, BOOL); -} - -version (Unicode) { - alias DXGetErrorString8W DXGetErrorString8; - alias DXGetErrorDescription8W DXGetErrorDescription8; - alias DXTraceW DXTrace; -} else { - alias DXGetErrorString8A DXGetErrorString8; - alias DXGetErrorDescription8A DXGetErrorDescription8; - alias DXTraceA DXTrace; -} - -debug (dxerr) { - HRESULT DXTRACE_MSG(TCHAR* str) { - return DXTrace(__FILE__, __LINE__, 0, str, FALSE); - } - - HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { - return DXTrace(__FILE__, __LINE__, hr, str, TRUE); - } - - HRESULT DXTRACE_ERR_NOMSGBOX (WCHAR* str, HRESULT hr) { - return DXTrace(__FILE__, __LINE__, hr, str, FALSE); - } -} else { - HRESULT DXTRACE_MSG(TCHAR* str) { - return 0; - } - - HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { - return hr; - } - - HRESULT DXTRACE_ERR_NOMSGBOX(TCHAR* str, HRESULT hr) { - return hr; - } -} diff --git a/3rdparty-extra/win32/directx/dxerr9.d b/3rdparty-extra/win32/directx/dxerr9.d deleted file mode 100644 index 2c07aca8e..000000000 --- a/3rdparty-extra/win32/directx/dxerr9.d +++ /dev/null @@ -1,70 +0,0 @@ -/***********************************************************************\ -* dxerr9.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.dxerr9; -version(Windows): - -/* - dxerr9.h - Header file for the DirectX 9 Error API - - Written by Filip Navara - Ported to D by James Pelcis - - This library 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. - -*/ - -private import win32.windef; - -extern (Windows) { - char* DXGetErrorString9A(HRESULT); - WCHAR* DXGetErrorString9W(HRESULT); - char* DXGetErrorDescription9A(HRESULT); - WCHAR* DXGetErrorDescription9W(HRESULT); - HRESULT DXTraceA(char*, DWORD, HRESULT, char*, BOOL); - HRESULT DXTraceW(char*, DWORD, HRESULT, WCHAR*, BOOL); -} - -version (Unicode) { - alias DXGetErrorString9W DXGetErrorString9; - alias DXGetErrorDescription9W DXGetErrorDescription9; - alias DXTraceW DXTrace; -} else { - alias DXGetErrorString9A DXGetErrorString9; - alias DXGetErrorDescription9A DXGetErrorDescription9; - alias DXTraceA DXTrace; -} - -debug (dxerr) { - HRESULT DXTRACE_MSG(TCHAR* str) { - return DXTrace(__FILE__, cast(DWORD)__LINE__, 0, str, FALSE); - } - - HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { - return DXTrace(__FILE__, cast(DWORD)__LINE__, hr, str, FALSE); - } - - HRESULT DXTRACE_ERR_NOMSGBOX(TCHAR* str, HRESULT hr) { - return DXTrace(__FILE__, cast(DWORD)__LINE__, hr, str, TRUE); - } -} else { - HRESULT DXTRACE_MSG(TCHAR* str) { - return 0; - } - - HRESULT DXTRACE_ERR(TCHAR* str, HRESULT hr) { - return hr; - } - - HRESULT DXTRACE_ERR_NOMSGBOX(TCHAR* str, HRESULT hr) { - return hr; - } -} diff --git a/3rdparty-extra/win32/directx/dxgi.d b/3rdparty-extra/win32/directx/dxgi.d deleted file mode 100644 index e1195bd0b..000000000 --- a/3rdparty-extra/win32/directx/dxgi.d +++ /dev/null @@ -1,212 +0,0 @@ -/***********************************************************************\ -* dxgi.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.dxgi; -version(Windows): - -private import win32.windows; - -private import win32.directx.dxgitype; - -enum { - DXGI_CPU_ACCESS_NONE = 0, - DXGI_CPU_ACCESS_DYNAMIC = 1, - DXGI_CPU_ACCESS_READ_WRITE = 2, - DXGI_CPU_ACCESS_SCRATCH = 3, - DXGI_CPU_ACCESS_FIELD = 15 -} - -enum { - DXGI_USAGE_SHADER_INPUT = 0b00_00010000, - DXGI_USAGE_RENDER_TARGET_OUTPUT = 0b00_00100000, - DXGI_USAGE_BACK_BUFFER = 0b00_01000000, - DXGI_USAGE_SHARED = 0b00_10000000, - DXGI_USAGE_READ_ONLY = 0b01_00000000, - DXGI_USAGE_DISCARD_ON_PRESENT = 0b10_00000000, -} -alias UINT DXGI_USAGE; - -struct DXGI_FRAME_STATISTICS { - UINT PresentCount; - UINT PresentRefreshCount; - UINT SyncRefreshCount; - LARGE_INTEGER SyncQPCTime; - LARGE_INTEGER SyncGPUTime; -} - -struct DXGI_MAPPED_RECT { - INT Pitch; - BYTE* pBits; -} - -struct DXGI_ADAPTER_DESC { - WCHAR[128] Description; - UINT VendorId; - UINT DeviceId; - UINT SubSysId; - UINT Revision; - SIZE_T DedicatedVideoMemory; - SIZE_T DedicatedSystemMemory; - SIZE_T SharedSystemMemory; - LUID AdapterLuid; -} - -struct DXGI_OUTPUT_DESC { - WCHAR[32] DeviceName; - RECT DesktopCoordinates; - BOOL AttachedToDesktop; - DXGI_MODE_ROTATION Rotation; - HMONITOR Monitor; -} - -struct DXGI_SHARED_RESOURCE { - HANDLE Handle; -} - -enum { - DXGI_RESOURCE_PRIORITY_MINIMUM = 0x28000000, - DXGI_RESOURCE_PRIORITY_LOW = 0x50000000, - DXGI_RESOURCE_PRIORITY_NORMAL = 0x78000000, - DXGI_RESOURCE_PRIORITY_HIGH = 0xa0000000, - DXGI_RESOURCE_PRIORITY_MAXIMUM = 0xc8000000 -} - -enum DXGI_RESIDENCY { - DXGI_RESIDENCY_FULLY_RESIDENT = 1, - DXGI_RESIDENCY_RESIDENT_IN_SHARED_MEMORY = 2, - DXGI_RESIDENCY_EVICTED_TO_DISK = 3 -} - -struct DXGI_SURFACE_DESC { - UINT Width; - UINT Height; - DXGI_FORMAT Format; - DXGI_SAMPLE_DESC SampleDesc; -} - -enum DXGI_SWAP_EFFECT { - DXGI_SWAP_EFFECT_DISCARD = 0, - DXGI_SWAP_EFFECT_SEQUENTIAL = 1 -} - -enum DXGI_SWAP_CHAIN_FLAG { - DXGI_SWAP_CHAIN_FLAG_NONPREROTATED = 1, - DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH = 2 -} - -struct DXGI_SWAP_CHAIN_DESC { - DXGI_MODE_DESC BufferDesc; - DXGI_SAMPLE_DESC SampleDesc; - DXGI_USAGE BufferUsage; - UINT BufferCount; - HWND OutputWindow; - BOOL Windowed; - DXGI_SWAP_EFFECT SwapEffect; - UINT Flags; -} - -interface IDXGIObject : IUnknown { - extern(Windows) : - HRESULT SetPrivateData(REFGUID Name, UINT DataSize, void* pData); - HRESULT SetPrivateDataInterface(REFGUID Name, IUnknown pUnknown); - HRESULT GetPrivateData(REFGUID Name, UINT* pDataSize, void* pData); - HRESULT GetParent(REFIID riid, void** ppParent); -} - -interface IDXGIDeviceSubObject : IDXGIObject { - extern(Windows) : - HRESULT GetDevice(REFIID riid, void** ppDevice); -} - -interface IDXGIResource : IDXGIDeviceSubObject { - extern(Windows) : - HRESULT GetSharedHandle(HANDLE* pSharedHandle); - HRESULT GetUsage(DXGI_USAGE* pUsage); - HRESULT SetEvictionPriority(UINT EvictionPriority); - HRESULT GetEvictionPriority(UINT* pEvictionPriority); -} - -interface IDXGISurface : IDXGIDeviceSubObject { - extern(Windows) : - HRESULT GetDesc(DXGI_SURFACE_DESC* pDesc); - HRESULT Map(DXGI_MAPPED_RECT* pLockedRect, UINT MapFlags); - HRESULT Unmap(); -} - -interface IDXGIAdapter : IDXGIObject { - extern(Windows) : - HRESULT EnumOutputs(UINT Output, IDXGIOutput* ppOutput); - HRESULT GetDesc(DXGI_ADAPTER_DESC* pDesc); - HRESULT CheckInterfaceSupport(REFGUID InterfaceName, LARGE_INTEGER* pUMDVersion); -} - -interface IDXGIOutput : IDXGIObject { - extern(Windows) : - HRESULT GetDesc(DXGI_OUTPUT_DESC* pDesc); - HRESULT GetDisplayModeList(DXGI_FORMAT EnumFormat, UINT Flags, UINT* pNumModes, DXGI_MODE_DESC* pDesc); - HRESULT FindClosestMatchingMode(DXGI_MODE_DESC* pModeToMatch, DXGI_MODE_DESC* pClosestMatch, IUnknown pConcernedDevice); - HRESULT WaitForVBlank(); - HRESULT TakeOwnership(IUnknown pDevice, BOOL Exclusive); - void ReleaseOwnership(); - HRESULT GetGammaControlCapabilities(DXGI_GAMMA_CONTROL_CAPABILITIES* pGammaCaps); - HRESULT SetGammaControl(DXGI_GAMMA_CONTROL* pArray); - HRESULT GetGammaControl(DXGI_GAMMA_CONTROL* pArray); - HRESULT SetDisplaySurface(IDXGISurface pScanoutSurface); - HRESULT GetDisplaySurfaceData(IDXGISurface pDestination); - HRESULT GetFrameStatistics(DXGI_FRAME_STATISTICS* pStats); -} - -const DXGI_MAX_SWAP_CHAIN_BUFFERS = 16; - -enum { - DXGI_PRESENT_TEST = 0x00000001, - DXGI_PRESENT_DO_NOT_SEQUENCE = 0x00000002, - DXGI_PRESENT_RESTART = 0x00000004 -} - -interface IDXGISwapChain : IDXGIDeviceSubObject { - extern(Windows) : - HRESULT Present(UINT SyncInterval, UINT Flags); - HRESULT GetBuffer(UINT Buffer, REFIID riid, void** ppSurface); - HRESULT SetFullscreenState(BOOL Fullscreen, IDXGIOutput pTarget); - HRESULT GetFullscreenState(BOOL* pFullscreen, IDXGIOutput* ppTarget); - HRESULT GetDesc(DXGI_SWAP_CHAIN_DESC* pDesc); - HRESULT ResizeBuffers(UINT BufferCount, UINT Width, UINT Height, DXGI_FORMAT NewFormat, UINT SwapChainFlags); - HRESULT ResizeTarget(DXGI_MODE_DESC* pNewTargetParameters); - HRESULT GetContainingOutput(IDXGIOutput* ppOutput); - HRESULT GetFrameStatistics(DXGI_FRAME_STATISTICS* pStats); - HRESULT GetLastPresentCount(UINT* pLastPresentCount); -} - -interface IDXGIFactory : IDXGIObject { - extern(Windows) : - HRESULT EnumAdapters(UINT Adapter, IDXGIAdapter* ppAdapter); - HRESULT MakeWindowAssociation(HWND WindowHandle, UINT Flags); - HRESULT GetWindowAssociation(HWND* pWindowHandle); - HRESULT CreateSwapChain(IUnknown pDevice, DXGI_SWAP_CHAIN_DESC* pDesc, IDXGISwapChain* ppSwapChain); - HRESULT CreateSoftwareAdapter(HMODULE Module, IDXGIAdapter* ppAdapter); -} - -interface IDXGIDevice : IDXGIObject { - extern(Windows) : - HRESULT GetAdapter(IDXGIAdapter* pAdapter); - HRESULT CreateSurface(DXGI_SURFACE_DESC* pDesc, UINT NumSurfaces, DXGI_USAGE Usage, DXGI_SHARED_RESOURCE* pSharedResource, IDXGISurface* ppSurface); - HRESULT QueryResourceResidency(IUnknown* ppResources, DXGI_RESIDENCY* pResidencyStatus, UINT NumResources); - HRESULT SetGPUThreadPriority(INT Priority); - HRESULT GetGPUThreadPriority(INT* pPriority); -} - -extern(C) const GUID IID_IDXGIObject = {0xaec22fb8, 0x76f3, 0x4639, [0x9b, 0xe0, 0x28, 0xeb, 0x43, 0xa6, 0x7a, 0x2e]}; -extern(C) const GUID IID_IDXGIDeviceSubObject = {0x3d3e0379, 0xf9de, 0x4d58, [0xbb, 0x6c, 0x18, 0xd6, 0x29, 0x92, 0xf1, 0xa6]}; -extern(C) const GUID IID_IDXGIResource = {0x035f3ab4, 0x482e, 0x4e50, [0xb4, 0x1f, 0x8a, 0x7f, 0x8b, 0xd8, 0x96, 0x0b]}; -extern(C) const GUID IID_IDXGISurface = {0xcafcb56c, 0x6ac3, 0x4889, [0xbf, 0x47, 0x9e, 0x23, 0xbb, 0xd2, 0x60, 0xec]}; -extern(C) const GUID IID_IDXGIAdapter = {0x2411e7e1, 0x12ac, 0x4ccf, [0xbd, 0x14, 0x97, 0x98, 0xe8, 0x53, 0x4d, 0xc0]}; -extern(C) const GUID IID_IDXGIOutput = {0xae02eedb, 0xc735, 0x4690, [0x8d, 0x52, 0x5a, 0x8d, 0xc2, 0x02, 0x13, 0xaa]}; -extern(C) const GUID IID_IDXGISwapChain = {0x310d36a0, 0xd2e7, 0x4c0a, [0xaa, 0x04, 0x6a, 0x9d, 0x23, 0xb8, 0x88, 0x6a]}; -extern(C) const GUID IID_IDXGIFactory = {0x7b7166ec, 0x21c7, 0x44ae, [0xb2, 0x1a, 0xc9, 0xae, 0x32, 0x1a, 0xe3, 0x69]}; -extern(C) const GUID IID_IDXGIDevice = {0x54ec77fa, 0x1377, 0x44e6, [0x8c, 0x32, 0x88, 0xfd, 0x5f, 0x44, 0xc8, 0x4c]}; - diff --git a/3rdparty-extra/win32/directx/dxgitype.d b/3rdparty-extra/win32/directx/dxgitype.d deleted file mode 100644 index dc926fb7f..000000000 --- a/3rdparty-extra/win32/directx/dxgitype.d +++ /dev/null @@ -1,196 +0,0 @@ -/***********************************************************************\ -* dxgitype.d * -* * -* Windows API header module * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.directx.dxgitype; -version(Windows): - -private import win32.windows; - -const _FACDXGI = 0x87a; - -HRESULT MAKE_DXGI_HRESULT(T)(T code) { - return MAKE_HRESULT(1, _FACDXGI, code); -} - -HRESULT MAKE_DXGI_STATUS(T)(T code) { - return MAKE_HRESULT(0, _FACDXGI, code); -} - -const HRESULT DXGI_STATUS_OCCLUDED = MAKE_DXGI_STATUS(1); -const HRESULT DXGI_STATUS_CLIPPED = MAKE_DXGI_STATUS(2); -const HRESULT DXGI_STATUS_NO_REDIRECTION = MAKE_DXGI_STATUS(4); -const HRESULT DXGI_STATUS_NO_DESKTOP_ACCESS = MAKE_DXGI_STATUS(5); -const HRESULT DXGI_STATUS_GRAPHICS_VIDPN_SOURCE_IN_USE = MAKE_DXGI_STATUS(6); -const HRESULT DXGI_STATUS_MODE_CHANGED = MAKE_DXGI_STATUS(7); -const HRESULT DXGI_STATUS_MODE_CHANGE_IN_PROGRESS = MAKE_DXGI_STATUS(8); -const HRESULT DXGI_ERROR_INVALID_CALL = MAKE_DXGI_HRESULT( 1); -const HRESULT DXGI_ERROR_NOT_FOUND = MAKE_DXGI_HRESULT( 2); -const HRESULT DXGI_ERROR_MORE_DATA = MAKE_DXGI_HRESULT( 3); -const HRESULT DXGI_ERROR_UNSUPPORTED = MAKE_DXGI_HRESULT( 4); -const HRESULT DXGI_ERROR_DEVICE_REMOVED = MAKE_DXGI_HRESULT( 5); -const HRESULT DXGI_ERROR_DEVICE_HUNG = MAKE_DXGI_HRESULT( 6); -const HRESULT DXGI_ERROR_DEVICE_RESET = MAKE_DXGI_HRESULT( 7); -const HRESULT DXGI_ERROR_WAS_STILL_DRAWING = MAKE_DXGI_HRESULT(10); -const HRESULT DXGI_ERROR_FRAME_STATISTICS_DISJOINT = MAKE_DXGI_HRESULT(11); -const HRESULT DXGI_ERROR_GRAPHICS_VIDPN_SOURCE_IN_USE = MAKE_DXGI_HRESULT(12); -const HRESULT DXGI_ERROR_DRIVER_INTERNAL_ERROR = MAKE_DXGI_HRESULT(32); -const HRESULT DXGI_ERROR_NONEXCLUSIVE = MAKE_DXGI_HRESULT(33); -const HRESULT DXGI_ERROR_NOT_CURRENTLY_AVAILABLE = MAKE_DXGI_HRESULT(34); -const HRESULT DXGI_FORMAT_DEFINED = 1; - -enum DXGI_FORMAT { - DXGI_FORMAT_UNKNOWN = 0, - DXGI_FORMAT_R32G32B32A32_TYPELESS, - DXGI_FORMAT_R32G32B32A32_FLOAT, - DXGI_FORMAT_R32G32B32A32_UINT, - DXGI_FORMAT_R32G32B32A32_SINT, - DXGI_FORMAT_R32G32B32_TYPELESS, - DXGI_FORMAT_R32G32B32_FLOAT, - DXGI_FORMAT_R32G32B32_UINT, - DXGI_FORMAT_R32G32B32_SINT, - DXGI_FORMAT_R16G16B16A16_TYPELESS, - DXGI_FORMAT_R16G16B16A16_FLOAT, - DXGI_FORMAT_R16G16B16A16_UNORM, - DXGI_FORMAT_R16G16B16A16_UINT, - DXGI_FORMAT_R16G16B16A16_SNORM, - DXGI_FORMAT_R16G16B16A16_SINT, - DXGI_FORMAT_R32G32_TYPELESS, - DXGI_FORMAT_R32G32_FLOAT, - DXGI_FORMAT_R32G32_UINT, - DXGI_FORMAT_R32G32_SINT, - DXGI_FORMAT_R32G8X24_TYPELESS, - DXGI_FORMAT_D32_FLOAT_S8X24_UINT, - DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS, - DXGI_FORMAT_X32_TYPELESS_G8X24_UINT, - DXGI_FORMAT_R10G10B10A2_TYPELESS, - DXGI_FORMAT_R10G10B10A2_UNORM, - DXGI_FORMAT_R10G10B10A2_UINT, - DXGI_FORMAT_R11G11B10_FLOAT, - DXGI_FORMAT_R8G8B8A8_TYPELESS, - DXGI_FORMAT_R8G8B8A8_UNORM, - DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, - DXGI_FORMAT_R8G8B8A8_UINT, - DXGI_FORMAT_R8G8B8A8_SNORM, - DXGI_FORMAT_R8G8B8A8_SINT, - DXGI_FORMAT_R16G16_TYPELESS, - DXGI_FORMAT_R16G16_FLOAT, - DXGI_FORMAT_R16G16_UNORM, - DXGI_FORMAT_R16G16_UINT, - DXGI_FORMAT_R16G16_SNORM, - DXGI_FORMAT_R16G16_SINT, - DXGI_FORMAT_R32_TYPELESS, - DXGI_FORMAT_D32_FLOAT, - DXGI_FORMAT_R32_FLOAT, - DXGI_FORMAT_R32_UINT, - DXGI_FORMAT_R32_SINT, - DXGI_FORMAT_R24G8_TYPELESS, - DXGI_FORMAT_D24_UNORM_S8_UINT, - DXGI_FORMAT_R24_UNORM_X8_TYPELESS, - DXGI_FORMAT_X24_TYPELESS_G8_UINT, - DXGI_FORMAT_R8G8_TYPELESS, - DXGI_FORMAT_R8G8_UNORM, - DXGI_FORMAT_R8G8_UINT, - DXGI_FORMAT_R8G8_SNORM, - DXGI_FORMAT_R8G8_SINT, - DXGI_FORMAT_R16_TYPELESS, - DXGI_FORMAT_R16_FLOAT, - DXGI_FORMAT_D16_UNORM, - DXGI_FORMAT_R16_UNORM, - DXGI_FORMAT_R16_UINT, - DXGI_FORMAT_R16_SNORM, - DXGI_FORMAT_R16_SINT, - DXGI_FORMAT_R8_TYPELESS, - DXGI_FORMAT_R8_UNORM, - DXGI_FORMAT_R8_UINT, - DXGI_FORMAT_R8_SNORM, - DXGI_FORMAT_R8_SINT, - DXGI_FORMAT_A8_UNORM, - DXGI_FORMAT_R1_UNORM, - DXGI_FORMAT_R9G9B9E5_SHAREDEXP, - DXGI_FORMAT_R8G8_B8G8_UNORM, - DXGI_FORMAT_G8R8_G8B8_UNORM, - DXGI_FORMAT_BC1_TYPELESS, - DXGI_FORMAT_BC1_UNORM, - DXGI_FORMAT_BC1_UNORM_SRGB, - DXGI_FORMAT_BC2_TYPELESS, - DXGI_FORMAT_BC2_UNORM, - DXGI_FORMAT_BC2_UNORM_SRGB, - DXGI_FORMAT_BC3_TYPELESS, - DXGI_FORMAT_BC3_UNORM, - DXGI_FORMAT_BC3_UNORM_SRGB, - DXGI_FORMAT_BC4_TYPELESS, - DXGI_FORMAT_BC4_UNORM, - DXGI_FORMAT_BC4_SNORM, - DXGI_FORMAT_BC5_TYPELESS, - DXGI_FORMAT_BC5_UNORM, - DXGI_FORMAT_BC5_SNORM, - DXGI_FORMAT_B5G6R5_UNORM, - DXGI_FORMAT_B5G5R5A1_UNORM, - DXGI_FORMAT_B8G8R8A8_UNORM, - DXGI_FORMAT_B8G8R8X8_UNORM, - DXGI_FORMAT_FORCE_UINT = 0xffffffff -} - -struct DXGI_RGB { - float Red; - float Green; - float Blue; -} - -struct DXGI_GAMMA_CONTROL { - DXGI_RGB Scale; - DXGI_RGB Offset; - DXGI_RGB[1025] GammaCurve; -} - -struct DXGI_GAMMA_CONTROL_CAPABILITIES { - BOOL ScaleAndOffsetSupported; - float MaxConvertedValue; - float MinConvertedValue; - UINT NumGammaControlPoints; - float[1025] ControlPointPositions; -} - -struct DXGI_RATIONAL { - UINT Numerator; - UINT Denominator; -} - -enum DXGI_MODE_SCANLINE_ORDER { - DXGI_MODE_SCANLINE_ORDER_UNSPECIFIED = 0, - DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE = 1, - DXGI_MODE_SCANLINE_ORDER_UPPER_FIELD_FIRST = 2, - DXGI_MODE_SCANLINE_ORDER_LOWER_FIELD_FIRST = 3 -} - -enum DXGI_MODE_SCALING { - DXGI_MODE_SCALING_UNSPECIFIED = 0, - DXGI_MODE_SCALING_CENTERED = 1, - DXGI_MODE_SCALING_STRETCHED = 2 -} - -enum DXGI_MODE_ROTATION { - DXGI_MODE_ROTATION_UNSPECIFIED = 0, - DXGI_MODE_ROTATION_IDENTITY = 1, - DXGI_MODE_ROTATION_ROTATE90 = 2, - DXGI_MODE_ROTATION_ROTATE180 = 3, - DXGI_MODE_ROTATION_ROTATE270 = 4 -} - -struct DXGI_MODE_DESC { - UINT Width; - UINT Height; - DXGI_RATIONAL RefreshRate; - DXGI_FORMAT Format; - DXGI_MODE_SCANLINE_ORDER ScanlineOrdering; - DXGI_MODE_SCALING Scaling; -} - -struct DXGI_SAMPLE_DESC { - UINT Count; - UINT Quality; -} diff --git a/3rdparty-extra/win32/docobj.d b/3rdparty-extra/win32/docobj.d deleted file mode 100644 index bf29884f9..000000000 --- a/3rdparty-extra/win32/docobj.d +++ /dev/null @@ -1,134 +0,0 @@ -/***********************************************************************\ -* docobj.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.docobj; -version(Windows): - -private import win32.basetyps, win32.oaidl, win32.objidl, win32.oleidl, - win32.unknwn, win32.windef, win32.wtypes; - -// FIXME: remove inherited methods from interface definitions - -enum { - OLECMDERR_E_UNKNOWNGROUP = -2147221244, - OLECMDERR_E_CANCELED = -2147221245, - OLECMDERR_E_NOHELP = -2147221246, - OLECMDERR_E_DISABLED = -2147221247, - OLECMDERR_E_NOTSUPPORTED = -2147221248 -} - -enum OLECMDID { - OLECMDID_OPEN = 1, - OLECMDID_NEW = 2, - OLECMDID_SAVE = 3, - OLECMDID_SAVEAS = 4, - OLECMDID_SAVECOPYAS = 5, - OLECMDID_PRINT = 6, - OLECMDID_PRINTPREVIEW = 7, - OLECMDID_PAGESETUP = 8, - OLECMDID_SPELL = 9, - OLECMDID_PROPERTIES = 10, - OLECMDID_CUT = 11, - OLECMDID_COPY = 12, - OLECMDID_PASTE = 13, - OLECMDID_PASTESPECIAL = 14, - OLECMDID_UNDO = 15, - OLECMDID_REDO = 16, - OLECMDID_SELECTALL = 17, - OLECMDID_CLEARSELECTION = 18, - OLECMDID_ZOOM = 19, - OLECMDID_GETZOOMRANGE = 20, - OLECMDID_UPDATECOMMANDS = 21, - OLECMDID_REFRESH = 22, - OLECMDID_STOP = 23, - OLECMDID_HIDETOOLBARS = 24, - OLECMDID_SETPROGRESSMAX = 25, - OLECMDID_SETPROGRESSPOS = 26, - OLECMDID_SETPROGRESSTEXT = 27, - OLECMDID_SETTITLE = 28, - OLECMDID_SETDOWNLOADSTATE = 29, - OLECMDID_STOPDOWNLOAD = 30 -} - -enum OLECMDF { - OLECMDF_SUPPORTED = 1, - OLECMDF_ENABLED = 2, - OLECMDF_LATCHED = 4, - OLECMDF_NINCHED = 8 -} - -enum OLECMDEXECOPT { - OLECMDEXECOPT_DODEFAULT = 0, - OLECMDEXECOPT_PROMPTUSER = 1, - OLECMDEXECOPT_DONTPROMPTUSER = 2, - OLECMDEXECOPT_SHOWHELP = 3 -} - -struct OLECMDTEXT { - DWORD cmdtextf; - ULONG cwActual; - ULONG cwBuf; - wchar[1] rgwz; -} - -struct OLECMD { - ULONG cmdID; - DWORD cmdf; -} - -alias IOleInPlaceSite LPOLEINPLACESITE; -alias IEnumOleDocumentViews LPENUMOLEDOCUMENTVIEWS; - -extern (C) extern const IID - IID_IContinueCallback, - IID_IEnumOleDocumentViews, - IID_IPrint, - IID_IOleDocumentView, - IID_IOleDocument, - IID_IOleCommandTarget, - IID_IOleDocumentSite; - - -interface IOleDocumentView : IUnknown { - HRESULT SetInPlaceSite(LPOLEINPLACESITE); - HRESULT GetInPlaceSite(LPOLEINPLACESITE*); - HRESULT GetDocument(IUnknown*); - HRESULT SetRect(LPRECT); - HRESULT GetRect(LPRECT); - HRESULT SetRectComplex(LPRECT, LPRECT, LPRECT, LPRECT); - HRESULT Show(BOOL); - HRESULT UIActivate(BOOL); - HRESULT Open(); - HRESULT Close(DWORD); - HRESULT SaveViewState(IStream); - HRESULT ApplyViewState(IStream); - HRESULT Clone(LPOLEINPLACESITE, IOleDocumentView*); -} - -interface IEnumOleDocumentViews : IUnknown { - HRESULT Next(ULONG, IOleDocumentView, ULONG*); - HRESULT Skip(ULONG); - HRESULT Reset(); - HRESULT Clone(IEnumOleDocumentViews*); -} - -interface IOleDocument : IUnknown { - HRESULT CreateView(LPOLEINPLACESITE, IStream, DWORD, IOleDocumentView*); - HRESULT GetDocMiscStatus(DWORD*); - HRESULT EnumViews(LPENUMOLEDOCUMENTVIEWS*, IOleDocumentView*); -} - -interface IOleCommandTarget : IUnknown { - HRESULT QueryStatus(const(GUID)*, ULONG, OLECMD*, OLECMDTEXT*); - HRESULT Exec(const(GUID)*, DWORD, DWORD, VARIANTARG*, VARIANTARG*); -} - -interface IOleDocumentSite : IUnknown { - HRESULT ActivateMe(IOleDocumentView); -} diff --git a/3rdparty-extra/win32/errorrep.d b/3rdparty-extra/win32/errorrep.d deleted file mode 100644 index 35e083af3..000000000 --- a/3rdparty-extra/win32/errorrep.d +++ /dev/null @@ -1,41 +0,0 @@ -/***********************************************************************\ -* errorrep.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.errorrep; -version(Windows): - -private import win32.w32api, win32.windef; - -static assert (_WIN32_WINNT >= 0x501, - "win32.errorrep is available only if version WindowsXP, Windows2003 " - "or WindowsVista is set"); - -enum EFaultRepRetVal { - frrvOk, - frrvOkManifest, - frrvOkQueued, - frrvErr, - frrvErrNoDW, - frrvErrTimeout, - frrvLaunchDebugger, - frrvOkHeadless // = 7 -} - -extern (Windows) { - BOOL AddERExcludedApplicationA(LPCSTR); - BOOL AddERExcludedApplicationW(LPCWSTR); - EFaultRepRetVal ReportFault(LPEXCEPTION_POINTERS, DWORD); -} - -version (Unicode) { - alias AddERExcludedApplicationW AddERExcludedApplication; -} else { - alias AddERExcludedApplicationA AddERExcludedApplication; -} diff --git a/3rdparty-extra/win32/exdisp.d b/3rdparty-extra/win32/exdisp.d deleted file mode 100644 index 38763ebe0..000000000 --- a/3rdparty-extra/win32/exdisp.d +++ /dev/null @@ -1,128 +0,0 @@ -/***********************************************************************\ -* exdisp.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.exdisp; -version(Windows): - -import win32.docobj, win32.oaidl, win32.ocidl; -private import win32.basetyps, win32.windef, win32.wtypes; - - -enum BrowserNavConstants { - navOpenInNewWindow = 0x01, - navNoHistory = 0x02, - navNoReadFromCache = 0x04, - navNoWriteTocache = 0x08, - navAllowAutosearch = 0x10, - navBrowserBar = 0x20, - navHyperLink = 0x40 -} - -interface IWebBrowser : IDispatch { - HRESULT GoBack(); - HRESULT GoForward(); - HRESULT GoHome(); - HRESULT GoSearch(); - HRESULT Navigate(BSTR, VARIANT*, VARIANT*, VARIANT*, VARIANT*); - HRESULT Refresh(); - HRESULT Refresh2(VARIANT*); - HRESULT Stop(); - HRESULT get_Application(IDispatch* ppDisp); - HRESULT get_Parent(IDispatch* ppDisp); - HRESULT get_Container(IDispatch* ppDisp); - HRESULT get_Document(IDispatch* ppDisp); - HRESULT get_TopLevelContainer(VARIANT_BOOL*); - HRESULT get_Type(BSTR*); - HRESULT get_Left(LONG*); - HRESULT put_Left(LONG); - HRESULT get_Top(LONG*); - HRESULT put_Top(LONG); - HRESULT get_Width(LONG*); - HRESULT put_Width(LONG); - HRESULT get_Height(LONG*); - HRESULT put_Height(LONG); - HRESULT get_LocationName(BSTR*); - HRESULT get_LocationURL(BSTR*); - HRESULT get_Busy(VARIANT_BOOL*); -} - -interface IWebBrowserApp : IWebBrowser { - HRESULT Quit(); - HRESULT ClientToWindow(int*, int*); - HRESULT PutProperty(BSTR, VARIANT); - HRESULT GetProperty(BSTR, VARIANT*); - HRESULT get_Name(BSTR*); - HRESULT get_HWND(LONG*); - HRESULT get_FullName(BSTR*); - HRESULT get_Path(BSTR*); - HRESULT get_Visible(VARIANT_BOOL*); - HRESULT put_Visible(VARIANT_BOOL); - HRESULT get_StatusBar(VARIANT_BOOL*); - HRESULT put_StatusBar(VARIANT_BOOL); - HRESULT get_StatusText(BSTR*); - HRESULT put_StatusText(BSTR); - HRESULT get_ToolBar(int*); - HRESULT put_ToolBar(int); - HRESULT get_MenuBar(VARIANT_BOOL*); - HRESULT put_MenuBar(VARIANT_BOOL); - HRESULT get_FullScreen(VARIANT_BOOL*); - HRESULT put_FullScreen(VARIANT_BOOL); -} - -interface IWebBrowser2 : IWebBrowserApp { - HRESULT Navigate2(VARIANT*, VARIANT*, VARIANT*, VARIANT*, VARIANT*); - HRESULT QueryStatusWB(OLECMDID, OLECMDF*); - HRESULT ExecWB(OLECMDID, OLECMDEXECOPT, VARIANT*, VARIANT*); - HRESULT ShowBrowserBar(VARIANT*, VARIANT*, VARIANT*); - HRESULT get_ReadyState(READYSTATE*); - HRESULT get_Offline(VARIANT_BOOL*); - HRESULT put_Offline(VARIANT_BOOL); - HRESULT get_Silent(VARIANT_BOOL*); - HRESULT put_Silent(VARIANT_BOOL); - HRESULT get_RegistaerAsBrowser(VARIANT_BOOL*); - HRESULT put_RegisterAsBrowser(VARIANT_BOOL); - HRESULT get_RegistaerAsDropTarget(VARIANT_BOOL*); - HRESULT put_RegisterAsDropTarget(VARIANT_BOOL); - HRESULT get_TheaterMode(VARIANT_BOOL*); - HRESULT put_TheaterMode(VARIANT_BOOL); - HRESULT get_AddressBar(VARIANT_BOOL*); - HRESULT put_AddressBar(VARIANT_BOOL); - HRESULT get_Resizable(VARIANT_BOOL*); - HRESULT put_Resizable(VARIANT_BOOL); -} - -interface DWebBrowserEvents2 : IDispatch { - void StatusTextChange(BSTR); - void ProgressChange(LONG, LONG); - void CommandStateChange(LONG, VARIANT_BOOL); - void DownloadBegin(); - void DownloadComplete(); - void TitleChange(BSTR); - void PropertyChange(BSTR); - void BeforeNavigate2(IDispatch pDisp, VARIANT*, VARIANT*, VARIANT*, VARIANT*, VARIANT*, VARIANT_BOOL*); - void NewWindow2(IDispatch* ppDisp, VARIANT_BOOL*); - void NavigateComplete(IDispatch pDisp, VARIANT*); - void DocumentComplete(IDispatch pDisp, VARIANT*); - void OnQuit(); - void OnVisible(VARIANT_BOOL); - void OnToolBar(VARIANT_BOOL); - void OnMenuBar(VARIANT_BOOL); - void OnStatusBar(VARIANT_BOOL); - void OnFullScreen(VARIANT_BOOL); - void OnTheaterMode(VARIANT_BOOL); - void WindowSetResizable(VARIANT_BOOL); - void WindowSetLeft(LONG); - void WindowSetTop(LONG); - void WindowSetWidth(LONG); - void WindowSetHeight(LONG); - void WindowClosing(VARIANT_BOOL, VARIANT_BOOL*); - void ClientToHostWindow(LONG*, LONG*); - void SetSecureLockIcon(LONG); - void FileDownload(VARIANT_BOOL*); -} diff --git a/3rdparty-extra/win32/exdispid.d b/3rdparty-extra/win32/exdispid.d deleted file mode 100644 index 3d16ef44f..000000000 --- a/3rdparty-extra/win32/exdispid.d +++ /dev/null @@ -1,21 +0,0 @@ -/***********************************************************************\ -* exdispid.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.exdispid; -version(Windows): - -enum : int { - DISPID_STATUSTEXTCHANGE = 102, - DISPID_PROGRESSCHANGE = 108, - DISPID_TITLECHANGE = 113, - DISPID_BEFORENAVIGATE2 = 250, - DISPID_NEWWINDOW2 = 251, - DISPID_DOCUMENTCOMPLETE = 259 -} diff --git a/3rdparty-extra/win32/httpext.d b/3rdparty-extra/win32/httpext.d deleted file mode 100644 index 3c9f83958..000000000 --- a/3rdparty-extra/win32/httpext.d +++ /dev/null @@ -1,115 +0,0 @@ -/***********************************************************************\ -* httpext.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.httpext; -version(Windows): - -/* Comment from MinGW - httpext.h - Header for ISAPI extensions. - - This file is part of a free library for the Win32 API. - - This library 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. -*/ - -private import win32.windows; - -enum { - HSE_VERSION_MAJOR = 2, - HSE_VERSION_MINOR = 0, - HSE_LOG_BUFFER_LEN = 80, - HSE_MAX_EXT_DLL_NAME_LEN = 256, - HSE_STATUS_SUCCESS = 1, - HSE_STATUS_SUCCESS_AND_KEEP_CONN, - HSE_STATUS_PENDING, - HSE_STATUS_ERROR, - HSE_REQ_BASE = 0, - HSE_REQ_SEND_URL_REDIRECT_RESP, - HSE_REQ_SEND_URL, - HSE_REQ_SEND_RESPONSE_HEADER, - HSE_REQ_DONE_WITH_SESSION, - HSE_REQ_SEND_RESPONSE_HEADER_EX = 1016, - HSE_REQ_END_RESERVED = 1000, - HSE_TERM_ADVISORY_UNLOAD = 0x00000001, - HSE_TERM_MUST_UNLOAD, - HSE_IO_SYNC = 0x00000001, - HSE_IO_ASYNC, - HSE_IO_DISCONNECT_AFTER_SEND = 0x00000004, - HSE_IO_SEND_HEADERS = 0x00000008 -} - -mixin DECLARE_HANDLE!("HCONN"); - -struct HSE_VERSION_INFO { - DWORD dwExtensionVersion; - CHAR[HSE_MAX_EXT_DLL_NAME_LEN] lpszExtensionDesc; -} -alias HSE_VERSION_INFO* LPHSE_VERSION_INFO; - -struct EXTENSION_CONTROL_BLOCK { - DWORD cbSize = EXTENSION_CONTROL_BLOCK.sizeof; - DWORD dwVersion; - HCONN ConnID; - DWORD dwHttpStatusCode; - CHAR[HSE_LOG_BUFFER_LEN] lpszLogData; - LPSTR lpszMethod; - LPSTR lpszQueryString; - LPSTR lpszPathInfo; - LPSTR lpszPathTranslated; - DWORD cbTotalBytes; - DWORD cbAvailable; - LPBYTE lpbData; - LPSTR lpszContentType; - extern(Pascal) BOOL function(HCONN, LPSTR, LPVOID, LPDWORD) - GetServerVariable; - extern(Pascal) BOOL function(HCONN, LPVOID, LPDWORD, DWORD) WriteClient; - extern(Pascal) BOOL function(HCONN, LPVOID, LPDWORD) ReadClient; - extern(Pascal) BOOL function(HCONN, DWORD, LPVOID, LPDWORD, LPDWORD) - ServerSupportFunction; -} -alias EXTENSION_CONTROL_BLOCK* LPEXTENSION_CONTROL_BLOCK; - -extern (Pascal) { - alias BOOL function(HSE_VERSION_INFO*) PFN_GETEXTENSIONVERSION; - alias DWORD function(EXTENSION_CONTROL_BLOCK*) PFN_HTTPEXTENSIONPROC; - alias BOOL function(DWORD) PFN_TERMINATEEXTENSION; - alias VOID function(EXTENSION_CONTROL_BLOCK*, PVOID, DWORD, DWORD) PFN_HSE_IO_COMPLETION; -} - -struct HSE_TF_INFO { - PFN_HSE_IO_COMPLETION pfnHseIO; - PVOID pContext; - HANDLE hFile; - LPCSTR pszStatusCode; - DWORD BytesToWrite; - DWORD Offset; - PVOID pHead; - DWORD HeadLength; - PVOID pTail; - DWORD TailLength; - DWORD dwFlags; -} -alias HSE_TF_INFO* LPHSE_TF_INFO; - -struct HSE_SEND_HEADER_EX_INFO { - LPCSTR pszStatus; - LPCSTR pszHeader; - DWORD cchStatus; - DWORD cchHeader; - BOOL fKeepConn; -} -alias HSE_SEND_HEADER_EX_INFO* LPHSE_SEND_HEADER_EX_INF; - -extern (Pascal) { - BOOL GetExtensionVersion(HSE_VERSION_INFO*); - DWORD HttpExtensionProc(EXTENSION_CONTROL_BLOCK*); - BOOL TerminateExtension(DWORD); -} diff --git a/3rdparty-extra/win32/idispids.d b/3rdparty-extra/win32/idispids.d deleted file mode 100644 index 40fdec700..000000000 --- a/3rdparty-extra/win32/idispids.d +++ /dev/null @@ -1,17 +0,0 @@ -/***********************************************************************\ -* idispids.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.idispids; -version(Windows): - -enum : int { - DISPID_AMBIENT_OFFLINEIFNOTCONNECTED = -5501, - DISPID_AMBIENT_SILENT = -5502 -} diff --git a/3rdparty-extra/win32/imagehlp.d b/3rdparty-extra/win32/imagehlp.d deleted file mode 100644 index a0aeb411b..000000000 --- a/3rdparty-extra/win32/imagehlp.d +++ /dev/null @@ -1,364 +0,0 @@ -/***********************************************************************\ -* imagehlp.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.imagehlp; -version(Windows): - -/* Comment from MinGW - NOTE: This strictly does not belong in the Win32 API since it's - really part of Platform SDK. However, GDB needs it and we might - as well provide it here. -*/ - -private import win32.winbase, win32.windef; - -// FIXME: check types of constants - -const API_VERSION_NUMBER = 7; - -const BIND_NO_BOUND_IMPORTS = 1; -const BIND_NO_UPDATE = 2; -const BIND_ALL_IMAGES = 4; -const BIND_CACHE_IMPORT_DLLS = 8; - -enum { - CBA_DEFERRED_SYMBOL_LOAD_START = 1, - CBA_DEFERRED_SYMBOL_LOAD_COMPLETE, - CBA_DEFERRED_SYMBOL_LOAD_FAILURE, - CBA_SYMBOLS_UNLOADED, - CBA_DUPLICATE_SYMBOL -} - -const CERT_PE_IMAGE_DIGEST_DEBUG_INFO = 1; -const CERT_PE_IMAGE_DIGEST_RESOURCES = 2; -const CERT_PE_IMAGE_DIGEST_ALL_IMPORT_INFO = 4; -const CERT_PE_IMAGE_DIGEST_NON_PE_INFO = 8; - -const CERT_SECTION_TYPE_ANY = 255; - -enum { - CHECKSUM_SUCCESS = 0, - CHECKSUM_OPEN_FAILURE, - CHECKSUM_MAP_FAILURE, - CHECKSUM_MAPVIEW_FAILURE, - CHECKSUM_UNICODE_FAILURE -} - -const IMAGE_SEPARATION = 65536; - -const SPLITSYM_REMOVE_PRIVATE = 1; -const SPLITSYM_EXTRACT_ALL = 2; -const SPLITSYM_SYMBOLPATH_IS_SRC = 4; - -const SYMF_OMAP_GENERATED = 1; -const SYMF_OMAP_MODIFIED = 2; - -const SYMOPT_CASE_INSENSITIVE = 1; -const SYMOPT_UNDNAME = 2; -const SYMOPT_DEFERRED_LOADS = 4; -const SYMOPT_NO_CPP = 8; -const SYMOPT_LOAD_LINES = 16; -const SYMOPT_OMAP_FIND_NEAREST = 32; - -const UNDNAME_COMPLETE = 0; -const UNDNAME_NO_LEADING_UNDERSCORES = 1; -const UNDNAME_NO_MS_KEYWORDS = 2; -const UNDNAME_NO_FUNCTION_RETURNS = 4; -const UNDNAME_NO_ALLOCATION_MODEL = 8; -const UNDNAME_NO_ALLOCATION_LANGUAGE = 16; -const UNDNAME_NO_MS_THISTYPE = 32; -const UNDNAME_NO_CV_THISTYPE = 64; -const UNDNAME_NO_THISTYPE = 96; -const UNDNAME_NO_ACCESS_SPECIFIERS = 128; -const UNDNAME_NO_THROW_SIGNATURES = 256; -const UNDNAME_NO_MEMBER_TYPE = 512; -const UNDNAME_NO_RETURN_UDT_MODEL = 1024; -const UNDNAME_32_BIT_DECODE = 2048; -const UNDNAME_NAME_ONLY = 4096; -const UNDNAME_NO_ARGUMENTS = 8192; -const UNDNAME_NO_SPECIAL_SYMS = 16384; - -enum IMAGEHLP_STATUS_REASON { - BindOutOfMemory, - BindRvaToVaFailed, - BindNoRoomInImage, - BindImportModuleFailed, - BindImportProcedureFailed, - BindImportModule, - BindImportProcedure, - BindForwarder, - BindForwarderNOT, - BindImageModified, - BindExpandFileHeaders, - BindImageComplete, - BindMismatchedSymbols, - BindSymbolsNotUpdated -} - -struct LOADED_IMAGE { - LPSTR ModuleName; - HANDLE hFile; - PUCHAR MappedAddress; - PIMAGE_NT_HEADERS FileHeader; - PIMAGE_SECTION_HEADER LastRvaSection; - ULONG NumberOfSections; - PIMAGE_SECTION_HEADER Sections; - ULONG Characteristics; - BOOLEAN fSystemImage; - BOOLEAN fDOSImage; - LIST_ENTRY Links; - ULONG SizeOfImage; -} -alias LOADED_IMAGE* PLOADED_IMAGE; - -struct IMAGE_DEBUG_INFORMATION { - LIST_ENTRY List; - DWORD Size; - PVOID MappedBase; - USHORT Machine; - USHORT Characteristics; - DWORD CheckSum; - DWORD ImageBase; - DWORD SizeOfImage; - DWORD NumberOfSections; - PIMAGE_SECTION_HEADER Sections; - DWORD ExportedNamesSize; - LPSTR ExportedNames; - DWORD NumberOfFunctionTableEntries; - PIMAGE_FUNCTION_ENTRY FunctionTableEntries; - DWORD LowestFunctionStartingAddress; - DWORD HighestFunctionEndingAddress; - DWORD NumberOfFpoTableEntries; - PFPO_DATA FpoTableEntries; - DWORD SizeOfCoffSymbols; - PIMAGE_COFF_SYMBOLS_HEADER CoffSymbols; - DWORD SizeOfCodeViewSymbols; - PVOID CodeViewSymbols; - LPSTR ImageFilePath; - LPSTR ImageFileName; - LPSTR DebugFilePath; - DWORD TimeDateStamp; - BOOL RomImage; - PIMAGE_DEBUG_DIRECTORY DebugDirectory; - DWORD NumberOfDebugDirectories; - DWORD[3] Reserved; -} -alias IMAGE_DEBUG_INFORMATION* PIMAGE_DEBUG_INFORMATION; - -enum ADDRESS_MODE { - AddrMode1616, - AddrMode1632, - AddrModeReal, - AddrModeFlat -} - -struct ADDRESS { - DWORD Offset; - WORD Segment; - ADDRESS_MODE Mode; -} -alias ADDRESS* LPADDRESS; - -struct KDHELP { - DWORD Thread; - DWORD ThCallbackStack; - DWORD NextCallback; - DWORD FramePointer; - DWORD KiCallUserMode; - DWORD KeUserCallbackDispatcher; - DWORD SystemRangeStart; -} -alias KDHELP* PKDHELP; - -struct STACKFRAME { - ADDRESS AddrPC; - ADDRESS AddrReturn; - ADDRESS AddrFrame; - ADDRESS AddrStack; - LPVOID FuncTableEntry; - DWORD[4] Params; - BOOL Far; - BOOL Virtual; - DWORD[3] Reserved; - KDHELP KdHelp; -} -alias STACKFRAME* LPSTACKFRAME; - -struct API_VERSION { - USHORT MajorVersion; - USHORT MinorVersion; - USHORT Revision; - USHORT Reserved; -} -alias API_VERSION* LPAPI_VERSION; - -enum SYM_TYPE { - SymNone, - SymCoff, - SymCv, - SymPdb, - SymExport, - SymDeferred, - SymSym -} - -struct IMAGEHLP_SYMBOL { - DWORD SizeOfStruct; - DWORD Address; - DWORD Size; - DWORD Flags; - DWORD MaxNameLength; - CHAR[1] Name; -} -alias IMAGEHLP_SYMBOL* PIMAGEHLP_SYMBOL; - -struct IMAGEHLP_MODULE { - DWORD SizeOfStruct; - DWORD BaseOfImage; - DWORD ImageSize; - DWORD TimeDateStamp; - DWORD CheckSum; - DWORD NumSyms; - SYM_TYPE SymType; - CHAR[32] ModuleName; - CHAR[256] ImageName; - CHAR[256] LoadedImageName; -} -alias IMAGEHLP_MODULE* PIMAGEHLP_MODULE; - -struct IMAGEHLP_LINE { - DWORD SizeOfStruct; - DWORD Key; - DWORD LineNumber; - PCHAR FileName; - DWORD Address; -} -alias IMAGEHLP_LINE* PIMAGEHLP_LINE; - -struct IMAGEHLP_DEFERRED_SYMBOL_LOAD { - DWORD SizeOfStruct; - DWORD BaseOfImage; - DWORD CheckSum; - DWORD TimeDateStamp; - CHAR[MAX_PATH] FileName; - BOOLEAN Reparse; -} -alias IMAGEHLP_DEFERRED_SYMBOL_LOAD* PIMAGEHLP_DEFERRED_SYMBOL_LOAD; - -struct IMAGEHLP_DUPLICATE_SYMBOL { - DWORD SizeOfStruct; - DWORD NumberOfDups; - PIMAGEHLP_SYMBOL Symbol; - ULONG SelectedSymbol; -} -alias IMAGEHLP_DUPLICATE_SYMBOL* PIMAGEHLP_DUPLICATE_SYMBOL; - -mixin DECLARE_HANDLE!("DIGEST_HANDLE"); - -extern (Windows) { - alias BOOL function(IMAGEHLP_STATUS_REASON, LPSTR, LPSTR, ULONG, ULONG) - PIMAGEHLP_STATUS_ROUTINE; - alias BOOL function(HANDLE , LPCVOID, LPVOID, DWORD, LPDWORD) - PREAD_PROCESS_MEMORY_ROUTINE; - alias LPVOID function(HANDLE, DWORD) PFUNCTION_TABLE_ACCESS_ROUTINE; - alias DWORD function(HANDLE, DWORD) PGET_MODULE_BASE_ROUTINE; - alias DWORD function(HANDLE, HANDLE, LPADDRESS) - PTRANSLATE_ADDRESS_ROUTINE; - alias BOOL function(LPSTR, ULONG, PVOID) PSYM_ENUMMODULES_CALLBACK; - alias BOOL function(LPSTR, ULONG, ULONG, PVOID) PSYM_ENUMSYMBOLS_CALLBACK; - alias BOOL function(LPSTR, ULONG, ULONG, PVOID) - PENUMLOADED_MODULES_CALLBACK; - alias BOOL function(HANDLE, ULONG, PVOID, PVOID) - PSYMBOL_REGISTERED_CALLBACK; - alias BOOL function(DIGEST_HANDLE refdata, PBYTE pData, DWORD dwLength) - DIGEST_FUNCTION; - - PIMAGE_NT_HEADERS CheckSumMappedFile(LPVOID, DWORD, LPDWORD, LPDWORD); - DWORD MapFileAndCheckSumA(LPSTR, LPDWORD, LPDWORD); - DWORD MapFileAndCheckSumW(PWSTR, LPDWORD, LPDWORD); - BOOL TouchFileTimes(HANDLE, LPSYSTEMTIME); - BOOL SplitSymbols(LPSTR, LPSTR, LPSTR, DWORD); - HANDLE FindDebugInfoFile(LPSTR, LPSTR, LPSTR); - HANDLE FindExecutableImage(LPSTR, LPSTR, LPSTR); - BOOL UpdateDebugInfoFile(LPSTR, LPSTR, LPSTR, PIMAGE_NT_HEADERS); - BOOL UpdateDebugInfoFileEx(LPSTR, LPSTR, LPSTR, PIMAGE_NT_HEADERS, DWORD); - BOOL BindImage(LPSTR, LPSTR, LPSTR); - BOOL BindImageEx(DWORD, LPSTR, LPSTR, LPSTR, PIMAGEHLP_STATUS_ROUTINE); - BOOL ReBaseImage(LPSTR, LPSTR, BOOL, BOOL, BOOL, ULONG, ULONG*, ULONG*, - ULONG*, ULONG*, ULONG); - PLOADED_IMAGE ImageLoad(LPSTR, LPSTR); - BOOL ImageUnload(PLOADED_IMAGE); - PIMAGE_NT_HEADERS ImageNtHeader(PVOID); - PVOID ImageDirectoryEntryToData(PVOID, BOOLEAN, USHORT, PULONG); - PIMAGE_SECTION_HEADER ImageRvaToSection(PIMAGE_NT_HEADERS, PVOID, ULONG); - PVOID ImageRvaToVa(PIMAGE_NT_HEADERS, PVOID, ULONG, - PIMAGE_SECTION_HEADER*); - BOOL MapAndLoad(LPSTR, LPSTR, PLOADED_IMAGE, BOOL, BOOL); - BOOL GetImageConfigInformation(PLOADED_IMAGE, - PIMAGE_LOAD_CONFIG_DIRECTORY); - DWORD GetImageUnusedHeaderBytes(PLOADED_IMAGE, LPDWORD); - BOOL SetImageConfigInformation(PLOADED_IMAGE, - PIMAGE_LOAD_CONFIG_DIRECTORY); - BOOL UnMapAndLoad(PLOADED_IMAGE); - PIMAGE_DEBUG_INFORMATION MapDebugInformation(HANDLE, LPSTR, LPSTR, DWORD); - BOOL UnmapDebugInformation(PIMAGE_DEBUG_INFORMATION); - HANDLE FindExecutableImage(LPSTR, LPSTR, LPSTR); - BOOL SearchTreeForFile(LPSTR, LPSTR, LPSTR); - BOOL MakeSureDirectoryPathExists(LPCSTR); - DWORD UnDecorateSymbolName(LPCSTR, LPSTR, DWORD, DWORD); - BOOL StackWalk(DWORD, HANDLE, HANDLE, LPSTACKFRAME, LPVOID, - PREAD_PROCESS_MEMORY_ROUTINE, PFUNCTION_TABLE_ACCESS_ROUTINE, - PGET_MODULE_BASE_ROUTINE, PTRANSLATE_ADDRESS_ROUTINE); - LPAPI_VERSION ImagehlpApiVersion(); - LPAPI_VERSION ImagehlpApiVersionEx(LPAPI_VERSION); - DWORD GetTimestampForLoadedLibrary(HMODULE); - BOOL RemovePrivateCvSymbolic(PCHAR, PCHAR*, ULONG*); - VOID RemoveRelocations(PCHAR); - DWORD SymSetOptions(DWORD); - DWORD SymGetOptions(); - BOOL SymCleanup(HANDLE); - BOOL SymEnumerateModules(HANDLE, PSYM_ENUMMODULES_CALLBACK, PVOID); - BOOL SymEnumerateSymbols(HANDLE, DWORD, PSYM_ENUMSYMBOLS_CALLBACK, PVOID); - BOOL EnumerateLoadedModules(HANDLE, PENUMLOADED_MODULES_CALLBACK, PVOID); - LPVOID SymFunctionTableAccess(HANDLE, DWORD); - BOOL SymGetModuleInfo(HANDLE, DWORD, PIMAGEHLP_MODULE); - DWORD SymGetModuleBase(HANDLE, DWORD); - BOOL SymGetSymFromAddr(HANDLE, DWORD, PDWORD, PIMAGEHLP_SYMBOL); - BOOL SymGetSymFromName(HANDLE, LPSTR, PIMAGEHLP_SYMBOL); - BOOL SymGetSymNext(HANDLE, PIMAGEHLP_SYMBOL); - BOOL SymGetSymPrev(HANDLE, PIMAGEHLP_SYMBOL); - BOOL SymGetLineFromAddr(HANDLE, DWORD, PDWORD, PIMAGEHLP_LINE); - BOOL SymGetLineFromName(HANDLE, LPSTR, LPSTR, DWORD, PLONG, - PIMAGEHLP_LINE); - BOOL SymGetLineNext(HANDLE, PIMAGEHLP_LINE); - BOOL SymGetLinePrev(HANDLE, PIMAGEHLP_LINE); - BOOL SymMatchFileName(LPSTR, LPSTR, LPSTR*, LPSTR*); - BOOL SymInitialize(HANDLE, LPSTR, BOOL); - BOOL SymGetSearchPath(HANDLE, LPSTR, DWORD); - BOOL SymSetSearchPath(HANDLE, LPSTR); - BOOL SymLoadModule(HANDLE, HANDLE, PSTR, PSTR, DWORD, DWORD); - BOOL SymUnloadModule(HANDLE, DWORD); - BOOL SymUnDName(PIMAGEHLP_SYMBOL, LPSTR, DWORD); - BOOL SymRegisterCallback(HANDLE, PSYMBOL_REGISTERED_CALLBACK, PVOID); - BOOL ImageGetDigestStream(HANDLE, DWORD, DIGEST_FUNCTION, DIGEST_HANDLE); - BOOL ImageAddCertificate(HANDLE, LPWIN_CERTIFICATE, PDWORD); - BOOL ImageRemoveCertificate(HANDLE, DWORD); - BOOL ImageEnumerateCertificates(HANDLE, WORD, PDWORD, PDWORD, DWORD); - BOOL ImageGetCertificateData(HANDLE, DWORD, LPWIN_CERTIFICATE, PDWORD); - BOOL ImageGetCertificateHeader(HANDLE, DWORD, LPWIN_CERTIFICATE); - BOOL CopyPdb(CHAR*, CHAR*, BOOL); - BOOL RemovePrivateCvSymbolicEx(PCHAR, ULONG, PCHAR*, ULONG*); -} - -version (Unicode) { - alias MapFileAndCheckSumW MapFileAndCheckSum; -} else { - alias MapFileAndCheckSumA MapFileAndCheckSum; -} diff --git a/3rdparty-extra/win32/intshcut.d b/3rdparty-extra/win32/intshcut.d deleted file mode 100644 index 24efb2098..000000000 --- a/3rdparty-extra/win32/intshcut.d +++ /dev/null @@ -1,90 +0,0 @@ -/***********************************************************************\ -* intshcut.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.intshcut; -version(Windows): - -private import win32.unknwn, win32.windef; - -enum : SCODE { - E_FLAGS = 0x80041000, - // = MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x1000) - URL_E_INVALID_SYNTAX = 0x80041001, - // = MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x1001) - URL_E_UNREGISTERED_PROTOCOL = 0x80041002, // etc. - IS_E_EXEC_FAILED = 0x80042002 -} - -enum IURL_SETURL_FLAGS { - IURL_SETURL_FL_GUESS_PROTOCOL = 1, - IURL_SETURL_FL_USE_DEFAULT_PROTOCOL, - ALL_IURL_SETURL_FLAGS -} - -enum IURL_INVOKECOMMAND_FLAGS { - IURL_INVOKECOMMAND_FL_ALLOW_UI = 1, - IURL_INVOKECOMMAND_FL_USE_DEFAULT_VERB, - ALL_IURL_INVOKECOMMAND_FLAGS -} - -enum TRANSLATEURL_IN_FLAGS { - TRANSLATEURL_FL_GUESS_PROTOCOL = 1, - TRANSLATEURL_FL_USE_DEFAULT_PROTOCOL, - ALL_TRANSLATEURL_FLAGS -} - -enum URLASSOCIATIONDIALOG_IN_FLAGS { - URLASSOCDLG_FL_USE_DEFAULT_NAME = 1, - URLASSOCDLG_FL_REGISTER_ASSOC, - ALL_URLASSOCDLG_FLAGS -} - -enum MIMEASSOCIATIONDIALOG_IN_FLAGS { - MIMEASSOCDLG_FL_REGISTER_ASSOC = 1, - ALL_MIMEASSOCDLG_FLAGS = MIMEASSOCDLG_FL_REGISTER_ASSOC -} - -struct URLINVOKECOMMANDINFO { - DWORD dwcbSize = URLINVOKECOMMANDINFO.sizeof; - DWORD dwFlags; - HWND hwndParent; - PCSTR pcszVerb; -} -alias URLINVOKECOMMANDINFO CURLINVOKECOMMANDINFO; -alias URLINVOKECOMMANDINFO* PURLINVOKECOMMANDINFO, PCURLINVOKECOMMANDINFO; - -interface IUniformResourceLocator : IUnknown { - HRESULT SetURL(PCSTR, DWORD); - HRESULT GetURL(PSTR*); - HRESULT InvokeCommand(PURLINVOKECOMMANDINFO); -} -//alias typeof(*(IUniformResourceLocator.init)) CIUniformResourceLocator; // value-type of interface not representable in D -alias IUniformResourceLocator PIUniformResourceLocator, - PCIUniformResourceLocator; - -extern (Windows) { - BOOL InetIsOffline(DWORD); - HRESULT MIMEAssociationDialogA(HWND, DWORD, PCSTR, PCSTR, PSTR, UINT); - HRESULT MIMEAssociationDialogW(HWND, DWORD, PCWSTR, PCWSTR, PWSTR, UINT); - HRESULT TranslateURLA(PCSTR, DWORD, PSTR*); - HRESULT TranslateURLW(PCWSTR, DWORD, PWSTR*); - HRESULT URLAssociationDialogA(HWND, DWORD, PCSTR, PCSTR, PSTR, UINT); - HRESULT URLAssociationDialogW(HWND, DWORD, PCWSTR, PCWSTR, PWSTR, UINT); -} - -version (Unicode) { - alias TranslateURLW TranslateURL; - alias MIMEAssociationDialogW MIMEAssociationDialog; - alias URLAssociationDialogW URLAssociationDialog; -} else { - alias TranslateURLA TranslateURL; - alias MIMEAssociationDialogA MIMEAssociationDialog; - alias URLAssociationDialogA URLAssociationDialog; -} diff --git a/3rdparty-extra/win32/ipexport.d b/3rdparty-extra/win32/ipexport.d deleted file mode 100644 index 70dc39aae..000000000 --- a/3rdparty-extra/win32/ipexport.d +++ /dev/null @@ -1,109 +0,0 @@ -/***********************************************************************\ -* ipexport.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ipexport; -version(Windows): - -private import win32.windef; - -const size_t MAX_ADAPTER_NAME = 128; - -// IP STATUS flags -enum : IP_STATUS { - IP_SUCCESS = 0, - IP_STATUS_BASE = 11000, - IP_BUF_TOO_SMALL, - IP_DEST_NET_UNREACHABLE, - IP_DEST_HOST_UNREACHABLE, - IP_DEST_PROT_UNREACHABLE, - IP_DEST_PORT_UNREACHABLE, - IP_NO_RESOURCES, - IP_BAD_OPTION, - IP_HW_ERROR, - IP_PACKET_TOO_BIG, - IP_REQ_TIMED_OUT, - IP_BAD_REQ, - IP_BAD_ROUTE, - IP_TTL_EXPIRED_TRANSIT, - IP_TTL_EXPIRED_REASSEM, - IP_PARAM_PROBLEM, - IP_SOURCE_QUENCH, - IP_OPTION_TOO_BIG, - IP_BAD_DESTINATION, - IP_ADDR_DELETED, - IP_SPEC_MTU_CHANGE, - IP_MTU_CHANGE, - IP_UNLOAD, // = IP_STATUS_BASE + 22 - IP_GENERAL_FAILURE = IP_STATUS_BASE + 50, - MAX_IP_STATUS = IP_GENERAL_FAILURE, - IP_PENDING = IP_STATUS_BASE + 255 -} - -// IP header Flags values -const byte IP_FLAG_DF = 2; - -// IP Option types -enum : ubyte { - IP_OPT_EOL = 0, - IP_OPT_NOP = 0x01, - IP_OPT_RR = 0x07, - IP_OPT_SECURITY = 0x82, - IP_OPT_LSRR = 0x83, - IP_OPT_SSRR = 0x89, - IP_OPT_TS = 0x44, - IP_OPT_SID = 0x88, - IP_OPT_ROUTER_ALERT = 0x94 -} - -const ubyte MAX_OPT_SIZE = 40; - -alias uint IPAddr, IPMask, IP_STATUS; - -struct IP_OPTION_INFORMATION { - ubyte Ttl; - ubyte Tos; - ubyte Flags; - ubyte OptionsSize; - ubyte* OptionsData; -} -alias IP_OPTION_INFORMATION* PIP_OPTION_INFORMATION; - -struct ICMP_ECHO_REPLY { - IPAddr Address; - uint Status; - uint RoundTripTime; - ushort DataSize; - ushort Reserved; - void* Data; - IP_OPTION_INFORMATION Options; -} -alias ICMP_ECHO_REPLY* PICMP_ECHO_REPLY; - -struct IP_ADAPTER_INDEX_MAP { - ULONG Index; - WCHAR[MAX_ADAPTER_NAME] Name; -} -alias IP_ADAPTER_INDEX_MAP* PIP_ADAPTER_INDEX_MAP; - -struct IP_INTERFACE_INFO { - LONG NumAdapters; - IP_ADAPTER_INDEX_MAP[1] _Adapter; - - IP_ADAPTER_INDEX_MAP* Adapter() { return _Adapter.ptr; } -} -alias IP_INTERFACE_INFO* PIP_INTERFACE_INFO; - -struct IP_UNIDIRECTIONAL_ADAPTER_ADDRESS { - ULONG NumAdapters; - IPAddr[1] _Address; - - IPAddr* Address() { return _Address.ptr; } -} -alias IP_UNIDIRECTIONAL_ADAPTER_ADDRESS* PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS; diff --git a/3rdparty-extra/win32/iphlpapi.d b/3rdparty-extra/win32/iphlpapi.d deleted file mode 100644 index a336d89fb..000000000 --- a/3rdparty-extra/win32/iphlpapi.d +++ /dev/null @@ -1,63 +0,0 @@ -/***********************************************************************\ -* iphlpapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.iphlpapi; -version(Windows): - -import win32.ipexport, win32.iprtrmib, win32.iptypes; -private import win32.winbase, win32.windef; - -extern (Windows) { - DWORD AddIPAddress(IPAddr, IPMask, DWORD, PULONG, PULONG); - DWORD CreateIpForwardEntry(PMIB_IPFORWARDROW); - DWORD CreateIpNetEntry(PMIB_IPNETROW); - DWORD CreateProxyArpEntry(DWORD, DWORD, DWORD); - DWORD DeleteIPAddress(ULONG); - DWORD DeleteIpForwardEntry(PMIB_IPFORWARDROW); - DWORD DeleteIpNetEntry(PMIB_IPNETROW); - DWORD DeleteProxyArpEntry(DWORD, DWORD, DWORD); - DWORD EnableRouter(HANDLE*, OVERLAPPED*); - DWORD FlushIpNetTable(DWORD); - DWORD GetAdapterIndex(LPWSTR, PULONG); - DWORD GetAdaptersInfo(PIP_ADAPTER_INFO, PULONG); - DWORD GetBestInterface(IPAddr, PDWORD); - DWORD GetBestRoute(DWORD, DWORD, PMIB_IPFORWARDROW); - DWORD GetFriendlyIfIndex(DWORD); - DWORD GetIcmpStatistics(PMIB_ICMP); - DWORD GetIfEntry(PMIB_IFROW); - DWORD GetIfTable(PMIB_IFTABLE, PULONG, BOOL); - DWORD GetInterfaceInfo(PIP_INTERFACE_INFO, PULONG); - DWORD GetIpAddrTable(PMIB_IPADDRTABLE, PULONG, BOOL); - DWORD GetIpForwardTable(PMIB_IPFORWARDTABLE, PULONG, BOOL); - DWORD GetIpNetTable(PMIB_IPNETTABLE, PULONG, BOOL); - DWORD GetIpStatistics(PMIB_IPSTATS); - DWORD GetNetworkParams(PFIXED_INFO, PULONG); - DWORD GetNumberOfInterfaces(PDWORD); - DWORD GetPerAdapterInfo(ULONG, PIP_PER_ADAPTER_INFO, PULONG); - BOOL GetRTTAndHopCount(IPAddr, PULONG, ULONG, PULONG); - DWORD GetTcpStatistics(PMIB_TCPSTATS); - DWORD GetTcpTable(PMIB_TCPTABLE, PDWORD, BOOL); - DWORD GetUniDirectionalAdapterInfo(PIP_UNIDIRECTIONAL_ADAPTER_ADDRESS, - PULONG); - DWORD GetUdpStatistics(PMIB_UDPSTATS); - DWORD GetUdpTable(PMIB_UDPTABLE, PDWORD, BOOL); - DWORD IpReleaseAddress(PIP_ADAPTER_INDEX_MAP); - DWORD IpRenewAddress(PIP_ADAPTER_INDEX_MAP); - DWORD NotifyAddrChange(PHANDLE, LPOVERLAPPED); - DWORD NotifyRouteChange(PHANDLE, LPOVERLAPPED); - DWORD SendARP(IPAddr, IPAddr, PULONG, PULONG); - DWORD SetIfEntry(PMIB_IFROW); - DWORD SetIpForwardEntry(PMIB_IPFORWARDROW); - DWORD SetIpNetEntry(PMIB_IPNETROW); - DWORD SetIpStatistics(PMIB_IPSTATS); - DWORD SetIpTTL(UINT); - DWORD SetTcpEntry(PMIB_TCPROW); - DWORD UnenableRouter(OVERLAPPED*, LPDWORD); -} diff --git a/3rdparty-extra/win32/ipifcons.d b/3rdparty-extra/win32/ipifcons.d deleted file mode 100644 index e4606b282..000000000 --- a/3rdparty-extra/win32/ipifcons.d +++ /dev/null @@ -1,39 +0,0 @@ -/***********************************************************************\ -* ipifcons.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ipifcons; -version(Windows): - -// FIXME: check types of constants - -enum { - MIB_IF_ADMIN_STATUS_UP = 1, - MIB_IF_ADMIN_STATUS_DOWN, - MIB_IF_ADMIN_STATUS_TESTING, -} - -enum { - MIB_IF_OPER_STATUS_NON_OPERATIONAL, - MIB_IF_OPER_STATUS_UNREACHABLE, - MIB_IF_OPER_STATUS_DISCONNECTED, - MIB_IF_OPER_STATUS_CONNECTING, - MIB_IF_OPER_STATUS_CONNECTED, - MIB_IF_OPER_STATUS_OPERATIONAL // = 5 -} - -enum { - MIB_IF_TYPE_OTHER = 1, - MIB_IF_TYPE_ETHERNET = 6, - MIB_IF_TYPE_TOKENRING = 9, - MIB_IF_TYPE_FDDI = 15, - MIB_IF_TYPE_PPP = 23, - MIB_IF_TYPE_LOOPBACK = 24, - MIB_IF_TYPE_SLIP = 28 -} diff --git a/3rdparty-extra/win32/iprtrmib.d b/3rdparty-extra/win32/iprtrmib.d deleted file mode 100644 index 52f9061ea..000000000 --- a/3rdparty-extra/win32/iprtrmib.d +++ /dev/null @@ -1,268 +0,0 @@ -/***********************************************************************\ -* iprtrmib.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.iprtrmib; -version(Windows): - -import win32.ipifcons; -private import win32.windef; - -// FIXME: check types of constants - -const size_t - MAXLEN_PHYSADDR = 8, - MAXLEN_IFDESCR = 256, - MAX_INTERFACE_NAME_LEN = 256; - -enum { - MIB_IPNET_TYPE_OTHER = 1, - MIB_IPNET_TYPE_INVALID, - MIB_IPNET_TYPE_DYNAMIC, - MIB_IPNET_TYPE_STATIC -} - -enum { - MIB_TCP_RTO_OTHER = 1, - MIB_TCP_RTO_CONSTANT, - MIB_TCP_RTO_RSRE, - MIB_TCP_RTO_VANJ -} - -enum { - MIB_TCP_STATE_CLOSED = 1, - MIB_TCP_STATE_LISTEN, - MIB_TCP_STATE_SYN_SENT, - MIB_TCP_STATE_SYN_RCVD, - MIB_TCP_STATE_ESTAB, - MIB_TCP_STATE_FIN_WAIT1, - MIB_TCP_STATE_FIN_WAIT2, - MIB_TCP_STATE_CLOSE_WAIT, - MIB_TCP_STATE_CLOSING, - MIB_TCP_STATE_LAST_ACK, - MIB_TCP_STATE_TIME_WAIT, - MIB_TCP_STATE_DELETE_TCB // = 12 -} - -const DWORD - MIB_USE_CURRENT_TTL = -1, - MIB_USE_CURRENT_FORWARDING = -1, - MIB_TCP_MAXCONN_DYNAMIC = -1; - -struct MIB_IPADDRROW { - DWORD dwAddr; - DWORD dwIndex; - DWORD dwMask; - DWORD dwBCastAddr; - DWORD dwReasmSize; - ushort unused1; - ushort unused2; -} -alias MIB_IPADDRROW* PMIB_IPADDRROW; - -struct MIB_IPADDRTABLE { - DWORD dwNumEntries; - MIB_IPADDRROW[1] _table; - - MIB_IPADDRROW* table() { return _table.ptr; } -} -alias MIB_IPADDRTABLE* PMIB_IPADDRTABLE; - -struct MIB_IPFORWARDROW { - DWORD dwForwardDest; - DWORD dwForwardMask; - DWORD dwForwardPolicy; - DWORD dwForwardNextHop; - DWORD dwForwardIfIndex; - DWORD dwForwardType; - DWORD dwForwardProto; - DWORD dwForwardAge; - DWORD dwForwardNextHopAS; - DWORD dwForwardMetric1; - DWORD dwForwardMetric2; - DWORD dwForwardMetric3; - DWORD dwForwardMetric4; - DWORD dwForwardMetric5; -} -alias MIB_IPFORWARDROW* PMIB_IPFORWARDROW; - -struct MIB_IPFORWARDTABLE { - DWORD dwNumEntries; - MIB_IPFORWARDROW[1] _table; - - MIB_IPFORWARDROW* table() { return _table.ptr; } -} -alias MIB_IPFORWARDTABLE* PMIB_IPFORWARDTABLE; - -struct MIB_IPNETROW { - DWORD dwIndex; - DWORD dwPhysAddrLen; - BYTE[MAXLEN_PHYSADDR] bPhysAddr; - DWORD dwAddr; - DWORD dwType; -} -alias MIB_IPNETROW* PMIB_IPNETROW; - -struct MIB_IPNETTABLE { - DWORD dwNumEntries; - MIB_IPNETROW[1] _table; - - MIB_IPNETROW* table() { return _table.ptr; } -} -alias MIB_IPNETTABLE* PMIB_IPNETTABLE; - -struct MIBICMPSTATS { - DWORD dwMsgs; - DWORD dwErrors; - DWORD dwDestUnreachs; - DWORD dwTimeExcds; - DWORD dwParmProbs; - DWORD dwSrcQuenchs; - DWORD dwRedirects; - DWORD dwEchos; - DWORD dwEchoReps; - DWORD dwTimestamps; - DWORD dwTimestampReps; - DWORD dwAddrMasks; - DWORD dwAddrMaskReps; -} -alias MIBICMPSTATS* PMIBICMPSTATS; - -struct MIBICMPINFO { - MIBICMPSTATS icmpInStats; - MIBICMPSTATS icmpOutStats; -} -alias MIBICMPINFO* PMIBICMPINFO; - -struct MIB_ICMP { - MIBICMPINFO stats; -} -alias MIB_ICMP* PMIB_ICMP; - -struct MIB_IFROW { - WCHAR[MAX_INTERFACE_NAME_LEN] wszName; - DWORD dwIndex; - DWORD dwType; - DWORD dwMtu; - DWORD dwSpeed; - DWORD dwPhysAddrLen; - BYTE[MAXLEN_PHYSADDR] bPhysAddr; - DWORD dwAdminStatus; - DWORD dwOperStatus; - DWORD dwLastChange; - DWORD dwInOctets; - DWORD dwInUcastPkts; - DWORD dwInNUcastPkts; - DWORD dwInDiscards; - DWORD dwInErrors; - DWORD dwInUnknownProtos; - DWORD dwOutOctets; - DWORD dwOutUcastPkts; - DWORD dwOutNUcastPkts; - DWORD dwOutDiscards; - DWORD dwOutErrors; - DWORD dwOutQLen; - DWORD dwDescrLen; - BYTE[MAXLEN_IFDESCR] bDescr; -} -alias MIB_IFROW* PMIB_IFROW; - -struct MIB_IFTABLE { - DWORD dwNumEntries; - MIB_IFROW[1] _table; - - MIB_IFROW* table() { return _table.ptr; } -} -alias MIB_IFTABLE* PMIB_IFTABLE; - -struct MIB_IPSTATS { - DWORD dwForwarding; - DWORD dwDefaultTTL; - DWORD dwInReceives; - DWORD dwInHdrErrors; - DWORD dwInAddrErrors; - DWORD dwForwDatagrams; - DWORD dwInUnknownProtos; - DWORD dwInDiscards; - DWORD dwInDelivers; - DWORD dwOutRequests; - DWORD dwRoutingDiscards; - DWORD dwOutDiscards; - DWORD dwOutNoRoutes; - DWORD dwReasmTimeout; - DWORD dwReasmReqds; - DWORD dwReasmOks; - DWORD dwReasmFails; - DWORD dwFragOks; - DWORD dwFragFails; - DWORD dwFragCreates; - DWORD dwNumIf; - DWORD dwNumAddr; - DWORD dwNumRoutes; -} -alias MIB_IPSTATS* PMIB_IPSTATS; - -struct MIB_TCPSTATS { - DWORD dwRtoAlgorithm; - DWORD dwRtoMin; - DWORD dwRtoMax; - DWORD dwMaxConn; - DWORD dwActiveOpens; - DWORD dwPassiveOpens; - DWORD dwAttemptFails; - DWORD dwEstabResets; - DWORD dwCurrEstab; - DWORD dwInSegs; - DWORD dwOutSegs; - DWORD dwRetransSegs; - DWORD dwInErrs; - DWORD dwOutRsts; - DWORD dwNumConns; -} -alias MIB_TCPSTATS* PMIB_TCPSTATS; - -struct MIB_TCPROW { - DWORD dwState; - DWORD dwLocalAddr; - DWORD dwLocalPort; - DWORD dwRemoteAddr; - DWORD dwRemotePort; -} -alias MIB_TCPROW* PMIB_TCPROW; - -struct MIB_TCPTABLE { - DWORD dwNumEntries; - MIB_TCPROW[1] _table; - - MIB_TCPROW* table() { return _table.ptr; } -} -alias MIB_TCPTABLE* PMIB_TCPTABLE; - -struct MIB_UDPSTATS { - DWORD dwInDatagrams; - DWORD dwNoPorts; - DWORD dwInErrors; - DWORD dwOutDatagrams; - DWORD dwNumAddrs; -} -alias MIB_UDPSTATS* PMIB_UDPSTATS; - -struct MIB_UDPROW { - DWORD dwLocalAddr; - DWORD dwLocalPort; -} -alias MIB_UDPROW* PMIB_UDPROW; - -struct MIB_UDPTABLE { - DWORD dwNumEntries; - MIB_UDPROW[1] _table; - - MIB_UDPROW* table() { return _table.ptr; } -} -alias MIB_UDPTABLE* PMIB_UDPTABLE; diff --git a/3rdparty-extra/win32/iptypes.d b/3rdparty-extra/win32/iptypes.d deleted file mode 100644 index acbdbc732..000000000 --- a/3rdparty-extra/win32/iptypes.d +++ /dev/null @@ -1,101 +0,0 @@ -/***********************************************************************\ -* iptypes.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.iptypes; -version(Windows): - -import win32.windef; -version(Tango){ - private import tango.stdc.time; -}else{ - private import std.c.time; -} -//#include - -const size_t - DEFAULT_MINIMUM_ENTITIES = 32, - MAX_ADAPTER_ADDRESS_LENGTH = 8, - MAX_ADAPTER_DESCRIPTION_LENGTH = 128, - MAX_ADAPTER_NAME_LENGTH = 256, - MAX_DOMAIN_NAME_LEN = 128, - MAX_HOSTNAME_LEN = 128, - MAX_SCOPE_ID_LEN = 256; - -const UINT - BROADCAST_NODETYPE = 1, - PEER_TO_PEER_NODETYPE = 2, - MIXED_NODETYPE = 4, - HYBRID_NODETYPE = 8; - -enum : UINT { - IF_OTHER_ADAPTERTYPE, - IF_ETHERNET_ADAPTERTYPE, - IF_TOKEN_RING_ADAPTERTYPE, - IF_FDDI_ADAPTERTYPE, - IF_PPP_ADAPTERTYPE, - IF_LOOPBACK_ADAPTERTYPE // = 5 -} - -struct IP_ADDRESS_STRING { - char[16] String; -} -alias IP_ADDRESS_STRING IP_MASK_STRING; -alias IP_ADDRESS_STRING* PIP_ADDRESS_STRING, PIP_MASK_STRING; - -struct IP_ADDR_STRING { - IP_ADDR_STRING* Next; - IP_ADDRESS_STRING IpAddress; - IP_MASK_STRING IpMask; - DWORD Context; -} -alias IP_ADDR_STRING* PIP_ADDR_STRING; - -struct IP_ADAPTER_INFO { - IP_ADAPTER_INFO* Next; - DWORD ComboIndex; - char[MAX_ADAPTER_NAME_LENGTH+4] AdapterName; - char[MAX_ADAPTER_DESCRIPTION_LENGTH+4] Description; - UINT AddressLength; - BYTE[MAX_ADAPTER_ADDRESS_LENGTH] Address; - DWORD Index; - UINT Type; - UINT DhcpEnabled; - PIP_ADDR_STRING CurrentIpAddress; - IP_ADDR_STRING IpAddressList; - IP_ADDR_STRING GatewayList; - IP_ADDR_STRING DhcpServer; - BOOL HaveWins; - IP_ADDR_STRING PrimaryWinsServer; - IP_ADDR_STRING SecondaryWinsServer; - time_t LeaseObtained; - time_t LeaseExpires; -} -alias IP_ADAPTER_INFO* PIP_ADAPTER_INFO; - -struct IP_PER_ADAPTER_INFO { - UINT AutoconfigEnabled; - UINT AutoconfigActive; - PIP_ADDR_STRING CurrentDnsServer; - IP_ADDR_STRING DnsServerList; -} -alias IP_PER_ADAPTER_INFO* PIP_PER_ADAPTER_INFO; - -struct FIXED_INFO { - char[MAX_HOSTNAME_LEN+4] HostName; - char[MAX_DOMAIN_NAME_LEN+4] DomainName; - PIP_ADDR_STRING CurrentDnsServer; - IP_ADDR_STRING DnsServerList; - UINT NodeType; - char[MAX_SCOPE_ID_LEN+4] ScopeId; - UINT EnableRouting; - UINT EnableProxy; - UINT EnableDns; -} -alias FIXED_INFO* PFIXED_INFO; diff --git a/3rdparty-extra/win32/isguids.d b/3rdparty-extra/win32/isguids.d deleted file mode 100644 index 85f1684d6..000000000 --- a/3rdparty-extra/win32/isguids.d +++ /dev/null @@ -1,18 +0,0 @@ -/***********************************************************************\ -* isguids.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.isguids; -version(Windows): - -private import win32.basetyps; - -extern (C) extern const GUID - CLSID_InternetShortcut, - IID_IUniformResourceLocator; diff --git a/3rdparty-extra/win32/lm.d b/3rdparty-extra/win32/lm.d deleted file mode 100644 index fb2be97f0..000000000 --- a/3rdparty-extra/win32/lm.d +++ /dev/null @@ -1,48 +0,0 @@ -/***********************************************************************\ -* lm.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lm; -version(Windows): -/* removed - now supporting only Win2k up -version (WindowsVista) { - version = WIN32_WINNT_ONLY; -} else version (Windows2003) { - version = WIN32_WINNT_ONLY; -} else version (WindowsXP) { - version = WIN32_WINNT_ONLY; -} else version (WindowsNTonly) { - version = WIN32_WINNT_ONLY; -} -*/ -public import win32.lmcons; -public import win32.lmaccess; -public import win32.lmalert; -public import win32.lmat; -public import win32.lmerr; -public import win32.lmshare; -public import win32.lmapibuf; -public import win32.lmremutl; -public import win32.lmrepl; -public import win32.lmuse; -public import win32.lmstats; -public import win32.lmwksta; -public import win32.lmserver; - -version (Windows2000) { -} else { - public import win32.lmmsg; -} - -// FIXME: Everything in these next files seems to be deprecated! -import win32.lmaudit; -import win32.lmchdev; // can't find many docs for functions from this file. -import win32.lmconfig; -import win32.lmerrlog; -import win32.lmsvc; -import win32.lmsname; // in MinGW, this was publicly included by lm.lmsvc diff --git a/3rdparty-extra/win32/lmaccess.d b/3rdparty-extra/win32/lmaccess.d deleted file mode 100644 index cbf556b2b..000000000 --- a/3rdparty-extra/win32/lmaccess.d +++ /dev/null @@ -1,760 +0,0 @@ -/***********************************************************************\ -* lmaccess.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmaccess; -version(Windows): -pragma(lib, "netapi32"); - -/** - Changes relative to MinGW: - USER_POSIX_ID_PARMNUM and GROUP_POSIX_ID_PARMNUM aren't in MinGW or in - the Platform SDK docs, so they have been dropped from this file. -*/ - -private import win32.lmcons, win32.windef; - -const wchar[] - GROUP_SPECIALGRP_USERS = "USERS", - GROUP_SPECIALGRP_ADMINS = "ADMINS", - GROUP_SPECIALGRP_GUESTS = "GUESTS", - GROUP_SPECIALGRP_LOCAL = "LOCAL"; - -const ACCESS_LETTERS = "RWCXDAP "; - -const NETLOGON_CONTROL_QUERY=1; -const NETLOGON_CONTROL_REPLICATE=2; -const NETLOGON_CONTROL_SYNCHRONIZE=3; -const NETLOGON_CONTROL_PDC_REPLICATE=4; -const NETLOGON_CONTROL_REDISCOVER=5; -const NETLOGON_CONTROL_TC_QUERY=6; -const NETLOGON_CONTROL_BACKUP_CHANGE_LOG=65532; -const NETLOGON_CONTROL_TRUNCATE_LOG=65533; -const NETLOGON_CONTROL_SET_DBFLAG=65534; -const NETLOGON_CONTROL_BREAKPOINT=65535; - -const UF_SCRIPT=1; -const UF_ACCOUNTDISABLE=2; -const UF_HOMEDIR_REQUIRED=8; -const UF_LOCKOUT=16; -const UF_PASSWD_NOTREQD=32; -const UF_PASSWD_CANT_CHANGE=64; -const UF_TEMP_DUPLICATE_ACCOUNT=256; -const UF_NORMAL_ACCOUNT=512; -const UF_INTERDOMAIN_TRUST_ACCOUNT=2048; -const UF_WORKSTATION_TRUST_ACCOUNT=4096; -const UF_SERVER_TRUST_ACCOUNT=8192; -const UF_MNS_LOGON_ACCOUNT=131072; -const UF_MACHINE_ACCOUNT_MASK=UF_INTERDOMAIN_TRUST_ACCOUNT|UF_WORKSTATION_TRUST_ACCOUNT|UF_SERVER_TRUST_ACCOUNT; -const UF_ACCOUNT_TYPE_MASK=UF_TEMP_DUPLICATE_ACCOUNT|UF_NORMAL_ACCOUNT|UF_INTERDOMAIN_TRUST_ACCOUNT|UF_WORKSTATION_TRUST_ACCOUNT|UF_SERVER_TRUST_ACCOUNT; -const UF_DONT_EXPIRE_PASSWD=65536; -const UF_SETTABLE_BITS=UF_SCRIPT|UF_ACCOUNTDISABLE|UF_LOCKOUT|UF_HOMEDIR_REQUIRED|UF_PASSWD_NOTREQD|UF_PASSWD_CANT_CHANGE|UF_ACCOUNT_TYPE_MASK|UF_DONT_EXPIRE_PASSWD; - -const FILTER_TEMP_DUPLICATE_ACCOUNT=1; -const FILTER_NORMAL_ACCOUNT=2; -const FILTER_INTERDOMAIN_TRUST_ACCOUNT=8; -const FILTER_WORKSTATION_TRUST_ACCOUNT=16; -const FILTER_SERVER_TRUST_ACCOUNT=32; - -const LG_INCLUDE_INDIRECT=1; - -const AF_OP_PRINT=1; -const AF_OP_COMM=2; -const AF_OP_SERVER=4; -const AF_OP_ACCOUNTS=8; -const AF_SETTABLE_BITS=(AF_OP_PRINT|AF_OP_COMM|AF_OP_SERVER|AF_OP_ACCOUNTS); - -const UAS_ROLE_STANDALONE=0; -const UAS_ROLE_MEMBER=1; -const UAS_ROLE_BACKUP=2; -const UAS_ROLE_PRIMARY=3; - -const USER_NAME_PARMNUM=1; -const USER_PASSWORD_PARMNUM=3; -const USER_PASSWORD_AGE_PARMNUM=4; -const USER_PRIV_PARMNUM=5; -const USER_HOME_DIR_PARMNUM=6; -const USER_COMMENT_PARMNUM=7; -const USER_FLAGS_PARMNUM=8; -const USER_SCRIPT_PATH_PARMNUM=9; -const USER_AUTH_FLAGS_PARMNUM=10; -const USER_FULL_NAME_PARMNUM=11; -const USER_USR_COMMENT_PARMNUM=12; -const USER_PARMS_PARMNUM=13; -const USER_WORKSTATIONS_PARMNUM=14; -const USER_LAST_LOGON_PARMNUM=15; -const USER_LAST_LOGOFF_PARMNUM=16; -const USER_ACCT_EXPIRES_PARMNUM=17; -const USER_MAX_STORAGE_PARMNUM=18; -const USER_UNITS_PER_WEEK_PARMNUM=19; -const USER_LOGON_HOURS_PARMNUM=20; -const USER_PAD_PW_COUNT_PARMNUM=21; -const USER_NUM_LOGONS_PARMNUM=22; -const USER_LOGON_SERVER_PARMNUM=23; -const USER_COUNTRY_CODE_PARMNUM=24; -const USER_CODE_PAGE_PARMNUM=25; -const USER_PRIMARY_GROUP_PARMNUM=51; -const USER_PROFILE=52; -const USER_PROFILE_PARMNUM=52; -const USER_HOME_DIR_DRIVE_PARMNUM=53; - -const USER_NAME_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_NAME_PARMNUM; -const USER_PASSWORD_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_PASSWORD_PARMNUM; -const USER_PASSWORD_AGE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_PASSWORD_AGE_PARMNUM; -const USER_PRIV_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_PRIV_PARMNUM; -const USER_HOME_DIR_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_HOME_DIR_PARMNUM; -const USER_COMMENT_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_COMMENT_PARMNUM; -const USER_FLAGS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_FLAGS_PARMNUM; -const USER_SCRIPT_PATH_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_SCRIPT_PATH_PARMNUM; -const USER_AUTH_FLAGS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_AUTH_FLAGS_PARMNUM; -const USER_FULL_NAME_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_FULL_NAME_PARMNUM; -const USER_USR_COMMENT_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_USR_COMMENT_PARMNUM; -const USER_PARMS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_PARMS_PARMNUM; -const USER_WORKSTATIONS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_WORKSTATIONS_PARMNUM; -const USER_LAST_LOGON_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_LAST_LOGON_PARMNUM; -const USER_LAST_LOGOFF_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_LAST_LOGOFF_PARMNUM; -const USER_ACCT_EXPIRES_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_ACCT_EXPIRES_PARMNUM; -const USER_MAX_STORAGE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_MAX_STORAGE_PARMNUM; -const USER_UNITS_PER_WEEK_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_UNITS_PER_WEEK_PARMNUM; -const USER_LOGON_HOURS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_LOGON_HOURS_PARMNUM; -const USER_PAD_PW_COUNT_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_PAD_PW_COUNT_PARMNUM; -const USER_NUM_LOGONS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_NUM_LOGONS_PARMNUM; -const USER_LOGON_SERVER_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_LOGON_SERVER_PARMNUM; -const USER_COUNTRY_CODE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_COUNTRY_CODE_PARMNUM; -const USER_CODE_PAGE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_CODE_PAGE_PARMNUM; -const USER_PRIMARY_GROUP_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_PRIMARY_GROUP_PARMNUM; -// USER_POSIX_ID_PARMNUM isn't in MinGW or in the Platform SDK docs. -//const USER_POSIX_ID_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_POSIX_ID_PARMNUM; -const USER_HOME_DIR_DRIVE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+USER_HOME_DIR_DRIVE_PARMNUM; - -const NULL_USERSETINFO_PASSWD=" "; -const ULONG TIMEQ_FOREVER=-1; -const ULONG USER_MAXSTORAGE_UNLIMITED=-1; -const ULONG USER_NO_LOGOFF=-1; -const UNITS_PER_DAY=24; -const UNITS_PER_WEEK=168; -const USER_PRIV_MASK=3; -const USER_PRIV_GUEST=0; -const USER_PRIV_USER=1; -const USER_PRIV_ADMIN=2; -const MAX_PASSWD_LEN=PWLEN; -const DEF_MIN_PWLEN=6; -const DEF_PWUNIQUENESS=5; -const DEF_MAX_PWHIST=8; -const DEF_MAX_PWAGE=TIMEQ_FOREVER; -const DEF_MIN_PWAGE=0; -const ULONG DEF_FORCE_LOGOFF=0xffffffff; -const DEF_MAX_BADPW=0; -const ONE_DAY=86400; -const VALIDATED_LOGON=0; -const PASSWORD_EXPIRED=2; -const NON_VALIDATED_LOGON=3; -const VALID_LOGOFF=1; - -const MODALS_MIN_PASSWD_LEN_PARMNUM=1; -const MODALS_MAX_PASSWD_AGE_PARMNUM=2; -const MODALS_MIN_PASSWD_AGE_PARMNUM=3; -const MODALS_FORCE_LOGOFF_PARMNUM=4; -const MODALS_PASSWD_HIST_LEN_PARMNUM=5; -const MODALS_ROLE_PARMNUM=6; -const MODALS_PRIMARY_PARMNUM=7; -const MODALS_DOMAIN_NAME_PARMNUM=8; -const MODALS_DOMAIN_ID_PARMNUM=9; -const MODALS_LOCKOUT_DURATION_PARMNUM=10; -const MODALS_LOCKOUT_OBSERVATION_WINDOW_PARMNUM=11; -const MODALS_LOCKOUT_THRESHOLD_PARMNUM=12; - -const MODALS_MIN_PASSWD_LEN_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_MIN_PASSWD_LEN_PARMNUM); -const MODALS_MAX_PASSWD_AGE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_MAX_PASSWD_AGE_PARMNUM); -const MODALS_MIN_PASSWD_AGE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_MIN_PASSWD_AGE_PARMNUM); -const MODALS_FORCE_LOGOFF_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_FORCE_LOGOFF_PARMNUM); -const MODALS_PASSWD_HIST_LEN_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_PASSWD_HIST_LEN_PARMNUM); -const MODALS_ROLE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_ROLE_PARMNUM); -const MODALS_PRIMARY_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_PRIMARY_PARMNUM); -const MODALS_DOMAIN_NAME_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_DOMAIN_NAME_PARMNUM); -const MODALS_DOMAIN_ID_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+MODALS_DOMAIN_ID_PARMNUM); - -const GROUPIDMASK=0x8000; -const GROUP_ALL_PARMNUM=0; -const GROUP_NAME_PARMNUM=1; -const GROUP_COMMENT_PARMNUM=2; -const GROUP_ATTRIBUTES_PARMNUM=3; - -const GROUP_ALL_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + GROUP_ALL_PARMNUM; -const GROUP_NAME_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + GROUP_NAME_PARMNUM; -const GROUP_COMMENT_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + GROUP_COMMENT_PARMNUM; -const GROUP_ATTRIBUTES_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + GROUP_ATTRIBUTES_PARMNUM; -// GROUP_POSIX_ID_PARMNUM isn't in MinGW or in the Platform SDK docs. -//const GROUP_POSIX_ID_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + GROUP_POSIX_ID_PARMNUM; - -const LOCALGROUP_NAME_PARMNUM=1; -const LOCALGROUP_COMMENT_PARMNUM=2; -const MAXPERMENTRIES=64; -const ACCESS_NONE=0; -const ACCESS_READ=1; -const ACCESS_WRITE=2; -const ACCESS_CREATE=4; -const ACCESS_EXEC=8; -const ACCESS_DELETE=16; -const ACCESS_ATRIB=32; -const ACCESS_PERM=64; -const ACCESS_ALL = ACCESS_READ|ACCESS_WRITE|ACCESS_CREATE|ACCESS_EXEC|ACCESS_DELETE|ACCESS_ATRIB|ACCESS_PERM; -const ACCESS_GROUP=0x8000; -const ACCESS_AUDIT=1; -const ACCESS_SUCCESS_OPEN=16; -const ACCESS_SUCCESS_WRITE=32; -const ACCESS_SUCCESS_DELETE=64; -const ACCESS_SUCCESS_ACL=128; -const ACCESS_SUCCESS_MASK=240; -const ACCESS_FAIL_OPEN=256; -const ACCESS_FAIL_WRITE=512; -const ACCESS_FAIL_DELETE=1024; -const ACCESS_FAIL_ACL=2048; -const ACCESS_FAIL_MASK=3840; -const ACCESS_FAIL_SHIFT=4; -const ACCESS_RESOURCE_NAME_PARMNUM=1; -const ACCESS_ATTR_PARMNUM=2; -const ACCESS_COUNT_PARMNUM=3; -const ACCESS_ACCESS_LIST_PARMNUM=4; - -const ACCESS_RESOURCE_NAME_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+ACCESS_RESOURCE_NAME_PARMNUM); -const ACCESS_ATTR_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+ACCESS_ATTR_PARMNUM); -const ACCESS_COUNT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+ACCESS_COUNT_PARMNUM); -const ACCESS_ACCESS_LIST_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+ACCESS_ACCESS_LIST_PARMNUM); - -const NETLOGON_REPLICATION_NEEDED=1; -const NETLOGON_REPLICATION_IN_PROGRESS=2; -const NETLOGON_FULL_SYNC_REPLICATION=4; -const NETLOGON_REDO_NEEDED=8; - -struct USER_INFO_0 { - LPWSTR usri0_name; -} -alias USER_INFO_0* PUSER_INFO_0, LPUSER_INFO_0; - -struct USER_INFO_1{ - LPWSTR usri1_name; - LPWSTR usri1_password; - DWORD usri1_password_age; - DWORD usri1_priv; - LPWSTR usri1_home_dir; - LPWSTR usri1_comment; - DWORD usri1_flags; - LPWSTR usri1_script_path; -} -alias USER_INFO_1* PUSER_INFO_1, LPUSER_INFO_1; - -struct USER_INFO_2{ - LPWSTR usri2_name; - LPWSTR usri2_password; - DWORD usri2_password_age; - DWORD usri2_priv; - LPWSTR usri2_home_dir; - LPWSTR usri2_comment; - DWORD usri2_flags; - LPWSTR usri2_script_path; - DWORD usri2_auth_flags; - LPWSTR usri2_full_name; - LPWSTR usri2_usr_comment; - LPWSTR usri2_parms; - LPWSTR usri2_workstations; - DWORD usri2_last_logon; - DWORD usri2_last_logoff; - DWORD usri2_acct_expires; - DWORD usri2_max_storage; - DWORD usri2_units_per_week; - PBYTE usri2_logon_hours; - DWORD usri2_bad_pw_count; - DWORD usri2_num_logons; - LPWSTR usri2_logon_server; - DWORD usri2_country_code; - DWORD usri2_code_page; -} -alias USER_INFO_2* PUSER_INFO_2, LPUSER_INFO_2; - -struct USER_INFO_3{ - LPWSTR usri3_name; - LPWSTR usri3_password; - DWORD usri3_password_age; - DWORD usri3_priv; - LPWSTR usri3_home_dir; - LPWSTR usri3_comment; - DWORD usri3_flags; - LPWSTR usri3_script_path; - DWORD usri3_auth_flags; - LPWSTR usri3_full_name; - LPWSTR usri3_usr_comment; - LPWSTR usri3_parms; - LPWSTR usri3_workstations; - DWORD usri3_last_logon; - DWORD usri3_last_logoff; - DWORD usri3_acct_expires; - DWORD usri3_max_storage; - DWORD usri3_units_per_week; - PBYTE usri3_logon_hours; - DWORD usri3_bad_pw_count; - DWORD usri3_num_logons; - LPWSTR usri3_logon_server; - DWORD usri3_country_code; - DWORD usri3_code_page; - DWORD usri3_user_id; - DWORD usri3_primary_group_id; - LPWSTR usri3_profile; - LPWSTR usri3_home_dir_drive; - DWORD usri3_password_expired; -} -alias USER_INFO_3* PUSER_INFO_3, LPUSER_INFO_3; - -struct USER_INFO_10{ - LPWSTR usri10_name; - LPWSTR usri10_comment; - LPWSTR usri10_usr_comment; - LPWSTR usri10_full_name; -} -alias USER_INFO_10* PUSER_INFO_10, LPUSER_INFO_10; - -struct USER_INFO_11{ - LPWSTR usri11_name; - LPWSTR usri11_comment; - LPWSTR usri11_usr_comment; - LPWSTR usri11_full_name; - DWORD usri11_priv; - DWORD usri11_auth_flags; - DWORD usri11_password_age; - LPWSTR usri11_home_dir; - LPWSTR usri11_parms; - DWORD usri11_last_logon; - DWORD usri11_last_logoff; - DWORD usri11_bad_pw_count; - DWORD usri11_num_logons; - LPWSTR usri11_logon_server; - DWORD usri11_country_code; - LPWSTR usri11_workstations; - DWORD usri11_max_storage; - DWORD usri11_units_per_week; - PBYTE usri11_logon_hours; - DWORD usri11_code_page; -} -alias USER_INFO_11* PUSER_INFO_11, LPUSER_INFO_11; - -struct USER_INFO_20 { - LPWSTR usri20_name; - LPWSTR usri20_full_name; - LPWSTR usri20_comment; - DWORD usri20_flags; - DWORD usri20_user_id; -} -alias USER_INFO_20* PUSER_INFO_20, LPUSER_INFO_20; - -struct USER_INFO_21 { - BYTE[ENCRYPTED_PWLEN] usri21_password; -} -alias USER_INFO_21* PUSER_INFO_21, LPUSER_INFO_21; - -struct USER_INFO_22{ - LPWSTR usri22_name; - BYTE[ENCRYPTED_PWLEN] usri22_password; - DWORD usri22_password_age; - DWORD usri22_priv; - LPWSTR usri22_home_dir; - LPWSTR usri22_comment; - DWORD usri22_flags; - LPWSTR usri22_script_path; - DWORD usri22_auth_flags; - LPWSTR usri22_full_name; - LPWSTR usri22_usr_comment; - LPWSTR usri22_parms; - LPWSTR usri22_workstations; - DWORD usri22_last_logon; - DWORD usri22_last_logoff; - DWORD usri22_acct_expires; - DWORD usri22_max_storage; - DWORD usri22_units_per_week; - PBYTE usri22_logon_hours; - DWORD usri22_bad_pw_count; - DWORD usri22_num_logons; - LPWSTR usri22_logon_server; - DWORD usri22_country_code; - DWORD usri22_code_page; -} -alias USER_INFO_22* PUSER_INFO_22, LPUSER_INFO_22; - -struct USER_INFO_1003{ - LPWSTR usri1003_password; -} -alias USER_INFO_1003* PUSER_INFO_1003, LPUSER_INFO_1003; - -struct USER_INFO_1005{ - DWORD usri1005_priv; -} -alias USER_INFO_1005* PUSER_INFO_1005, LPUSER_INFO_1005; - -struct USER_INFO_1006{ - LPWSTR usri1006_home_dir; -} -alias USER_INFO_1006* PUSER_INFO_1006, LPUSER_INFO_1006; - -struct USER_INFO_1007{ - LPWSTR usri1007_comment; -} -alias USER_INFO_1007* PUSER_INFO_1007, LPUSER_INFO_1007; - -struct USER_INFO_1008{ - DWORD usri1008_flags; -} -alias USER_INFO_1008* PUSER_INFO_1008, LPUSER_INFO_1008; - -struct USER_INFO_1009{ - LPWSTR usri1009_script_path; -} -alias USER_INFO_1009* PUSER_INFO_1009, LPUSER_INFO_1009; - -struct USER_INFO_1010{ - DWORD usri1010_auth_flags; -} -alias USER_INFO_1010* PUSER_INFO_1010, LPUSER_INFO_1010; - -struct USER_INFO_1011{ - LPWSTR usri1011_full_name; -} -alias USER_INFO_1011* PUSER_INFO_1011, LPUSER_INFO_1011; - -struct USER_INFO_1012{ - LPWSTR usri1012_usr_comment; -} -alias USER_INFO_1012* PUSER_INFO_1012, LPUSER_INFO_1012; - -struct USER_INFO_1013{ - LPWSTR usri1013_parms; -} -alias USER_INFO_1013* PUSER_INFO_1013, LPUSER_INFO_1013; - -struct USER_INFO_1014{ - LPWSTR usri1014_workstations; -} -alias USER_INFO_1014* PUSER_INFO_1014, LPUSER_INFO_1014; - -struct USER_INFO_1017{ - DWORD usri1017_acct_expires; -} -alias USER_INFO_1017* PUSER_INFO_1017, LPUSER_INFO_1017; - -struct USER_INFO_1018{ - DWORD usri1018_max_storage; -} -alias USER_INFO_1018* PUSER_INFO_1018, LPUSER_INFO_1018; - -struct USER_INFO_1020{ - DWORD usri1020_units_per_week; - PBYTE usri1020_logon_hours; -} -alias USER_INFO_1020* PUSER_INFO_1020, LPUSER_INFO_1020; - -struct USER_INFO_1023{ - LPWSTR usri1023_logon_server; -} -alias USER_INFO_1023* PUSER_INFO_1023, LPUSER_INFO_1023; - -struct USER_INFO_1024{ - DWORD usri1024_country_code; -} -alias USER_INFO_1024* PUSER_INFO_1024, LPUSER_INFO_1024; - -struct USER_INFO_1025{ - DWORD usri1025_code_page; -} -alias USER_INFO_1025* PUSER_INFO_1025, LPUSER_INFO_1025; - -struct USER_INFO_1051{ - DWORD usri1051_primary_group_id; -} -alias USER_INFO_1051* PUSER_INFO_1051, LPUSER_INFO_1051; - -struct USER_INFO_1052{ - LPWSTR usri1052_profile; -} -alias USER_INFO_1052* PUSER_INFO_1052, LPUSER_INFO_1052; - -struct USER_INFO_1053{ - LPWSTR usri1053_home_dir_drive; -} -alias USER_INFO_1053* PUSER_INFO_1053, LPUSER_INFO_1053; - -struct USER_MODALS_INFO_0{ - DWORD usrmod0_min_passwd_len; - DWORD usrmod0_max_passwd_age; - DWORD usrmod0_min_passwd_age; - DWORD usrmod0_force_logoff; - DWORD usrmod0_password_hist_len; -} -alias USER_MODALS_INFO_0* PUSER_MODALS_INFO_0, LPUSER_MODALS_INFO_0; - -struct USER_MODALS_INFO_1{ - DWORD usrmod1_role; - LPWSTR usrmod1_primary; -} -alias USER_MODALS_INFO_1* PUSER_MODALS_INFO_1, LPUSER_MODALS_INFO_1; - -struct USER_MODALS_INFO_2{ - LPWSTR usrmod2_domain_name; - PSID usrmod2_domain_id; -} -alias USER_MODALS_INFO_2* PUSER_MODALS_INFO_2, LPUSER_MODALS_INFO_2; - -struct USER_MODALS_INFO_3{ - DWORD usrmod3_lockout_duration; - DWORD usrmod3_lockout_observation_window; - DWORD usrmod3_lockout_threshold; -} -alias USER_MODALS_INFO_3* PUSER_MODALS_INFO_3, LPUSER_MODALS_INFO_3; - -struct USER_MODALS_INFO_1001{ - DWORD usrmod1001_min_passwd_len; -} -alias USER_MODALS_INFO_1001* PUSER_MODALS_INFO_1001, LPUSER_MODALS_INFO_1001; - -struct USER_MODALS_INFO_1002{ - DWORD usrmod1002_max_passwd_age; -} -alias USER_MODALS_INFO_1002* PUSER_MODALS_INFO_1002, LPUSER_MODALS_INFO_1002; - -struct USER_MODALS_INFO_1003{ - DWORD usrmod1003_min_passwd_age; -} -alias USER_MODALS_INFO_1003* PUSER_MODALS_INFO_1003, LPUSER_MODALS_INFO_1003; - -struct USER_MODALS_INFO_1004{ - DWORD usrmod1004_force_logoff; -} -alias USER_MODALS_INFO_1004* PUSER_MODALS_INFO_1004, LPUSER_MODALS_INFO_1004; - -struct USER_MODALS_INFO_1005{ - DWORD usrmod1005_password_hist_len; -} -alias USER_MODALS_INFO_1005* PUSER_MODALS_INFO_1005, LPUSER_MODALS_INFO_1005; - -struct USER_MODALS_INFO_1006{ - DWORD usrmod1006_role; -} -alias USER_MODALS_INFO_1006* PUSER_MODALS_INFO_1006, LPUSER_MODALS_INFO_1006; - -struct USER_MODALS_INFO_1007{ - LPWSTR usrmod1007_primary; -} -alias USER_MODALS_INFO_1007* PUSER_MODALS_INFO_1007, LPUSER_MODALS_INFO_1007; - -struct GROUP_INFO_0{ - LPWSTR grpi0_name; -} -alias GROUP_INFO_0* PGROUP_INFO_0, LPGROUP_INFO_0; - -struct GROUP_INFO_1{ - LPWSTR grpi1_name; - LPWSTR grpi1_comment; -} -alias GROUP_INFO_1* PGROUP_INFO_1, LPGROUP_INFO_1; - -struct GROUP_INFO_2{ - LPWSTR grpi2_name; - LPWSTR grpi2_comment; - DWORD grpi2_group_id; - DWORD grpi2_attributes; -} -alias GROUP_INFO_2* PGROUP_INFO_2; - -struct GROUP_INFO_1002{ - LPWSTR grpi1002_comment; -} -alias GROUP_INFO_1002* PGROUP_INFO_1002, LPGROUP_INFO_1002; - -struct GROUP_INFO_1005{ - DWORD grpi1005_attributes; -} -alias GROUP_INFO_1005* PGROUP_INFO_1005, LPGROUP_INFO_1005; - -struct GROUP_USERS_INFO_0{ - LPWSTR grui0_name; -} -alias GROUP_USERS_INFO_0* PGROUP_USERS_INFO_0, LPGROUP_USERS_INFO_0; - -struct GROUP_USERS_INFO_1{ - LPWSTR grui1_name; - DWORD grui1_attributes; -} -alias GROUP_USERS_INFO_1* PGROUP_USERS_INFO_1, LPGROUP_USERS_INFO_1; - -struct LOCALGROUP_INFO_0{ - LPWSTR lgrpi0_name; -} -alias LOCALGROUP_INFO_0* PLOCALGROUP_INFO_0, LPLOCALGROUP_INFO_0; - -struct LOCALGROUP_INFO_1{ - LPWSTR lgrpi1_name; - LPWSTR lgrpi1_comment; -} -alias LOCALGROUP_INFO_1* PLOCALGROUP_INFO_1, LPLOCALGROUP_INFO_1; - -struct LOCALGROUP_INFO_1002{ - LPWSTR lgrpi1002_comment; -} -alias LOCALGROUP_INFO_1002* PLOCALGROUP_INFO_1002, LPLOCALGROUP_INFO_1002; - -struct LOCALGROUP_MEMBERS_INFO_0{ - PSID lgrmi0_sid; -} -alias LOCALGROUP_MEMBERS_INFO_0* PLOCALGROUP_MEMBERS_INFO_0, LPLOCALGROUP_MEMBERS_INFO_0; - -struct LOCALGROUP_MEMBERS_INFO_1{ - PSID lgrmi1_sid; - SID_NAME_USE lgrmi1_sidusage; - LPWSTR lgrmi1_name; -} -alias LOCALGROUP_MEMBERS_INFO_1* PLOCALGROUP_MEMBERS_INFO_1, LPLOCALGROUP_MEMBERS_INFO_1; - -struct LOCALGROUP_MEMBERS_INFO_2{ - PSID lgrmi2_sid; - SID_NAME_USE lgrmi2_sidusage; - LPWSTR lgrmi2_domainandname; -} -alias LOCALGROUP_MEMBERS_INFO_2* PLOCALGROUP_MEMBERS_INFO_2, LPLOCALGROUP_MEMBERS_INFO_2; - -struct LOCALGROUP_MEMBERS_INFO_3{ - LPWSTR lgrmi3_domainandname; -} -alias LOCALGROUP_MEMBERS_INFO_3* PLOCALGROUP_MEMBERS_INFO_3, LPLOCALGROUP_MEMBERS_INFO_3; - -struct LOCALGROUP_USERS_INFO_0{ - LPWSTR lgrui0_name; -} -alias LOCALGROUP_USERS_INFO_0* PLOCALGROUP_USERS_INFO_0, LPLOCALGROUP_USERS_INFO_0; - -struct NET_DISPLAY_USER{ - LPWSTR usri1_name; - LPWSTR usri1_comment; - DWORD usri1_flags; - LPWSTR usri1_full_name; - DWORD usri1_user_id; - DWORD usri1_next_index; -} -alias NET_DISPLAY_USER* PNET_DISPLAY_USER; - -struct NET_DISPLAY_MACHINE{ - LPWSTR usri2_name; - LPWSTR usri2_comment; - DWORD usri2_flags; - DWORD usri2_user_id; - DWORD usri2_next_index; -} -alias NET_DISPLAY_MACHINE* PNET_DISPLAY_MACHINE; - -struct NET_DISPLAY_GROUP{ - LPWSTR grpi3_name; - LPWSTR grpi3_comment; - DWORD grpi3_group_id; - DWORD grpi3_attributes; - DWORD grpi3_next_index; -} -alias NET_DISPLAY_GROUP* PNET_DISPLAY_GROUP; - -struct ACCESS_INFO_0{ - LPTSTR acc0_resource_name; -} -alias ACCESS_INFO_0* PACCESS_INFO_0, LPACCESS_INFO_0; - -struct ACCESS_INFO_1{ - LPTSTR acc1_resource_name; - DWORD acc1_attr; - DWORD acc1_count; -} -alias ACCESS_INFO_1* PACCESS_INFO_1, LPACCESS_INFO_1; - -struct ACCESS_INFO_1002{ - DWORD acc1002_attr; -} -alias ACCESS_INFO_1002* PACCESS_INFO_1002, LPACCESS_INFO_1002; - -struct ACCESS_LIST{ - LPTSTR acl_ugname; - DWORD acl_access; -} -alias ACCESS_LIST* PACCESS_LIST, LPACCESS_LIST; - -struct NETLOGON_INFO_1{ - DWORD netlog1_flags; - NET_API_STATUS netlog1_pdc_connection_status; -} -alias NETLOGON_INFO_1* PNETLOGON_INFO_1; - -struct NETLOGON_INFO_2{ - DWORD netlog2_flags; - NET_API_STATUS netlog2_pdc_connection_status; - LPWSTR netlog2_trusted_dc_name; - NET_API_STATUS netlog2_tc_connection_status; -} -alias NETLOGON_INFO_2* PNETLOGON_INFO_2; - -struct NETLOGON_INFO_3{ - DWORD netlog3_flags; - DWORD netlog3_logon_attempts; - DWORD netlog3_reserved1; - DWORD netlog3_reserved2; - DWORD netlog3_reserved3; - DWORD netlog3_reserved4; - DWORD netlog3_reserved5; -} -alias NETLOGON_INFO_3* PNETLOGON_INFO_3; - -extern (Windows) { -deprecated { - /* These are obsolete */ - NET_API_STATUS NetAccessAdd(LPCWSTR,DWORD,PBYTE,PDWORD); - NET_API_STATUS NetAccessEnum(LPCWSTR,LPCWSTR,DWORD,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); - NET_API_STATUS NetAccessGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); - NET_API_STATUS NetAccessSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); - NET_API_STATUS NetAccessDel(LPCWSTR,LPCWSTR); - NET_API_STATUS NetAccessGetUserPerms(LPCWSTR,LPCWSTR,LPCWSTR,PDWORD); -} -NET_API_STATUS NetUserAdd(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetUserEnum(LPCWSTR,DWORD,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetUserGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetUserSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetUserDel(LPCWSTR,LPCWSTR); -NET_API_STATUS NetUserGetGroups(LPCWSTR,LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD); -NET_API_STATUS NetUserSetGroups(LPCWSTR,LPCWSTR,DWORD,PBYTE,DWORD); -NET_API_STATUS NetUserGetLocalGroups(LPCWSTR,LPCWSTR,DWORD,DWORD,PBYTE*,DWORD,PDWORD,PDWORD); -NET_API_STATUS NetUserModalsGet(LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetUserModalsSet(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetUserChangePassword(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); -NET_API_STATUS NetGroupAdd(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetGroupAddUser(LPCWSTR,LPCWSTR,LPCWSTR); -NET_API_STATUS NetGroupEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetGroupGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetGroupSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetGroupDel(LPCWSTR,LPCWSTR); -NET_API_STATUS NetGroupDelUser(LPCWSTR,LPCWSTR,LPCWSTR); -NET_API_STATUS NetGroupGetUsers(LPCWSTR,LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetGroupSetUsers(LPCWSTR,LPCWSTR,DWORD,PBYTE,DWORD); -NET_API_STATUS NetLocalGroupAdd(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetLocalGroupAddMember(LPCWSTR,LPCWSTR,PSID); -NET_API_STATUS NetLocalGroupEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetLocalGroupGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetLocalGroupSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetLocalGroupDel(LPCWSTR,LPCWSTR); -NET_API_STATUS NetLocalGroupDelMember(LPCWSTR,LPCWSTR,PSID); -NET_API_STATUS NetLocalGroupGetMembers(LPCWSTR,LPCWSTR,DWORD,PBYTE*,DWORD, -PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetLocalGroupSetMembers(LPCWSTR,LPCWSTR,DWORD,PBYTE,DWORD); -NET_API_STATUS NetLocalGroupAddMembers(LPCWSTR,LPCWSTR,DWORD,PBYTE,DWORD); -NET_API_STATUS NetLocalGroupDelMembers(LPCWSTR,LPCWSTR,DWORD,PBYTE,DWORD); -NET_API_STATUS NetQueryDisplayInformation(LPCWSTR,DWORD,DWORD,DWORD,DWORD,PDWORD,PVOID*); -NET_API_STATUS NetGetDisplayInformationIndex(LPCWSTR,DWORD,LPCWSTR,PDWORD); -NET_API_STATUS NetGetDCName(LPCWSTR,LPCWSTR,PBYTE*); -NET_API_STATUS NetGetAnyDCName(LPCWSTR,LPCWSTR,PBYTE*); -NET_API_STATUS I_NetLogonControl(LPCWSTR,DWORD,DWORD,PBYTE*); -NET_API_STATUS I_NetLogonControl2(LPCWSTR,DWORD,DWORD,PBYTE,PBYTE*); -} \ No newline at end of file diff --git a/3rdparty-extra/win32/lmalert.d b/3rdparty-extra/win32/lmalert.d deleted file mode 100644 index 8276e4b9d..000000000 --- a/3rdparty-extra/win32/lmalert.d +++ /dev/null @@ -1,78 +0,0 @@ -/***********************************************************************\ -* lmalert.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmalert; -version(Windows): -pragma(lib, "netapi32"); - -private import win32.lmcons, win32.windef; - -const TCHAR[] - ALERTER_MAILSLOT = `\\.\MAILSLOT\Alerter`, - ALERT_PRINT_EVENT = "PRINTING", - ALERT_MESSAGE_EVENT = "MESSAGE", - ALERT_ERRORLOG_EVENT = "ERRORLOG", - ALERT_ADMIN_EVENT = "ADMIN", - ALERT_USER_EVENT = "USER"; -//MACRO #define ALERT_OTHER_INFO(x) ((PBYTE)(x)+sizeof(STD_ALERT)) - -//MACRO #define ALERT_VAR_DATA(p) ((PBYTE)(p)+sizeof(*p)) - -const PRJOB_QSTATUS = 3; -const PRJOB_DEVSTATUS = 508; -const PRJOB_COMPLETE = 4; -const PRJOB_INTERV = 8; -const PRJOB_ = 16; -const PRJOB_DESTOFFLINE = 32; -const PRJOB_DESTPAUSED = 64; -const PRJOB_NOTIFY = 128; -const PRJOB_DESTNOPAPER = 256; -const PRJOB_DELETED = 32768; -const PRJOB_QS_QUEUED = 0; -const PRJOB_QS_PAUSED = 1; -const PRJOB_QS_SPOOLING = 2; -const PRJOB_QS_PRINTING = 3; - -struct ADMIN_OTHER_INFO{ - DWORD alrtad_errcode; - DWORD alrtad_numstrings; -} -alias ADMIN_OTHER_INFO* PADMIN_OTHER_INFO, LPADMIN_OTHER_INFO; - -struct STD_ALERT{ - DWORD alrt_timestamp; - TCHAR alrt_eventname[EVLEN+1]; - TCHAR alrt_servicename[SNLEN+1]; -} -alias STD_ALERT* PSTD_ALERT, LPSTD_ALERT; - -struct ERRLOG_OTHER_INFO{ - DWORD alrter_errcode; - DWORD alrter_offset; -} -alias ERRLOG_OTHER_INFO* PERRLOG_OTHER_INFO, LPERRLOG_OTHER_INFO; - -struct PRINT_OTHER_INFO{ - DWORD alrtpr_jobid; - DWORD alrtpr_status; - DWORD alrtpr_submitted; - DWORD alrtpr_size; -} -alias PRINT_OTHER_INFO* PPRINT_OTHER_INFO, LPPRINT_OTHER_INFO; - -struct USER_OTHER_INFO{ - DWORD alrtus_errcode; - DWORD alrtus_numstrings; -} -alias USER_OTHER_INFO* PUSER_OTHER_INFO, LPUSER_OTHER_INFO; - -extern (Windows) { -NET_API_STATUS NetAlertRaise(LPCWSTR,PVOID,DWORD); -NET_API_STATUS NetAlertRaiseEx(LPCWSTR,PVOID,DWORD,LPCWSTR); -} diff --git a/3rdparty-extra/win32/lmapibuf.d b/3rdparty-extra/win32/lmapibuf.d deleted file mode 100644 index ec00a4dd1..000000000 --- a/3rdparty-extra/win32/lmapibuf.d +++ /dev/null @@ -1,22 +0,0 @@ -/***********************************************************************\ -* lmapibuf.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmapibuf; -version(Windows): -pragma(lib, "netapi32"); - -private import win32.lmcons, win32.windef; - -extern (Windows) { - NET_API_STATUS NetApiBufferAllocate(DWORD, PVOID*); - NET_API_STATUS NetApiBufferFree(PVOID); - NET_API_STATUS NetApiBufferReallocate(PVOID, DWORD, PVOID*); - NET_API_STATUS NetApiBufferSize(PVOID, PDWORD); - NET_API_STATUS NetapipBufferAllocate(DWORD, PVOID*); -} diff --git a/3rdparty-extra/win32/lmat.d b/3rdparty-extra/win32/lmat.d deleted file mode 100644 index 32556efaf..000000000 --- a/3rdparty-extra/win32/lmat.d +++ /dev/null @@ -1,51 +0,0 @@ -/***********************************************************************\ -* lmat.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmat; -version(Windows): -pragma(lib, "netapi32"); - -private import win32.lmcons, win32.windef; - -const JOB_RUN_PERIODICALLY = 1; -const JOB_EXEC_ERROR = 2; -const JOB_RUNS_TODAY = 4; -const JOB_ADD_CURRENT_DATE = 8; -const JOB_NONINTERACTIVE = 16; -const JOB_INPUT_FLAGS = JOB_RUN_PERIODICALLY | JOB_ADD_CURRENT_DATE - | JOB_NONINTERACTIVE; -const JOB_OUTPUT_FLAGS = JOB_RUN_PERIODICALLY | JOB_EXEC_ERROR - | JOB_RUNS_TODAY | JOB_NONINTERACTIVE; - -struct AT_ENUM { - DWORD JobId; - DWORD JobTime; - DWORD DaysOfMonth; - UCHAR DaysOfWeek; - UCHAR Flags; - LPWSTR Command; -} -alias AT_ENUM* PAT_ENUM, LPAT_ENUM; - -struct AT_INFO { - DWORD JobTime; - DWORD DaysOfMonth; - UCHAR DaysOfWeek; - UCHAR Flags; - LPWSTR Command; -} -alias AT_INFO* PAT_INFO, LPAT_INFO; - -extern (Windows) { - NET_API_STATUS NetScheduleJobAdd(LPWSTR, PBYTE, LPDWORD); - NET_API_STATUS NetScheduleJobDel(LPWSTR, DWORD, DWORD); - NET_API_STATUS NetScheduleJobEnum(LPWSTR, PBYTE*, DWORD, PDWORD, PDWORD, - PDWORD); - NET_API_STATUS NetScheduleJobGetInfo(LPWSTR, DWORD, PBYTE*); -} diff --git a/3rdparty-extra/win32/lmaudit.d b/3rdparty-extra/win32/lmaudit.d deleted file mode 100644 index 674a9b545..000000000 --- a/3rdparty-extra/win32/lmaudit.d +++ /dev/null @@ -1,303 +0,0 @@ -/***********************************************************************\ -* lmaudit.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -// COMMENT: This file may be deprecated. -module win32.lmaudit; -version(Windows): - -private import win32.lmcons, win32.windef; - -const LOGFLAGS_FORWARD = 0; -const LOGFLAGS_BACKWARD = 1; -const LOGFLAGS_SEEK = 2; - -const ACTION_LOCKOUT = 0; -const ACTION_ADMINUNLOCK = 1; - -const AE_GUEST=0; -const AE_USER=1; -const AE_ADMIN=2; -const AE_NORMAL=0; -const AE_USERLIMIT=0; -const AE_GENERAL=0; -const AE_ERROR=1; -const AE_SESSDIS=1; -const AE_BADPW=1; -const AE_AUTODIS=2; -const AE_UNSHARE=2; -const AE_ADMINPRIVREQD=2; -const AE_ADMINDIS=3; -const AE_NOACCESSPERM=3; -const AE_ACCRESTRICT=4; -const AE_NORMAL_CLOSE=0; -const AE_SES_CLOSE=1; -const AE_ADMIN_CLOSE=2; -const AE_LIM_UNKNOWN=0; -const AE_LIM_LOGONHOURS=1; -const AE_LIM_EXPIRED=2; -const AE_LIM_INVAL_WKSTA=3; -const AE_LIM_DISABLED=4; -const AE_LIM_DELETED=5; -const AE_MOD=0; -const AE_DELETE=1; -const AE_ADD=2; - -const AE_UAS_USER = 0; -const AE_UAS_GROUP = 1; -const AE_UAS_MODALS = 2; - -const SVAUD_SERVICE = 1; -const SVAUD_GOODSESSLOGON = 6; -const SVAUD_BADSESSLOGON = 24; -const SVAUD_SESSLOGON = SVAUD_GOODSESSLOGON|SVAUD_BADSESSLOGON; -const SVAUD_GOODNETLOGON = 96; -const SVAUD_BADNETLOGON = 384; -const SVAUD_NETLOGON = SVAUD_GOODNETLOGON|SVAUD_BADNETLOGON; -const SVAUD_LOGON = SVAUD_NETLOGON|SVAUD_SESSLOGON; -const SVAUD_GOODUSE = 0x600; -const SVAUD_BADUSE = 0x1800; -const SVAUD_USE = SVAUD_GOODUSE|SVAUD_BADUSE; -const SVAUD_USERLIST = 8192; -const SVAUD_PERMISSIONS = 16384; -const SVAUD_RESOURCE = 32768; -const SVAUD_LOGONLIM = 65536; - -const AA_AUDIT_ALL=1; -const AA_A_OWNER=4; -const AA_CLOSE=8; -const AA_S_OPEN=16; -const AA_S_WRITE=32; -const AA_S_CREATE=32; -const AA_S_DELETE=64; -const AA_S_ACL=128; -const AA_S_ALL=253; -const AA_F_OPEN=256; -const AA_F_WRITE=512; -const AA_F_CREATE=512; -const AA_F_DELETE=1024; -const AA_F_ACL=2048; -const AA_F_ALL = AA_F_OPEN|AA_F_WRITE|AA_F_DELETE|AA_F_ACL; -const AA_A_OPEN=2048; -const AA_A_WRITE=4096; -const AA_A_CREATE=8192; -const AA_A_DELETE=16384; -const AA_A_ACL=32768; -const AA_A_ALL = AA_F_OPEN|AA_F_WRITE|AA_F_DELETE|AA_F_ACL; - -struct AUDIT_ENTRY{ - DWORD ae_len; - DWORD ae_reserved; - DWORD ae_time; - DWORD ae_type; - DWORD ae_data_offset; - DWORD ae_data_size; -} -alias AUDIT_ENTRY* PAUDIT_ENTRY, LPAUDIT_ENTRY; - -struct HLOG{ - DWORD time; - DWORD last_flags; - DWORD offset; - DWORD rec_offset; -} -alias HLOG* PHLOG, LPHLOG; - -struct AE_SRVSTATUS{ - DWORD ae_sv_status; -} -alias AE_SRVSTATUS* PAE_SRVSTATUS, LPAE_SRVSTATUS; - -struct AE_SESSLOGON{ - DWORD ae_so_compname; - DWORD ae_so_username; - DWORD ae_so_privilege; -} -alias AE_SESSLOGON* PAE_SESSLOGON, LPAE_SESSLOGON; - -struct AE_SESSLOGOFF{ - DWORD ae_sf_compname; - DWORD ae_sf_username; - DWORD ae_sf_reason; -} -alias AE_SESSLOGOFF* PAE_SESSLOGOFF, LPAE_SESSLOGOFF; - -struct AE_SESSPWERR{ - DWORD ae_sp_compname; - DWORD ae_sp_username; -} -alias AE_SESSPWERR* PAE_SESSPWERR, LPAE_SESSPWERR; - -struct AE_CONNSTART{ - DWORD ae_ct_compname; - DWORD ae_ct_username; - DWORD ae_ct_netname; - DWORD ae_ct_connid; -} -alias AE_CONNSTART* PAE_CONNSTART, LPAE_CONNSTART; - -struct AE_CONNSTOP{ - DWORD ae_cp_compname; - DWORD ae_cp_username; - DWORD ae_cp_netname; - DWORD ae_cp_connid; - DWORD ae_cp_reason; -} -alias AE_CONNSTOP* PAE_CONNSTOP, LPAE_CONNSTOP; - -struct AE_CONNREJ{ - DWORD ae_cr_compname; - DWORD ae_cr_username; - DWORD ae_cr_netname; - DWORD ae_cr_reason; -} -alias AE_CONNREJ* PAE_CONNREJ, LPAE_CONNREJ; - -struct AE_RESACCESS{ - DWORD ae_ra_compname; - DWORD ae_ra_username; - DWORD ae_ra_resname; - DWORD ae_ra_operation; - DWORD ae_ra_returncode; - DWORD ae_ra_restype; - DWORD ae_ra_fileid; -} -alias AE_RESACCESS* PAE_RESACCESS, LPAE_RESACCESS; - -struct AE_RESACCESSREJ{ - DWORD ae_rr_compname; - DWORD ae_rr_username; - DWORD ae_rr_resname; - DWORD ae_rr_operation; -} -alias AE_RESACCESSREJ* PAE_RESACCESSREJ, LPAE_RESACCESSREJ; - -struct AE_CLOSEFILE{ - DWORD ae_cf_compname; - DWORD ae_cf_username; - DWORD ae_cf_resname; - DWORD ae_cf_fileid; - DWORD ae_cf_duration; - DWORD ae_cf_reason; -} -alias AE_CLOSEFILE* PAE_CLOSEFILE, LPAE_CLOSEFILE; - -struct AE_SERVICESTAT{ - DWORD ae_ss_compname; - DWORD ae_ss_username; - DWORD ae_ss_svcname; - DWORD ae_ss_status; - DWORD ae_ss_code; - DWORD ae_ss_text; - DWORD ae_ss_returnval; -} -alias AE_SERVICESTAT* PAE_SERVICESTAT, LPAE_SERVICESTAT; - -struct AE_ACLMOD{ - DWORD ae_am_compname; - DWORD ae_am_username; - DWORD ae_am_resname; - DWORD ae_am_action; - DWORD ae_am_datalen; -} -alias AE_ACLMOD* PAE_ACLMOD, LPAE_ACLMOD; - -struct AE_UASMOD{ - DWORD ae_um_compname; - DWORD ae_um_username; - DWORD ae_um_resname; - DWORD ae_um_rectype; - DWORD ae_um_action; - DWORD ae_um_datalen; -} -alias AE_UASMOD* PAE_UASMOD, LPAE_UASMOD; - -struct AE_NETLOGON{ - DWORD ae_no_compname; - DWORD ae_no_username; - DWORD ae_no_privilege; - DWORD ae_no_authflags; -} -alias AE_NETLOGON* PAE_NETLOGON, LPAE_NETLOGON; - -struct AE_NETLOGOFF{ - DWORD ae_nf_compname; - DWORD ae_nf_username; - DWORD ae_nf_reserved1; - DWORD ae_nf_reserved2; -} -alias AE_NETLOGOFF* PAE_NETLOGOFF, LPAE_NETLOGOFF; - -struct AE_ACCLIM{ - DWORD ae_al_compname; - DWORD ae_al_username; - DWORD ae_al_resname; - DWORD ae_al_limit; -} -alias AE_ACCLIM* PAE_ACCLIM, LPAE_ACCLIM; - -struct AE_LOCKOUT{ - DWORD ae_lk_compname; - DWORD ae_lk_username; - DWORD ae_lk_action; - DWORD ae_lk_bad_pw_count; -} -alias AE_LOCKOUT* PAE_LOCKOUT, LPAE_LOCKOUT; - -struct AE_GENERIC{ - DWORD ae_ge_msgfile; - DWORD ae_ge_msgnum; - DWORD ae_ge_params; - DWORD ae_ge_param1; - DWORD ae_ge_param2; - DWORD ae_ge_param3; - DWORD ae_ge_param4; - DWORD ae_ge_param5; - DWORD ae_ge_param6; - DWORD ae_ge_param7; - DWORD ae_ge_param8; - DWORD ae_ge_param9; -} -alias AE_GENERIC* PAE_GENERIC, LPAE_GENERIC; - -extern (Windows) { -deprecated { -NET_API_STATUS NetAuditClear(LPCWSTR,LPCWSTR,LPCWSTR); -NET_API_STATUS NetAuditRead(LPTSTR,LPTSTR,LPHLOG,DWORD,PDWORD,DWORD,DWORD,PBYTE*,DWORD,PDWORD,PDWORD); -NET_API_STATUS NetAuditWrite(DWORD,PBYTE,DWORD,LPTSTR,PBYTE); -} -} - -/+ -/* MinGW: These conflict with struct typedefs, why? */ -const AE_SRVSTATUS=0; -const AE_SESSLOGON=1; -const AE_SESSLOGOFF=2; -const AE_SESSPWERR=3; -const AE_CONNSTART=4; -const AE_CONNSTOP=5; -const AE_CONNREJ=6; -const AE_RESACCESS=7; -const AE_RESACCESSREJ=8; -const AE_CLOSEFILE=9; -const AE_SERVICESTAT=11; -const AE_ACLMOD=12; -const AE_UASMOD=13; -const AE_NETLOGON=14; -const AE_NETLOGOFF=15; -const AE_NETLOGDENIED=16; -const AE_ACCLIMITEXCD=17; -const AE_RESACCESS2=18; -const AE_ACLMODFAIL=19; -const AE_LOCKOUT=20; -const AE_GENERIC_TYPE=21; -const AE_SRVSTART=0; -const AE_SRVPAUSED=1; -const AE_SRVCONT=2; -const AE_SRVSTOP=3; -+/ \ No newline at end of file diff --git a/3rdparty-extra/win32/lmbrowsr.d b/3rdparty-extra/win32/lmbrowsr.d deleted file mode 100644 index 517040458..000000000 --- a/3rdparty-extra/win32/lmbrowsr.d +++ /dev/null @@ -1,86 +0,0 @@ -/***********************************************************************\ -* lmbrowsr.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmbrowsr; -version(Windows): - -private import win32.lmcons, win32.windef; - -const BROWSER_ROLE_PDC = 1; -const BROWSER_ROLE_BDC = 2; - -struct BROWSER_STATISTICS { - LARGE_INTEGER StatisticsStartTime; - LARGE_INTEGER NumberOfServerAnnouncements; - LARGE_INTEGER NumberOfDomainAnnouncements; - ULONG NumberOfElectionPackets; - ULONG NumberOfMailslotWrites; - ULONG NumberOfGetBrowserServerListRequests; - ULONG NumberOfServerEnumerations; - ULONG NumberOfDomainEnumerations; - ULONG NumberOfOtherEnumerations; - ULONG NumberOfMissedServerAnnouncements; - ULONG NumberOfMissedMailslotDatagrams; - ULONG NumberOfMissedGetBrowserServerListRequests; - ULONG NumberOfFailedServerAnnounceAllocations; - ULONG NumberOfFailedMailslotAllocations; - ULONG NumberOfFailedMailslotReceives; - ULONG NumberOfFailedMailslotWrites; - ULONG NumberOfFailedMailslotOpens; - ULONG NumberOfDuplicateMasterAnnouncements; - LARGE_INTEGER NumberOfIllegalDatagrams; -} -alias BROWSER_STATISTICS* PBROWSER_STATISTICS, LPBROWSER_STATISTICS; - -struct BROWSER_STATISTICS_100 { - LARGE_INTEGER StartTime; - LARGE_INTEGER NumberOfServerAnnouncements; - LARGE_INTEGER NumberOfDomainAnnouncements; - ULONG NumberOfElectionPackets; - ULONG NumberOfMailslotWrites; - ULONG NumberOfGetBrowserServerListRequests; - LARGE_INTEGER NumberOfIllegalDatagrams; -} -alias BROWSER_STATISTICS_100* PBROWSER_STATISTICS_100; - -struct BROWSER_STATISTICS_101 { - LARGE_INTEGER StartTime; - LARGE_INTEGER NumberOfServerAnnouncements; - LARGE_INTEGER NumberOfDomainAnnouncements; - ULONG NumberOfElectionPackets; - ULONG NumberOfMailslotWrites; - ULONG NumberOfGetBrowserServerListRequests; - LARGE_INTEGER NumberOfIllegalDatagrams; - ULONG NumberOfMissedServerAnnouncements; - ULONG NumberOfMissedMailslotDatagrams; - ULONG NumberOfMissedGetBrowserServerListRequests; - ULONG NumberOfFailedServerAnnounceAllocations; - ULONG NumberOfFailedMailslotAllocations; - ULONG NumberOfFailedMailslotReceives; - ULONG NumberOfFailedMailslotWrites; - ULONG NumberOfFailedMailslotOpens; - ULONG NumberOfDuplicateMasterAnnouncements; -} -alias BROWSER_STATISTICS_101* PBROWSER_STATISTICS_101; - -extern (Windows) { - NET_API_STATUS I_BrowserServerEnum(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, - PBYTE*, DWORD, PDWORD, PDWORD, DWORD, LPCWSTR, PDWORD); - NET_API_STATUS I_BrowserServerEnumEx(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, - PBYTE*, DWORD, PDWORD, PDWORD, DWORD, LPCWSTR, LPCWSTR); - NET_API_STATUS I_BrowserQueryEmulatedDomains(LPWSTR, PBYTE*, PDWORD); - NET_API_STATUS I_BrowserQueryOtherDomains(LPCWSTR, PBYTE*, PDWORD, PDWORD); - NET_API_STATUS I_BrowserResetNetlogonState(LPCWSTR); - NET_API_STATUS I_BrowserSetNetlogonState(LPWSTR, LPWSTR, LPWSTR, DWORD); - NET_API_STATUS I_BrowserQueryStatistics(LPCWSTR, LPBROWSER_STATISTICS*); - NET_API_STATUS I_BrowserResetStatistics(LPCWSTR); - WORD I_BrowserServerEnumForXactsrv(LPCWSTR, LPCWSTR, ULONG, USHORT, PVOID, - WORD, DWORD, PDWORD, PDWORD, DWORD, LPCWSTR, LPCWSTR, PWORD); - NET_API_STATUS I_BrowserDebugTrace(PWCHAR, PCHAR); -} diff --git a/3rdparty-extra/win32/lmchdev.d b/3rdparty-extra/win32/lmchdev.d deleted file mode 100644 index 02295fff0..000000000 --- a/3rdparty-extra/win32/lmchdev.d +++ /dev/null @@ -1,91 +0,0 @@ -/***********************************************************************\ -* lmchdev.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmchdev; -version(Windows): - -// COMMENT: This file might be deprecated. - -private import win32.lmcons, win32.windef; - -const CHARDEVQ_NO_REQUESTS = -1; -const CHARDEV_CLOSE = 0; -const CHARDEVQ_MAX_PRIORITY = 1; -const CHARDEVQ_DEV_PARMNUM = 1; - -const HANDLE_INFO_LEVEL_1 = 1; -const HANDLE_CHARTIME_PARMNUM = 1; -const HANDLE_CHARCOUNT_PARMNUM = 2; - -const CHARDEV_STAT_OPENED = 2; -const CHARDEVQ_PRIORITY_PARMNUM = 2; -const CHARDEVQ_DEVS_PARMNUM = 3; -const CHARDEV_STAT_ERROR = 4; -const CHARDEVQ_NUMUSERS_PARMNUM = 4; -const CHARDEVQ_NUMAHEAD_PARMNUM = 5; -const CHARDEVQ_DEF_PRIORITY = 5; -const CHARDEVQ_PRIORITY_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+CHARDEVQ_PRIORITY_PARMNUM; -const CHARDEVQ_DEVS_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+CHARDEVQ_DEVS_PARMNUM; -const CHARDEVQ_MIN_PRIORITY = 9; - -struct CHARDEV_INFO_0 { - LPWSTR ch0_dev; -} -alias CHARDEV_INFO_0* PCHARDEV_INFO_0, LPCHARDEV_INFO_0; - -struct CHARDEV_INFO_1{ - LPWSTR ch1_dev; - DWORD ch1_status; - LPWSTR ch1_username; - DWORD ch1_time; -} -alias CHARDEV_INFO_1* PCHARDEV_INFO_1, LPCHARDEV_INFO_1; - -struct CHARDEVQ_INFO_0 { - LPWSTR cq0_dev; -} -alias CHARDEVQ_INFO_0* PCHARDEVQ_INFO_0, LPCHARDEVQ_INFO_0; - -struct CHARDEVQ_INFO_1{ - LPWSTR cq1_dev; - DWORD cq1_priority; - LPWSTR cq1_devs; - DWORD cq1_numusers; - DWORD cq1_numahead; -} -alias CHARDEVQ_INFO_1* PCHARDEVQ_INFO_1, LPCHARDEVQ_INFO_1; - -struct CHARDEVQ_INFO_1002 { - DWORD cq1002_priority; -} -alias CHARDEVQ_INFO_1002* PCHARDEVQ_INFO_1002, LPCHARDEVQ_INFO_1002; - -struct CHARDEVQ_INFO_1003 { - LPWSTR cq1003_devs; -} -alias CHARDEVQ_INFO_1003* PCHARDEVQ_INFO_1003, LPCHARDEVQ_INFO_1003; - -struct HANDLE_INFO_1{ - DWORD hdli1_chartime; - DWORD hdli1_charcount; -} -alias HANDLE_INFO_1* PHANDLE_INFO_1, LPHANDLE_INFO_1; - -extern (Windows) { - NET_API_STATUS NetCharDevEnum(LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, PDWORD, PDWORD); - NET_API_STATUS NetCharDevGetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE*); - NET_API_STATUS NetCharDevControl(LPCWSTR, LPCWSTR, DWORD); - NET_API_STATUS NetCharDevQEnum(LPCWSTR, LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, PDWORD, PDWORD); - NET_API_STATUS NetCharDevQGetInfo(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, PBYTE*); - NET_API_STATUS NetCharDevQSetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE, PDWORD); - NET_API_STATUS NetCharDevQPurge(LPCWSTR, LPCWSTR); - NET_API_STATUS NetCharDevQPurgeSelf(LPCWSTR, LPCWSTR, LPCWSTR); - NET_API_STATUS NetHandleGetInfo(HANDLE, DWORD, PBYTE*); - NET_API_STATUS NetHandleSetInfo(HANDLE, DWORD, PBYTE, DWORD, PDWORD); -} diff --git a/3rdparty-extra/win32/lmconfig.d b/3rdparty-extra/win32/lmconfig.d deleted file mode 100644 index f02bd1bc9..000000000 --- a/3rdparty-extra/win32/lmconfig.d +++ /dev/null @@ -1,31 +0,0 @@ -/***********************************************************************\ -* lmconfig.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmconfig; -version(Windows): - -// All functions in this file are deprecated! - -private import win32.lmcons, win32.windef; - -deprecated { - struct CONFIG_INFO_0 { - LPWSTR cfgi0_key; - LPWSTR cfgi0_data; - } - - alias CONFIG_INFO_0* PCONFIG_INFO_0, LPCONFIG_INFO_0; - - extern (Windows) { - NET_API_STATUS NetConfigGet(LPCWSTR, LPCWSTR, LPCWSTR, PBYTE*); - NET_API_STATUS NetConfigGetAll(LPCWSTR, LPCWSTR, PBYTE*); - NET_API_STATUS NetConfigSet(LPCWSTR, LPCWSTR, LPCWSTR, DWORD, DWORD, - PBYTE, DWORD); - } -} diff --git a/3rdparty-extra/win32/lmcons.d b/3rdparty-extra/win32/lmcons.d deleted file mode 100644 index 6e5f1c9dc..000000000 --- a/3rdparty-extra/win32/lmcons.d +++ /dev/null @@ -1,87 +0,0 @@ -/***********************************************************************\ -* lmcons.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmcons; -version(Windows): - -private import win32.windef; -private import win32.lmerr; // for NERR_BASE - -const TCHAR[] - MESSAGE_FILENAME = "NETMSG", - OS2MSG_FILENAME = "BASE", - HELP_MSG_FILENAME = "NETH"; - -alias DWORD NET_API_STATUS, API_RET_TYPE; - -const MIN_LANMAN_MESSAGE_ID = NERR_BASE; -const MAX_LANMAN_MESSAGE_ID = 5799; - -const CNLEN = 15; /* also in nddeapi.h */ -const UNCLEN = CNLEN + 2; - -const DNLEN = 15; -const LM20_CNLEN = 15; -const LM20_DNLEN = 15; -const LM20_SNLEN = 15; -const LM20_STXTLEN = 63; -const LM20_UNCLEN = LM20_CNLEN + 2; -const LM20_NNLEN = 12; -const LM20_RMLEN = LM20_UNCLEN + 1 + LM20_NNLEN; -const NNLEN = 80; -const RMLEN = UNCLEN + 1 + NNLEN; -const SNLEN = 80; -const STXTLEN = 256; -const PATHLEN = 256; -const LM20_PATHLEN = 256; -const DEVLEN = 80; -const LM20_DEVLEN = 8; -const EVLEN = 16; -const UNLEN = 256; -const LM20_UNLEN = 20; -const GNLEN = UNLEN; -const LM20_GNLEN = LM20_UNLEN; -const PWLEN = 256; -const LM20_PWLEN = 14; -const SHPWLEN = 8; -const CLTYPE_LEN = 12; -const QNLEN = NNLEN; -const LM20_QNLEN = LM20_NNLEN; - -const MAXCOMMENTSZ = 256; -const LM20_MAXCOMMENTSZ = 48; -const ALERTSZ = 128; -const MAXDEVENTRIES = 32;// (sizeof(int)*8); -const NETBIOS_NAME_LEN = 16; -const DWORD MAX_PREFERRED_LENGTH = -1; -const CRYPT_KEY_LEN = 7; -const CRYPT_TXT_LEN = 8; -const ENCRYPTED_PWLEN = 16; -const SESSION_PWLEN = 24; -const SESSION_CRYPT_KLEN = 21; - -const PARMNUM_ALL = 0; -const DWORD PARM_ERROR_UNKNOWN = -1; -const PARM_ERROR_NONE = 0; -const PARMNUM_BASE_INFOLEVEL = 1000; - -const PLATFORM_ID_DOS = 300; -const PLATFORM_ID_OS2 = 400; -const PLATFORM_ID_NT = 500; -const PLATFORM_ID_OSF = 600; -const PLATFORM_ID_VMS = 700; - -// this is a new typedef in W2K, but it should be harmless for earlier Windows versions. -version (Unicode) { - alias LPWSTR LMSTR; - alias LPCWSTR LMCSTR; -} else { - alias LPSTR LMSTR; - alias LPCSTR LMCSTR; -} diff --git a/3rdparty-extra/win32/lmerr.d b/3rdparty-extra/win32/lmerr.d deleted file mode 100644 index 331e3ac7d..000000000 --- a/3rdparty-extra/win32/lmerr.d +++ /dev/null @@ -1,314 +0,0 @@ -/***********************************************************************\ -* lmerr.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmerr; -version(Windows): - -import win32.winerror; - -enum { - NERR_Success = 0, - NERR_BASE = 2100, - NERR_NetNotStarted = NERR_BASE + 2, - NERR_UnknownServer, - NERR_ShareMem, - NERR_NoNetworkResource, - NERR_RemoteOnly, - NERR_DevNotRedirected, - NERR_ServerNotStarted = NERR_BASE + 14, - NERR_ItemNotFound, - NERR_UnknownDevDir, - NERR_RedirectedPath, - NERR_DuplicateShare, - NERR_NoRoom, - NERR_TooManyItems = NERR_BASE + 21, - NERR_InvalidMaxUsers, - NERR_BufTooSmall, - NERR_RemoteErr = NERR_BASE + 27, - NERR_LanmanIniError = NERR_BASE + 31, - NERR_NetworkError = NERR_BASE + 36, - NERR_WkstaInconsistentState, - NERR_WkstaNotStarted, - NERR_BrowserNotStarted, - NERR_InternalError, - NERR_BadTransactConfig, - NERR_InvalidAPI, - NERR_BadEventName, - NERR_DupNameReboot, - NERR_CfgCompNotFound = NERR_BASE + 46, - NERR_CfgParamNotFound, - NERR_LineTooLong = NERR_BASE + 49, - NERR_QNotFound, - NERR_JobNotFound, - NERR_DestNotFound, - NERR_DestExists, - NERR_QExists, - NERR_QNoRoom, - NERR_JobNoRoom, - NERR_DestNoRoom, - NERR_DestIdle, - NERR_DestInvalidOp, - NERR_ProcNoRespond, - NERR_SpoolerNotLoaded, - NERR_DestInvalidState, - NERR_QInvalidState, - NERR_JobInvalidState, - NERR_SpoolNoMemory, - NERR_DriverNotFound, - NERR_DataTypeInvalid, - NERR_ProcNotFound, - NERR_ServiceTableLocked = NERR_BASE + 80, - NERR_ServiceTableFull, - NERR_ServiceInstalled, - NERR_ServiceEntryLocked, - NERR_ServiceNotInstalled, - NERR_BadServiceName, - NERR_ServiceCtlTimeout, - NERR_ServiceCtlBusy, - NERR_BadServiceProgName, - NERR_ServiceNotCtrl, - NERR_ServiceKillProc, - NERR_ServiceCtlNotValid, - NERR_NotInDispatchTbl, - NERR_BadControlRecv, - NERR_ServiceNotStarting, - NERR_AlreadyLoggedOn = NERR_BASE + 100, - NERR_NotLoggedOn, - NERR_BadUsername, - NERR_BadPassword, - NERR_UnableToAddName_W, - NERR_UnableToAddName_F, - NERR_UnableToDelName_W, - NERR_UnableToDelName_F, - NERR_LogonsPaused = NERR_BASE + 109, - NERR_LogonServerConflict, - NERR_LogonNoUserPath, - NERR_LogonScriptError, - NERR_StandaloneLogon = NERR_BASE + 114, - NERR_LogonServerNotFound, - NERR_LogonDomainExists, - NERR_NonValidatedLogon, - NERR_ACFNotFound = NERR_BASE + 119, - NERR_GroupNotFound, - NERR_UserNotFound, - NERR_ResourceNotFound, - NERR_GroupExists, - NERR_UserExists, - NERR_ResourceExists, - NERR_NotPrimary, - NERR_ACFNotLoaded, - NERR_ACFNoRoom, - NERR_ACFFileIOFail, - NERR_ACFTooManyLists, - NERR_UserLogon, - NERR_ACFNoParent, - NERR_CanNotGrowSegment, - NERR_SpeGroupOp, - NERR_NotInCache, - NERR_UserInGroup, - NERR_UserNotInGroup, - NERR_AccountUndefined, - NERR_AccountExpired, - NERR_InvalidWorkstation, - NERR_InvalidLogonHours, - NERR_PasswordExpired, - NERR_PasswordCantChange, - NERR_PasswordHistConflict, - NERR_PasswordTooShort, - NERR_PasswordTooRecent, - NERR_InvalidDatabase, - NERR_DatabaseUpToDate, - NERR_SyncRequired, - NERR_UseNotFound, - NERR_BadAsgType, - NERR_DeviceIsShared, - NERR_NoComputerName = NERR_BASE + 170, - NERR_MsgAlreadyStarted, - NERR_MsgInitFailed, - NERR_NameNotFound, - NERR_AlreadyForwarded, - NERR_AddForwarded, - NERR_AlreadyExists, - NERR_TooManyNames, - NERR_DelComputerName, - NERR_LocalForward, - NERR_GrpMsgProcessor, - NERR_PausedRemote, - NERR_BadReceive, - NERR_NameInUse, - NERR_MsgNotStarted, - NERR_NotLocalName, - NERR_NoForwardName, - NERR_RemoteFull, - NERR_NameNotForwarded, - NERR_TruncatedBroadcast, - NERR_InvalidDevice = NERR_BASE + 194, - NERR_WriteFault, - NERR_DuplicateName = NERR_BASE + 197, - NERR_DeleteLater, - NERR_IncompleteDel, - NERR_MultipleNets, - NERR_NetNameNotFound = NERR_BASE + 210, - NERR_DeviceNotShared, - NERR_ClientNameNotFound, - NERR_FileIdNotFound = NERR_BASE + 214, - NERR_ExecFailure, - NERR_TmpFile, - NERR_TooMuchData, - NERR_DeviceShareConflict, - NERR_BrowserTableIncomplete, - NERR_NotLocalDomain, - NERR_DevInvalidOpCode = NERR_BASE + 231, - NERR_DevNotFound, - NERR_DevNotOpen, - NERR_BadQueueDevString, - NERR_BadQueuePriority, - NERR_NoCommDevs = NERR_BASE + 237, - NERR_QueueNotFound, - NERR_BadDevString = NERR_BASE + 240, - NERR_BadDev, - NERR_InUseBySpooler, - NERR_CommDevInUse, - NERR_InvalidComputer = NERR_BASE + 251, - NERR_MaxLenExceeded = NERR_BASE + 254, - NERR_BadComponent = NERR_BASE + 256, - NERR_CantType, - NERR_TooManyEntries = NERR_BASE + 262, - NERR_ProfileFileTooBig = NERR_BASE + 270, - NERR_ProfileOffset, - NERR_ProfileCleanup, - NERR_ProfileUnknownCmd, - NERR_ProfileLoadErr, - NERR_ProfileSaveErr, - NERR_LogOverflow = NERR_BASE + 277, - NERR_LogFileChanged, - NERR_LogFileCorrupt, - NERR_SourceIsDir, - NERR_BadSource, - NERR_BadDest, - NERR_DifferentServers, - NERR_RunSrvPaused = NERR_BASE + 285, - NERR_ErrCommRunSrv = NERR_BASE + 289, - NERR_ErrorExecingGhost = NERR_BASE + 291, - NERR_ShareNotFound, - NERR_InvalidLana = NERR_BASE + 300, - NERR_OpenFiles, - NERR_ActiveConns, - NERR_BadPasswordCore, - NERR_DevInUse, - NERR_LocalDrive, - NERR_AlertExists = NERR_BASE + 330, - NERR_TooManyAlerts, - NERR_NoSuchAlert, - NERR_BadRecipient, - NERR_AcctLimitExceeded, - NERR_InvalidLogSeek = NERR_BASE + 340, - NERR_BadUasConfig = NERR_BASE + 350, - NERR_InvalidUASOp, - NERR_LastAdmin, - NERR_DCNotFound, - NERR_LogonTrackingError, - NERR_NetlogonNotStarted, - NERR_CanNotGrowUASFile, - NERR_TimeDiffAtDC, - NERR_PasswordMismatch, - NERR_NoSuchServer = NERR_BASE + 360, - NERR_NoSuchSession, - NERR_NoSuchConnection, - NERR_TooManyServers, - NERR_TooManySessions, - NERR_TooManyConnections, - NERR_TooManyFiles, - NERR_NoAlternateServers, - NERR_TryDownLevel = NERR_BASE + 370, - NERR_UPSDriverNotStarted = NERR_BASE + 380, - NERR_UPSInvalidConfig, - NERR_UPSInvalidCommPort, - NERR_UPSSignalAsserted, - NERR_UPSShutdownFailed, - NERR_BadDosRetCode = NERR_BASE + 400, - NERR_ProgNeedsExtraMem, - NERR_BadDosFunction, - NERR_RemoteBootFailed, - NERR_BadFileCheckSum, - NERR_NoRplBootSystem, - NERR_RplLoadrNetBiosErr, - NERR_RplLoadrDiskErr, - NERR_ImageParamErr, - NERR_TooManyImageParams, - NERR_NonDosFloppyUsed, - NERR_RplBootRestart, - NERR_RplSrvrCallFailed, - NERR_CantConnectRplSrvr, - NERR_CantOpenImageFile, - NERR_CallingRplSrvr, - NERR_StartingRplBoot, - NERR_RplBootServiceTerm, - NERR_RplBootStartFailed, - NERR_RPL_CONNECTED, - NERR_BrowserConfiguredToNotRun = NERR_BASE + 450, - NERR_RplNoAdaptersStarted = NERR_BASE + 510, - NERR_RplBadRegistry, - NERR_RplBadDatabase, - NERR_RplRplfilesShare, - NERR_RplNotRplServer, - NERR_RplCannotEnum, - NERR_RplWkstaInfoCorrupted, - NERR_RplWkstaNotFound, - NERR_RplWkstaNameUnavailable, - NERR_RplProfileInfoCorrupted, - NERR_RplProfileNotFound, - NERR_RplProfileNameUnavailable, - NERR_RplProfileNotEmpty, - NERR_RplConfigInfoCorrupted, - NERR_RplConfigNotFound, - NERR_RplAdapterInfoCorrupted, - NERR_RplInternal, - NERR_RplVendorInfoCorrupted, - NERR_RplBootInfoCorrupted, - NERR_RplWkstaNeedsUserAcct, - NERR_RplNeedsRPLUSERAcct, - NERR_RplBootNotFound, - NERR_RplIncompatibleProfile, - NERR_RplAdapterNameUnavailable, - NERR_RplConfigNotEmpty, - NERR_RplBootInUse, - NERR_RplBackupDatabase, - NERR_RplAdapterNotFound, - NERR_RplVendorNotFound, - NERR_RplVendorNameUnavailable, - NERR_RplBootNameUnavailable, - NERR_RplConfigNameUnavailable, - NERR_DfsInternalCorruption = NERR_BASE + 560, - NERR_DfsVolumeDataCorrupt, - NERR_DfsNoSuchVolume, - NERR_DfsVolumeAlreadyExists, - NERR_DfsAlreadyShared, - NERR_DfsNoSuchShare, - NERR_DfsNotALeafVolume, - NERR_DfsLeafVolume, - NERR_DfsVolumeHasMultipleServers, - NERR_DfsCantCreateJunctionPoint, - NERR_DfsServerNotDfsAware, - NERR_DfsBadRenamePath, - NERR_DfsVolumeIsOffline, - NERR_DfsNoSuchServer, - NERR_DfsCyclicalName, - NERR_DfsNotSupportedInServerDfs, - NERR_DfsDuplicateService, - NERR_DfsCantRemoveLastServerShare, - NERR_DfsVolumeIsInterDfs, - NERR_DfsInconsistent, - NERR_DfsServerUpgraded, - NERR_DfsDataIsIdentical, - NERR_DfsCantRemoveDfsRoot, - NERR_DfsChildOrParentInDfs, - NERR_DfsInternalError = NERR_BASE + 590, - MAX_NERR = NERR_BASE + 899 -} diff --git a/3rdparty-extra/win32/lmerrlog.d b/3rdparty-extra/win32/lmerrlog.d deleted file mode 100644 index a0e66d0ae..000000000 --- a/3rdparty-extra/win32/lmerrlog.d +++ /dev/null @@ -1,223 +0,0 @@ -/***********************************************************************\ -* lmerrlog.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmerrlog; -version(Windows): - -// COMMENT: This appears to be only for Win16. All functions are deprecated. - -private import win32.lmcons, win32.windef; -private import win32.lmaudit; // for LPHLOG - -const ERRLOG_BASE=3100; -const ERRLOG2_BASE=5700; -const LOGFLAGS_FORWARD=0; -const LOGFLAGS_BACKWARD=1; -const LOGFLAGS_SEEK=2; -const NELOG_Internal_Error=ERRLOG_BASE; -const NELOG_Resource_Shortage=(ERRLOG_BASE+1); -const NELOG_Unable_To_Lock_Segment=(ERRLOG_BASE+2); -const NELOG_Unable_To_Unlock_Segment=(ERRLOG_BASE+3); -const NELOG_Uninstall_Service=(ERRLOG_BASE+4); -const NELOG_Init_Exec_Fail=(ERRLOG_BASE+5); -const NELOG_Ncb_Error=(ERRLOG_BASE+6); -const NELOG_Net_Not_Started=(ERRLOG_BASE+7); -const NELOG_Ioctl_Error=(ERRLOG_BASE+8); -const NELOG_System_Semaphore=(ERRLOG_BASE+9); -const NELOG_Init_OpenCreate_Err=(ERRLOG_BASE+10); -const NELOG_NetBios=(ERRLOG_BASE+11); -const NELOG_SMB_Illegal=(ERRLOG_BASE+12); -const NELOG_Service_Fail=(ERRLOG_BASE+13); -const NELOG_Entries_Lost=(ERRLOG_BASE+14); -const NELOG_Init_Seg_Overflow=(ERRLOG_BASE+20); -const NELOG_Srv_No_Mem_Grow=(ERRLOG_BASE+21); -const NELOG_Access_File_Bad=(ERRLOG_BASE+22); -const NELOG_Srvnet_Not_Started=(ERRLOG_BASE+23); -const NELOG_Init_Chardev_Err=(ERRLOG_BASE+24); -const NELOG_Remote_API=(ERRLOG_BASE+25); -const NELOG_Ncb_TooManyErr=(ERRLOG_BASE+26); -const NELOG_Mailslot_err=(ERRLOG_BASE+27); -const NELOG_ReleaseMem_Alert=(ERRLOG_BASE+28); -const NELOG_AT_cannot_write=(ERRLOG_BASE+29); -const NELOG_Cant_Make_Msg_File=(ERRLOG_BASE+30); -const NELOG_Exec_Netservr_NoMem=(ERRLOG_BASE+31); -const NELOG_Server_Lock_Failure=(ERRLOG_BASE+32); -const NELOG_Msg_Shutdown=(ERRLOG_BASE+40); -const NELOG_Msg_Sem_Shutdown=(ERRLOG_BASE+41); -const NELOG_Msg_Log_Err=(ERRLOG_BASE+50); -const NELOG_VIO_POPUP_ERR=(ERRLOG_BASE+51); -const NELOG_Msg_Unexpected_SMB_Type=(ERRLOG_BASE+52); -const NELOG_Wksta_Infoseg=(ERRLOG_BASE+60); -const NELOG_Wksta_Compname=(ERRLOG_BASE+61); -const NELOG_Wksta_BiosThreadFailure=(ERRLOG_BASE+62); -const NELOG_Wksta_IniSeg=(ERRLOG_BASE+63); -const NELOG_Wksta_HostTab_Full=(ERRLOG_BASE+64); -const NELOG_Wksta_Bad_Mailslot_SMB=(ERRLOG_BASE+65); -const NELOG_Wksta_UASInit=(ERRLOG_BASE+66); -const NELOG_Wksta_SSIRelogon=(ERRLOG_BASE+67); -const NELOG_Build_Name=(ERRLOG_BASE+70); -const NELOG_Name_Expansion=(ERRLOG_BASE+71); -const NELOG_Message_Send=(ERRLOG_BASE+72); -const NELOG_Mail_Slt_Err=(ERRLOG_BASE+73); -const NELOG_AT_cannot_read=(ERRLOG_BASE+74); -const NELOG_AT_sched_err=(ERRLOG_BASE+75); -const NELOG_AT_schedule_file_created=(ERRLOG_BASE+76); -const NELOG_Srvnet_NB_Open=(ERRLOG_BASE+77); -const NELOG_AT_Exec_Err=(ERRLOG_BASE+78); -const NELOG_Lazy_Write_Err=(ERRLOG_BASE+80); -const NELOG_HotFix=(ERRLOG_BASE+81); -const NELOG_HardErr_From_Server=(ERRLOG_BASE+82); -const NELOG_LocalSecFail1=(ERRLOG_BASE+83); -const NELOG_LocalSecFail2=(ERRLOG_BASE+84); -const NELOG_LocalSecFail3=(ERRLOG_BASE+85); -const NELOG_LocalSecGeneralFail=(ERRLOG_BASE+86); -const NELOG_NetWkSta_Internal_Error=(ERRLOG_BASE+90); -const NELOG_NetWkSta_No_Resource=(ERRLOG_BASE+91); -const NELOG_NetWkSta_SMB_Err=(ERRLOG_BASE+92); -const NELOG_NetWkSta_VC_Err=(ERRLOG_BASE+93); -const NELOG_NetWkSta_Stuck_VC_Err=(ERRLOG_BASE+94); -const NELOG_NetWkSta_NCB_Err=(ERRLOG_BASE+95); -const NELOG_NetWkSta_Write_Behind_Err=(ERRLOG_BASE+96); -const NELOG_NetWkSta_Reset_Err=(ERRLOG_BASE+97); -const NELOG_NetWkSta_Too_Many=(ERRLOG_BASE+98); -const NELOG_Srv_Thread_Failure=(ERRLOG_BASE+104); -const NELOG_Srv_Close_Failure=(ERRLOG_BASE+105); -const NELOG_ReplUserCurDir=(ERRLOG_BASE+106); -const NELOG_ReplCannotMasterDir=(ERRLOG_BASE+107); -const NELOG_ReplUpdateError=(ERRLOG_BASE+108); -const NELOG_ReplLostMaster=(ERRLOG_BASE+109); -const NELOG_NetlogonAuthDCFail=(ERRLOG_BASE+110); -const NELOG_ReplLogonFailed=(ERRLOG_BASE+111); -const NELOG_ReplNetErr=(ERRLOG_BASE+112); -const NELOG_ReplMaxFiles=(ERRLOG_BASE+113); -const NELOG_ReplMaxTreeDepth=(ERRLOG_BASE+114); -const NELOG_ReplBadMsg=(ERRLOG_BASE+115); -const NELOG_ReplSysErr=(ERRLOG_BASE+116); -const NELOG_ReplUserLoged=(ERRLOG_BASE+117); -const NELOG_ReplBadImport=(ERRLOG_BASE+118); -const NELOG_ReplBadExport=(ERRLOG_BASE+119); -const NELOG_ReplSignalFileErr=(ERRLOG_BASE+120); -const NELOG_DiskFT=(ERRLOG_BASE+121); -const NELOG_ReplAccessDenied=(ERRLOG_BASE+122); -const NELOG_NetlogonFailedPrimary=(ERRLOG_BASE+123); -const NELOG_NetlogonPasswdSetFailed=(ERRLOG_BASE+124); -const NELOG_NetlogonTrackingError=(ERRLOG_BASE+125); -const NELOG_NetlogonSyncError=(ERRLOG_BASE+126); -const NELOG_UPS_PowerOut=(ERRLOG_BASE+130); -const NELOG_UPS_Shutdown=(ERRLOG_BASE+131); -const NELOG_UPS_CmdFileError=(ERRLOG_BASE+132); -const NELOG_UPS_CannotOpenDriver=(ERRLOG_BASE+133); -const NELOG_UPS_PowerBack=(ERRLOG_BASE+134); -const NELOG_UPS_CmdFileConfig=(ERRLOG_BASE+135); -const NELOG_UPS_CmdFileExec=(ERRLOG_BASE+136); -const NELOG_Missing_Parameter=(ERRLOG_BASE+150); -const NELOG_Invalid_Config_Line=(ERRLOG_BASE+151); -const NELOG_Invalid_Config_File=(ERRLOG_BASE+152); -const NELOG_File_Changed=(ERRLOG_BASE+153); -const NELOG_Files_Dont_Fit=(ERRLOG_BASE+154); -const NELOG_Wrong_DLL_Version=(ERRLOG_BASE+155); -const NELOG_Error_in_DLL=(ERRLOG_BASE+156); -const NELOG_System_Error=(ERRLOG_BASE+157); -const NELOG_FT_ErrLog_Too_Large=(ERRLOG_BASE+158); -const NELOG_FT_Update_In_Progress=(ERRLOG_BASE+159); -const NELOG_OEM_Code=(ERRLOG_BASE+199); -const NELOG_NetlogonSSIInitError=ERRLOG2_BASE; -const NELOG_NetlogonFailedToUpdateTrustList=(ERRLOG2_BASE+1); -const NELOG_NetlogonFailedToAddRpcInterface=(ERRLOG2_BASE+2); -const NELOG_NetlogonFailedToReadMailslot=(ERRLOG2_BASE+3); -const NELOG_NetlogonFailedToRegisterSC=(ERRLOG2_BASE+4); -const NELOG_NetlogonChangeLogCorrupt=(ERRLOG2_BASE+5); -const NELOG_NetlogonFailedToCreateShare=(ERRLOG2_BASE+6); -const NELOG_NetlogonDownLevelLogonFailed=(ERRLOG2_BASE+7); -const NELOG_NetlogonDownLevelLogoffFailed=(ERRLOG2_BASE+8); -const NELOG_NetlogonNTLogonFailed=(ERRLOG2_BASE+9); -const NELOG_NetlogonNTLogoffFailed=(ERRLOG2_BASE+10); -const NELOG_NetlogonPartialSyncCallSuccess=(ERRLOG2_BASE+11); -const NELOG_NetlogonPartialSyncCallFailed=(ERRLOG2_BASE+12); -const NELOG_NetlogonFullSyncCallSuccess=(ERRLOG2_BASE+13); -const NELOG_NetlogonFullSyncCallFailed=(ERRLOG2_BASE+14); -const NELOG_NetlogonPartialSyncSuccess=(ERRLOG2_BASE+15); -const NELOG_NetlogonPartialSyncFailed=(ERRLOG2_BASE+16); -const NELOG_NetlogonFullSyncSuccess=(ERRLOG2_BASE+17); -const NELOG_NetlogonFullSyncFailed=(ERRLOG2_BASE+18); -const NELOG_NetlogonAuthNoDomainController=(ERRLOG2_BASE+19); -const NELOG_NetlogonAuthNoTrustLsaSecret=(ERRLOG2_BASE+20); -const NELOG_NetlogonAuthNoTrustSamAccount=(ERRLOG2_BASE+21); -const NELOG_NetlogonServerAuthFailed=(ERRLOG2_BASE+22); -const NELOG_NetlogonServerAuthNoTrustSamAccount=(ERRLOG2_BASE+23); -const NELOG_FailedToRegisterSC=(ERRLOG2_BASE+24); -const NELOG_FailedToSetServiceStatus=(ERRLOG2_BASE+25); -const NELOG_FailedToGetComputerName=(ERRLOG2_BASE+26); -const NELOG_DriverNotLoaded=(ERRLOG2_BASE+27); -const NELOG_NoTranportLoaded=(ERRLOG2_BASE+28); -const NELOG_NetlogonFailedDomainDelta=(ERRLOG2_BASE+29); -const NELOG_NetlogonFailedGlobalGroupDelta=(ERRLOG2_BASE+30); -const NELOG_NetlogonFailedLocalGroupDelta=(ERRLOG2_BASE+31); -const NELOG_NetlogonFailedUserDelta=(ERRLOG2_BASE+32); -const NELOG_NetlogonFailedPolicyDelta=(ERRLOG2_BASE+33); -const NELOG_NetlogonFailedTrustedDomainDelta=(ERRLOG2_BASE+34); -const NELOG_NetlogonFailedAccountDelta=(ERRLOG2_BASE+35); -const NELOG_NetlogonFailedSecretDelta=(ERRLOG2_BASE+36); -const NELOG_NetlogonSystemError=(ERRLOG2_BASE+37); -const NELOG_NetlogonDuplicateMachineAccounts=(ERRLOG2_BASE+38); -const NELOG_NetlogonTooManyGlobalGroups=(ERRLOG2_BASE+39); -const NELOG_NetlogonBrowserDriver=(ERRLOG2_BASE+40); -const NELOG_NetlogonAddNameFailure=(ERRLOG2_BASE+41); -const NELOG_RplMessages=(ERRLOG2_BASE+42); -const NELOG_RplXnsBoot=(ERRLOG2_BASE+43); -const NELOG_RplSystem=(ERRLOG2_BASE+44); -const NELOG_RplWkstaTimeout=(ERRLOG2_BASE+45); -const NELOG_RplWkstaFileOpen=(ERRLOG2_BASE+46); -const NELOG_RplWkstaFileRead=(ERRLOG2_BASE+47); -const NELOG_RplWkstaMemory=(ERRLOG2_BASE+48); -const NELOG_RplWkstaFileChecksum=(ERRLOG2_BASE+49); -const NELOG_RplWkstaFileLineCount=(ERRLOG2_BASE+50); -const NELOG_RplWkstaBbcFile=(ERRLOG2_BASE+51); -const NELOG_RplWkstaFileSize=(ERRLOG2_BASE+52); -const NELOG_RplWkstaInternal=(ERRLOG2_BASE+53); -const NELOG_RplWkstaWrongVersion=(ERRLOG2_BASE+54); -const NELOG_RplWkstaNetwork=(ERRLOG2_BASE+55); -const NELOG_RplAdapterResource=(ERRLOG2_BASE+56); -const NELOG_RplFileCopy=(ERRLOG2_BASE+57); -const NELOG_RplFileDelete=(ERRLOG2_BASE+58); -const NELOG_RplFilePerms=(ERRLOG2_BASE+59); -const NELOG_RplCheckConfigs=(ERRLOG2_BASE+60); -const NELOG_RplCreateProfiles=(ERRLOG2_BASE+61); -const NELOG_RplRegistry=(ERRLOG2_BASE+62); -const NELOG_RplReplaceRPLDISK=(ERRLOG2_BASE+63); -const NELOG_RplCheckSecurity=(ERRLOG2_BASE+64); -const NELOG_RplBackupDatabase=(ERRLOG2_BASE+65); -const NELOG_RplInitDatabase=(ERRLOG2_BASE+66); -const NELOG_RplRestoreDatabaseFailure=(ERRLOG2_BASE+67); -const NELOG_RplRestoreDatabaseSuccess=(ERRLOG2_BASE+68); -const NELOG_RplInitRestoredDatabase=(ERRLOG2_BASE+69); -const NELOG_NetlogonSessionTypeWrong=(ERRLOG2_BASE+70); - -struct ERROR_LOG { - DWORD el_len; - DWORD el_reserved; - DWORD el_time; - DWORD el_error; - LPWSTR el_name; - LPWSTR el_text; - LPBYTE el_data; - DWORD el_data_size; - DWORD el_nstrings; -} -alias ERROR_LOG* PERROR_LOG, LPERROR_LOG; - -extern (Windows) { - deprecated { - NET_API_STATUS NetErrorLogClear(LPCWSTR, LPCWSTR, LPBYTE); - NET_API_STATUS NetErrorLogRead(LPCWSTR, LPWSTR, LPHLOG, DWORD, - LPDWORD, DWORD, DWORD, LPBYTE*, DWORD, LPDWORD, LPDWORD); - NET_API_STATUS NetErrorLogWrite(LPBYTE, DWORD, LPCWSTR, LPBYTE, - DWORD, LPBYTE, DWORD, LPBYTE); - } -} \ No newline at end of file diff --git a/3rdparty-extra/win32/lmmsg.d b/3rdparty-extra/win32/lmmsg.d deleted file mode 100644 index b9f0380a8..000000000 --- a/3rdparty-extra/win32/lmmsg.d +++ /dev/null @@ -1,44 +0,0 @@ -/***********************************************************************\ -* lmmsg.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmmsg; -version(Windows): -pragma(lib, "netapi32"); - -private import win32.lmcons, win32.windef, win32.w32api; - -static assert (_WIN32_WINNT >= 0x501, - "win32.lmmsg is available only if version WindowsXP, Windows2003 " - "or WindowsVista is set"); - -const MSGNAME_NOT_FORWARDED = 0; -const MSGNAME_FORWARDED_TO = 4; -const MSGNAME_FORWARDED_FROM = 16; - -struct MSG_INFO_0 { - LPWSTR msgi0_name; -} -alias MSG_INFO_0* PMSG_INFO_0, LPMSG_INFO_0; - -struct MSG_INFO_1 { - LPWSTR msgi1_name; - DWORD msgi1_forward_flag; - LPWSTR msgi1_forward; -} -alias MSG_INFO_1* PMSG_INFO_1, LPMSG_INFO_1; - -extern (Windows) { - NET_API_STATUS NetMessageBufferSend(LPCWSTR, LPCWSTR, LPCWSTR, PBYTE, - DWORD); - NET_API_STATUS NetMessageNameAdd(LPCWSTR, LPCWSTR); - NET_API_STATUS NetMessageNameDel(LPCWSTR, LPCWSTR); - NET_API_STATUS NetMessageNameEnum(LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, - PDWORD, PDWORD); - NET_API_STATUS NetMessageNameGetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE*); -} diff --git a/3rdparty-extra/win32/lmremutl.d b/3rdparty-extra/win32/lmremutl.d deleted file mode 100644 index d3b09517d..000000000 --- a/3rdparty-extra/win32/lmremutl.d +++ /dev/null @@ -1,61 +0,0 @@ -/***********************************************************************\ -* lmremutl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmremutl; -version(Windows): -pragma(lib, "netapi32"); - -// D Conversion Note: DESC_CHAR is defined as TCHAR. - -private import win32.lmcons, win32.windef; - -const SUPPORTS_REMOTE_ADMIN_PROTOCOL = 2; -const SUPPORTS_RPC = 4; -const SUPPORTS_SAM_PROTOCOL = 8; -const SUPPORTS_UNICODE = 16; -const SUPPORTS_LOCAL = 32; -const SUPPORTS_ANY = 0xFFFFFFFF; - -const NO_PERMISSION_REQUIRED = 1; -const ALLOCATE_RESPONSE = 2; -const USE_SPECIFIC_TRANSPORT = 0x80000000; - -//[Yes] #ifndef DESC_CHAR_UNICODE -//alias CHAR DESC_CHAR; -//} else { -//[No] #else -//[No] typedef WCHAR DESC_CHAR; -//[No] #endif -// FIXME (D): Is this OK? -alias TCHAR DESC_CHAR; - -alias DESC_CHAR* LPDESC; - -struct TIME_OF_DAY_INFO { - DWORD tod_elapsedt; - DWORD tod_msecs; - DWORD tod_hours; - DWORD tod_mins; - DWORD tod_secs; - DWORD tod_hunds; - LONG tod_timezone; - DWORD tod_tinterval; - DWORD tod_day; - DWORD tod_month; - DWORD tod_year; - DWORD tod_weekday; -} -alias TIME_OF_DAY_INFO* PTIME_OF_DAY_INFO, LPTIME_OF_DAY_INFO; - -extern (Windows) { - NET_API_STATUS NetRemoteTOD(LPCWSTR, PBYTE*); - NET_API_STATUS NetRemoteComputerSupports(LPCWSTR, DWORD, PDWORD); - NET_API_STATUS RxRemoteApi(DWORD, LPCWSTR, LPDESC, LPDESC, LPDESC, - LPDESC, LPDESC, LPDESC, LPDESC, DWORD, ...); -} diff --git a/3rdparty-extra/win32/lmrepl.d b/3rdparty-extra/win32/lmrepl.d deleted file mode 100644 index 20ee6652a..000000000 --- a/3rdparty-extra/win32/lmrepl.d +++ /dev/null @@ -1,135 +0,0 @@ -/***********************************************************************\ -* lmrepl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmrepl; -version(Windows): -pragma(lib, "netapi32"); - -private import win32.lmcons, win32.windef; - -const REPL_ROLE_EXPORT=1; -const REPL_ROLE_IMPORT=2; -const REPL_ROLE_BOTH=3; - -const REPL_INTERVAL_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+0; -const REPL_PULSE_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+1; -const REPL_GUARDTIME_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+2; -const REPL_RANDOM_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+3; - -const REPL_UNLOCK_NOFORCE=0; -const REPL_UNLOCK_FORCE=1; -const REPL_STATE_OK=0; -const REPL_STATE_NO_MASTER=1; -const REPL_STATE_NO_SYNC=2; -const REPL_STATE_NEVER_REPLICATED=3; -const REPL_INTEGRITY_FILE=1; -const REPL_INTEGRITY_TREE=2; -const REPL_EXTENT_FILE=1; -const REPL_EXTENT_TREE=2; - -const REPL_EXPORT_INTEGRITY_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+0; -const REPL_EXPORT_EXTENT_INFOLEVEL = PARMNUM_BASE_INFOLEVEL+1; - -struct REPL_INFO_0 { - DWORD rp0_role; - LPWSTR rp0_exportpath; - LPWSTR rp0_exportlist; - LPWSTR rp0_importpath; - LPWSTR rp0_importlist; - LPWSTR rp0_logonusername; - DWORD rp0_interval; - DWORD rp0_pulse; - DWORD rp0_guardtime; - DWORD rp0_random; -} -alias REPL_INFO_0* PREPL_INFO_0, LPREPL_INFO_0; - -struct REPL_INFO_1000 { - DWORD rp1000_interval; -} -alias REPL_INFO_1000* PREPL_INFO_1000, LPREPL_INFO_1000; - -struct REPL_INFO_1001 { - DWORD rp1001_pulse; -} -alias REPL_INFO_1001* PREPL_INFO_1001, LPREPL_INFO_1001; - -struct REPL_INFO_1002 { - DWORD rp1002_guardtime; -} -alias REPL_INFO_1002* PREPL_INFO_1002, LPREPL_INFO_1002; - -struct REPL_INFO_1003 { - DWORD rp1003_random; -} -alias REPL_INFO_1003* PREPL_INFO_1003, LPREPL_INFO_1003; - -struct REPL_EDIR_INFO_0 { - LPWSTR rped0_dirname; -} -alias REPL_EDIR_INFO_0* PREPL_EDIR_INFO_0, LPREPL_EDIR_INFO_0; - -struct REPL_EDIR_INFO_1 { - LPWSTR rped1_dirname; - DWORD rped1_integrity; - DWORD rped1_extent; -} -alias REPL_EDIR_INFO_1* PREPL_EDIR_INFO_1, LPREPL_EDIR_INFO_1; - -struct REPL_EDIR_INFO_2 { - LPWSTR rped2_dirname; - DWORD rped2_integrity; - DWORD rped2_extent; - DWORD rped2_lockcount; - DWORD rped2_locktime; -} -alias REPL_EDIR_INFO_2* PREPL_EDIR_INFO_2, LPREPL_EDIR_INFO_2; - -struct REPL_EDIR_INFO_1000 { - DWORD rped1000_integrity; -} -alias REPL_EDIR_INFO_1000* PREPL_EDIR_INFO_1000, LPREPL_EDIR_INFO_1000; - -struct REPL_EDIR_INFO_1001 { - DWORD rped1001_extent; -} -alias REPL_EDIR_INFO_1001* PREPL_EDIR_INFO_1001, LPREPL_EDIR_INFO_1001; - -struct REPL_IDIR_INFO_0 { - LPWSTR rpid0_dirname; -} -alias REPL_IDIR_INFO_0* PREPL_IDIR_INFO_0, LPREPL_IDIR_INFO_0; - -struct REPL_IDIR_INFO_1 { - LPWSTR rpid1_dirname; - DWORD rpid1_state; - LPWSTR rpid1_mastername; - DWORD rpid1_last_update_time; - DWORD rpid1_lockcount; - DWORD rpid1_locktime; -} -alias REPL_IDIR_INFO_1* PREPL_IDIR_INFO_1, LPREPL_IDIR_INFO_1; - -extern (Windows) { -NET_API_STATUS NetReplGetInfo(LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetReplSetInfo(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetReplExportDirAdd(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetReplExportDirDel(LPCWSTR,LPCWSTR); -NET_API_STATUS NetReplExportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetReplExportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetReplExportDirSetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetReplExportDirLock(LPCWSTR,LPCWSTR); -NET_API_STATUS NetReplExportDirUnlock(LPCWSTR,LPCWSTR,DWORD); -NET_API_STATUS NetReplImportDirAdd(LPCWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetReplImportDirDel(LPCWSTR,LPCWSTR); -NET_API_STATUS NetReplImportDirEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetReplImportDirGetInfo(LPCWSTR,LPCWSTR,DWORD,PBYTE*); -NET_API_STATUS NetReplImportDirLock(LPCWSTR,LPCWSTR); -NET_API_STATUS NetReplImportDirUnlock(LPCWSTR,LPCWSTR,DWORD); -} \ No newline at end of file diff --git a/3rdparty-extra/win32/lmserver.d b/3rdparty-extra/win32/lmserver.d deleted file mode 100644 index fc0bec4e4..000000000 --- a/3rdparty-extra/win32/lmserver.d +++ /dev/null @@ -1,942 +0,0 @@ -/***********************************************************************\ -* lmserver.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmserver; -version(Windows): - -import win32.winsvc; -private import win32.lmcons, win32.windef; - -struct SERVER_INFO_100 { - DWORD sv100_platform_id; - LPWSTR sv100_name; -} -alias SERVER_INFO_100* PSERVER_INFO_100, LPSERVER_INFO_100; - -struct SERVER_INFO_101 { - DWORD sv101_platform_id; - LPWSTR sv101_name; - DWORD sv101_version_major; - DWORD sv101_version_minor; - DWORD sv101_type; - LPWSTR sv101_comment; -} -alias SERVER_INFO_101* PSERVER_INFO_101, LPSERVER_INFO_101; - -struct SERVER_INFO_102 { - DWORD sv102_platform_id; - LPWSTR sv102_name; - DWORD sv102_version_major; - DWORD sv102_version_minor; - DWORD sv102_type; - LPWSTR sv102_comment; - DWORD sv102_users; - LONG sv102_disc; - BOOL sv102_hidden; - DWORD sv102_announce; - DWORD sv102_anndelta; - DWORD sv102_licenses; - LPWSTR sv102_userpath; -} -alias SERVER_INFO_102* PSERVER_INFO_102, LPSERVER_INFO_102; - -struct SERVER_INFO_402 { - DWORD sv402_ulist_mtime; - DWORD sv402_glist_mtime; - DWORD sv402_alist_mtime; - LPWSTR sv402_alerts; - DWORD sv402_security; - DWORD sv402_numadmin; - DWORD sv402_lanmask; - LPWSTR sv402_guestacct; - DWORD sv402_chdevs; - DWORD sv402_chdevq; - DWORD sv402_chdevjobs; - DWORD sv402_connections; - DWORD sv402_shares; - DWORD sv402_openfiles; - DWORD sv402_sessopens; - DWORD sv402_sessvcs; - DWORD sv402_sessreqs; - DWORD sv402_opensearch; - DWORD sv402_activelocks; - DWORD sv402_numreqbuf; - DWORD sv402_sizreqbuf; - DWORD sv402_numbigbuf; - DWORD sv402_numfiletasks; - DWORD sv402_alertsched; - DWORD sv402_erroralert; - DWORD sv402_logonalert; - DWORD sv402_accessalert; - DWORD sv402_diskalert; - DWORD sv402_netioalert; - DWORD sv402_maxauditsz; - LPWSTR sv402_srvheuristics; -} -alias SERVER_INFO_402* PSERVER_INFO_402, LPSERVER_INFO_402; - -struct SERVER_INFO_403 { - DWORD sv403_ulist_mtime; - DWORD sv403_glist_mtime; - DWORD sv403_alist_mtime; - LPWSTR sv403_alerts; - DWORD sv403_security; - DWORD sv403_numadmin; - DWORD sv403_lanmask; - LPWSTR sv403_guestacct; - DWORD sv403_chdevs; - DWORD sv403_chdevq; - DWORD sv403_chdevjobs; - DWORD sv403_connections; - DWORD sv403_shares; - DWORD sv403_openfiles; - DWORD sv403_sessopens; - DWORD sv403_sessvcs; - DWORD sv403_sessreqs; - DWORD sv403_opensearch; - DWORD sv403_activelocks; - DWORD sv403_numreqbuf; - DWORD sv403_sizreqbuf; - DWORD sv403_numbigbuf; - DWORD sv403_numfiletasks; - DWORD sv403_alertsched; - DWORD sv403_erroralert; - DWORD sv403_logonalert; - DWORD sv403_accessalert; - DWORD sv403_diskalert; - DWORD sv403_netioalert; - DWORD sv403_maxauditsz; - LPWSTR sv403_srvheuristics; - DWORD sv403_auditedevents; - DWORD sv403_autoprofile; - LPWSTR sv403_autopath; -} -alias SERVER_INFO_403* PSERVER_INFO_403, LPSERVER_INFO_403; - -struct SERVER_INFO_502 { - DWORD sv502_sessopens; - DWORD sv502_sessvcs; - DWORD sv502_opensearch; - DWORD sv502_sizreqbuf; - DWORD sv502_initworkitems; - DWORD sv502_maxworkitems; - DWORD sv502_rawworkitems; - DWORD sv502_irpstacksize; - DWORD sv502_maxrawbuflen; - DWORD sv502_sessusers; - DWORD sv502_sessconns; - DWORD sv502_maxpagedmemoryusage; - DWORD sv502_maxnonpagedmemoryusage; - BOOL sv502_enablesoftcompat; - BOOL sv502_enableforcedlogoff; - BOOL sv502_timesource; - BOOL sv502_acceptdownlevelapis; - BOOL sv502_lmannounce; -} -alias SERVER_INFO_502* PSERVER_INFO_502, LPSERVER_INFO_502; - -struct SERVER_INFO_503 { - DWORD sv503_sessopens; - DWORD sv503_sessvcs; - DWORD sv503_opensearch; - DWORD sv503_sizreqbuf; - DWORD sv503_initworkitems; - DWORD sv503_maxworkitems; - DWORD sv503_rawworkitems; - DWORD sv503_irpstacksize; - DWORD sv503_maxrawbuflen; - DWORD sv503_sessusers; - DWORD sv503_sessconns; - DWORD sv503_maxpagedmemoryusage; - DWORD sv503_maxnonpagedmemoryusage; - BOOL sv503_enablesoftcompat; - BOOL sv503_enableforcedlogoff; - BOOL sv503_timesource; - BOOL sv503_acceptdownlevelapis; - BOOL sv503_lmannounce; - LPWSTR sv503_domain; - DWORD sv503_maxcopyreadlen; - DWORD sv503_maxcopywritelen; - DWORD sv503_minkeepsearch; - DWORD sv503_maxkeepsearch; - DWORD sv503_minkeepcomplsearch; - DWORD sv503_maxkeepcomplsearch; - DWORD sv503_threadcountadd; - DWORD sv503_numblockthreads; - DWORD sv503_scavtimeout; - DWORD sv503_minrcvqueue; - DWORD sv503_minfreeworkitems; - DWORD sv503_xactmemsize; - DWORD sv503_threadpriority; - DWORD sv503_maxmpxct; - DWORD sv503_oplockbreakwait; - DWORD sv503_oplockbreakresponsewait; - BOOL sv503_enableoplocks; - BOOL sv503_enableoplockforceclose; - BOOL sv503_enablefcbopens; - BOOL sv503_enableraw; - BOOL sv503_enablesharednetdrives; - DWORD sv503_minfreeconnections; - DWORD sv503_maxfreeconnections; -} -alias SERVER_INFO_503* PSERVER_INFO_503, LPSERVER_INFO_503; - -struct SERVER_INFO_599 { - DWORD sv599_sessopens; - DWORD sv599_sessvcs; - DWORD sv599_opensearch; - DWORD sv599_sizreqbuf; - DWORD sv599_initworkitems; - DWORD sv599_maxworkitems; - DWORD sv599_rawworkitems; - DWORD sv599_irpstacksize; - DWORD sv599_maxrawbuflen; - DWORD sv599_sessusers; - DWORD sv599_sessconns; - DWORD sv599_maxpagedmemoryusage; - DWORD sv599_maxnonpagedmemoryusage; - BOOL sv599_enablesoftcompat; - BOOL sv599_enableforcedlogoff; - BOOL sv599_timesource; - BOOL sv599_acceptdownlevelapis; - BOOL sv599_lmannounce; - LPWSTR sv599_domain; - DWORD sv599_maxcopyreadlen; - DWORD sv599_maxcopywritelen; - DWORD sv599_minkeepsearch; - DWORD sv599_maxkeepsearch; - DWORD sv599_minkeepcomplsearch; - DWORD sv599_maxkeepcomplsearch; - DWORD sv599_threadcountadd; - DWORD sv599_numblockthreads; - DWORD sv599_scavtimeout; - DWORD sv599_minrcvqueue; - DWORD sv599_minfreeworkitems; - DWORD sv599_xactmemsize; - DWORD sv599_threadpriority; - DWORD sv599_maxmpxct; - DWORD sv599_oplockbreakwait; - DWORD sv599_oplockbreakresponsewait; - BOOL sv599_enableoplocks; - BOOL sv599_enableoplockforceclose; - BOOL sv599_enablefcbopens; - BOOL sv599_enableraw; - BOOL sv599_enablesharednetdrives; - DWORD sv599_minfreeconnections; - DWORD sv599_maxfreeconnections; - DWORD sv599_initsesstable; - DWORD sv599_initconntable; - DWORD sv599_initfiletable; - DWORD sv599_initsearchtable; - DWORD sv599_alertschedule; - DWORD sv599_errorthreshold; - DWORD sv599_networkerrorthreshold; - DWORD sv599_diskspacethreshold; - DWORD sv599_reserved; - DWORD sv599_maxlinkdelay; - DWORD sv599_minlinkthroughput; - DWORD sv599_linkinfovalidtime; - DWORD sv599_scavqosinfoupdatetime; - DWORD sv599_maxworkitemidletime; -} -alias SERVER_INFO_599* PSERVER_INFO_599, LPSERVER_INFO_599; - -struct SERVER_INFO_598 { - DWORD sv598_maxrawworkitems; - DWORD sv598_maxthreadsperqueue; - DWORD sv598_producttype; - DWORD sv598_serversize; - DWORD sv598_connectionlessautodisc; - DWORD sv598_sharingviolationretries; - DWORD sv598_sharingviolationdelay; - DWORD sv598_maxglobalopensearch; - DWORD sv598_removeduplicatesearches; - DWORD sv598_lockviolationoffset; - DWORD sv598_lockviolationdelay; - DWORD sv598_mdlreadswitchover; - DWORD sv598_cachedopenlimit; - DWORD sv598_otherqueueaffinity; - BOOL sv598_restrictnullsessaccess; - BOOL sv598_enablewfw311directipx; - DWORD sv598_queuesamplesecs; - DWORD sv598_balancecount; - DWORD sv598_preferredaffinity; - DWORD sv598_maxfreerfcbs; - DWORD sv598_maxfreemfcbs; - DWORD sv598_maxfreelfcbs; - DWORD sv598_maxfreepagedpoolchunks; - DWORD sv598_minpagedpoolchunksize; - DWORD sv598_maxpagedpoolchunksize; - BOOL sv598_sendsfrompreferredprocessor; -} -alias SERVER_INFO_598* PSERVER_INFO_598, LPSERVER_INFO_598; - -struct SERVER_INFO_1005 { - LPWSTR sv1005_comment; -} -alias SERVER_INFO_1005* PSERVER_INFO_1005, LPSERVER_INFO_1005; - -struct SERVER_INFO_1107 { - DWORD sv1107_users; -} -alias SERVER_INFO_1107* PSERVER_INFO_1107, LPSERVER_INFO_1107; - -struct SERVER_INFO_1010 { - LONG sv1010_disc; -} -alias SERVER_INFO_1010* PSERVER_INFO_1010, LPSERVER_INFO_1010; - -struct SERVER_INFO_1016 { - BOOL sv1016_hidden; -} -alias SERVER_INFO_1016* PSERVER_INFO_1016, LPSERVER_INFO_1016; - -struct SERVER_INFO_1017 { - DWORD sv1017_announce; -} -alias SERVER_INFO_1017* PSERVER_INFO_1017, LPSERVER_INFO_1017; - -struct SERVER_INFO_1018 { - DWORD sv1018_anndelta; -} -alias SERVER_INFO_1018* PSERVER_INFO_1018, LPSERVER_INFO_1018; - -struct SERVER_INFO_1501 { - DWORD sv1501_sessopens; -} -alias SERVER_INFO_1501* PSERVER_INFO_1501, LPSERVER_INFO_1501; - -struct SERVER_INFO_1502 { - DWORD sv1502_sessvcs; -} -alias SERVER_INFO_1502* PSERVER_INFO_1502, LPSERVER_INFO_1502; - -struct SERVER_INFO_1503 { - DWORD sv1503_opensearch; -} -alias SERVER_INFO_1503* PSERVER_INFO_1503, LPSERVER_INFO_1503; - -struct SERVER_INFO_1506 { - DWORD sv1506_maxworkitems; -} -alias SERVER_INFO_1506* PSERVER_INFO_1506, LPSERVER_INFO_1506; - -struct SERVER_INFO_1509 { - DWORD sv1509_maxrawbuflen; -} -alias SERVER_INFO_1509* PSERVER_INFO_1509, LPSERVER_INFO_1509; - -struct SERVER_INFO_1510 { - DWORD sv1510_sessusers; -} -alias SERVER_INFO_1510* PSERVER_INFO_1510, LPSERVER_INFO_1510; - -struct SERVER_INFO_1511 { - DWORD sv1511_sessconns; -} alias SERVER_INFO_1511* PSERVER_INFO_1511, LPSERVER_INFO_1511; - -struct SERVER_INFO_1512 { - DWORD sv1512_maxnonpagedmemoryusage; -} -alias SERVER_INFO_1512* PSERVER_INFO_1512, LPSERVER_INFO_1512; - -struct SERVER_INFO_1513 { - DWORD sv1513_maxpagedmemoryusage; -} -alias SERVER_INFO_1513* PSERVER_INFO_1513, LPSERVER_INFO_1513; - -struct SERVER_INFO_1514 { - BOOL sv1514_enablesoftcompat; -} -alias SERVER_INFO_1514* PSERVER_INFO_1514, LPSERVER_INFO_1514; - -struct SERVER_INFO_1515 { - BOOL sv1515_enableforcedlogoff; -} -alias SERVER_INFO_1515* PSERVER_INFO_1515, LPSERVER_INFO_1515; - -struct SERVER_INFO_1516 { - BOOL sv1516_timesource; -} -alias SERVER_INFO_1516* PSERVER_INFO_1516, LPSERVER_INFO_1516; - -struct SERVER_INFO_1518 { - BOOL sv1518_lmannounce; -} -alias SERVER_INFO_1518* PSERVER_INFO_1518, LPSERVER_INFO_1518; - -struct SERVER_INFO_1520 { - DWORD sv1520_maxcopyreadlen; -} -alias SERVER_INFO_1520* PSERVER_INFO_1520, LPSERVER_INFO_1520; - -struct SERVER_INFO_1521 { - DWORD sv1521_maxcopywritelen; -} -alias SERVER_INFO_1521* PSERVER_INFO_1521, LPSERVER_INFO_1521; - -struct SERVER_INFO_1522 { - DWORD sv1522_minkeepsearch; -} -alias SERVER_INFO_1522* PSERVER_INFO_1522, LPSERVER_INFO_1522; - -struct SERVER_INFO_1523 { - DWORD sv1523_maxkeepsearch; -} -alias SERVER_INFO_1523* PSERVER_INFO_1523, LPSERVER_INFO_1523; - -struct SERVER_INFO_1524 { - DWORD sv1524_minkeepcomplsearch; -} -alias SERVER_INFO_1524* PSERVER_INFO_1524, LPSERVER_INFO_1524; - -struct SERVER_INFO_1525 { - DWORD sv1525_maxkeepcomplsearch; -} -alias SERVER_INFO_1525* PSERVER_INFO_1525, LPSERVER_INFO_1525; - -struct SERVER_INFO_1528 { - DWORD sv1528_scavtimeout; -} -alias SERVER_INFO_1528* PSERVER_INFO_1528, LPSERVER_INFO_1528; - -struct SERVER_INFO_1529 { - DWORD sv1529_minrcvqueue; -} -alias SERVER_INFO_1529* PSERVER_INFO_1529, LPSERVER_INFO_1529; - -struct SERVER_INFO_1530 { - DWORD sv1530_minfreeworkitems; -} -alias SERVER_INFO_1530* PSERVER_INFO_1530, LPSERVER_INFO_1530; - -struct SERVER_INFO_1533 { - DWORD sv1533_maxmpxct; -} -alias SERVER_INFO_1533* PSERVER_INFO_1533, LPSERVER_INFO_1533; - -struct SERVER_INFO_1534 { - DWORD sv1534_oplockbreakwait; -} -alias SERVER_INFO_1534* PSERVER_INFO_1534, LPSERVER_INFO_1534; - -struct SERVER_INFO_1535 { - DWORD sv1535_oplockbreakresponsewait; -} -alias SERVER_INFO_1535* PSERVER_INFO_1535, LPSERVER_INFO_1535; - -struct SERVER_INFO_1536 { - BOOL sv1536_enableoplocks; -} -alias SERVER_INFO_1536* PSERVER_INFO_1536, LPSERVER_INFO_1536; - -struct SERVER_INFO_1537 { - BOOL sv1537_enableoplockforceclose; -} -alias SERVER_INFO_1537* PSERVER_INFO_1537, LPSERVER_INFO_1537; - -struct SERVER_INFO_1538 { - BOOL sv1538_enablefcbopens; -} -alias SERVER_INFO_1538* PSERVER_INFO_1538, LPSERVER_INFO_1538; - -struct SERVER_INFO_1539 { - BOOL sv1539_enableraw; -} -alias SERVER_INFO_1539* PSERVER_INFO_1539, LPSERVER_INFO_1539; - -struct SERVER_INFO_1540 { - BOOL sv1540_enablesharednetdrives; -} -alias SERVER_INFO_1540* PSERVER_INFO_1540, LPSERVER_INFO_1540; - -struct SERVER_INFO_1541 { - BOOL sv1541_minfreeconnections; -} -alias SERVER_INFO_1541* PSERVER_INFO_1541, LPSERVER_INFO_1541; - -struct SERVER_INFO_1542 { - BOOL sv1542_maxfreeconnections; -} -alias SERVER_INFO_1542* PSERVER_INFO_1542, LPSERVER_INFO_1542; - -struct SERVER_INFO_1543 { - DWORD sv1543_initsesstable; -} -alias SERVER_INFO_1543* PSERVER_INFO_1543, LPSERVER_INFO_1543; - -struct SERVER_INFO_1544 { - DWORD sv1544_initconntable; -} -alias SERVER_INFO_1544* PSERVER_INFO_1544, LPSERVER_INFO_1544; - -struct SERVER_INFO_1545 { - DWORD sv1545_initfiletable; -} -alias SERVER_INFO_1545* PSERVER_INFO_1545, LPSERVER_INFO_1545; - -struct SERVER_INFO_1546 { - DWORD sv1546_initsearchtable; -} -alias SERVER_INFO_1546* PSERVER_INFO_1546, LPSERVER_INFO_1546; - -struct SERVER_INFO_1547 { - DWORD sv1547_alertschedule; -} -alias SERVER_INFO_1547* PSERVER_INFO_1547, LPSERVER_INFO_1547; - -struct SERVER_INFO_1548 { - DWORD sv1548_errorthreshold; -} -alias SERVER_INFO_1548* PSERVER_INFO_1548, LPSERVER_INFO_1548; - -struct SERVER_INFO_1549 { - DWORD sv1549_networkerrorthreshold; -} -alias SERVER_INFO_1549* PSERVER_INFO_1549, LPSERVER_INFO_1549; - -struct SERVER_INFO_1550 { - DWORD sv1550_diskspacethreshold; -} -alias SERVER_INFO_1550* PSERVER_INFO_1550, LPSERVER_INFO_1550; - -struct SERVER_INFO_1552 { - DWORD sv1552_maxlinkdelay; -} -alias SERVER_INFO_1552* PSERVER_INFO_1552, LPSERVER_INFO_1552; - -struct SERVER_INFO_1553 { - DWORD sv1553_minlinkthroughput; -} -alias SERVER_INFO_1553* PSERVER_INFO_1553, LPSERVER_INFO_1553; - -struct SERVER_INFO_1554 { - DWORD sv1554_linkinfovalidtime; -} -alias SERVER_INFO_1554* PSERVER_INFO_1554, LPSERVER_INFO_1554; - -struct SERVER_INFO_1555 { - DWORD sv1555_scavqosinfoupdatetime; -} -alias SERVER_INFO_1555* PSERVER_INFO_1555, LPSERVER_INFO_1555; - -struct SERVER_INFO_1556 { - DWORD sv1556_maxworkitemidletime; -} -alias SERVER_INFO_1556* PSERVER_INFO_1556, LPSERVER_INFO_1556; - -struct SERVER_INFO_1557 { - DWORD sv1557_maxrawworkitems; -} -alias SERVER_INFO_1557* PSERVER_INFO_1557, LPSERVER_INFO_1557; - -struct SERVER_INFO_1560 { - DWORD sv1560_producttype; -} -alias SERVER_INFO_1560* PSERVER_INFO_1560, LPSERVER_INFO_1560; - -struct SERVER_INFO_1561 { - DWORD sv1561_serversize; -} -alias SERVER_INFO_1561* PSERVER_INFO_1561, LPSERVER_INFO_1561; - -struct SERVER_INFO_1562 { - DWORD sv1562_connectionlessautodisc; -} -alias SERVER_INFO_1562* PSERVER_INFO_1562, LPSERVER_INFO_1562; - -struct SERVER_INFO_1563 { - DWORD sv1563_sharingviolationretries; -} -alias SERVER_INFO_1563* PSERVER_INFO_1563, LPSERVER_INFO_1563; - -struct SERVER_INFO_1564 { - DWORD sv1564_sharingviolationdelay; -} -alias SERVER_INFO_1564* PSERVER_INFO_1564, LPSERVER_INFO_1564; - -struct SERVER_INFO_1565 { - DWORD sv1565_maxglobalopensearch; -} -alias SERVER_INFO_1565* PSERVER_INFO_1565, LPSERVER_INFO_1565; - -struct SERVER_INFO_1566 { - BOOL sv1566_removeduplicatesearches; -} -alias SERVER_INFO_1566* PSERVER_INFO_1566, LPSERVER_INFO_1566; - -struct SERVER_INFO_1567 { - DWORD sv1567_lockviolationretries; -} -alias SERVER_INFO_1567* PSERVER_INFO_1567, LPSERVER_INFO_1567; - -struct SERVER_INFO_1568 { - DWORD sv1568_lockviolationoffset; -} -alias SERVER_INFO_1568* PSERVER_INFO_1568, LPSERVER_INFO_1568; - -struct SERVER_INFO_1569 { - DWORD sv1569_lockviolationdelay; -} -alias SERVER_INFO_1569* PSERVER_INFO_1569, LPSERVER_INFO_1569; - -struct SERVER_INFO_1570 { - DWORD sv1570_mdlreadswitchover; -} -alias SERVER_INFO_1570* PSERVER_INFO_1570, LPSERVER_INFO_1570; - -struct SERVER_INFO_1571 { - DWORD sv1571_cachedopenlimit; -} -alias SERVER_INFO_1571* PSERVER_INFO_1571, LPSERVER_INFO_1571; - -struct SERVER_INFO_1572 { - DWORD sv1572_criticalthreads; -} -alias SERVER_INFO_1572* PSERVER_INFO_1572, LPSERVER_INFO_1572; - -struct SERVER_INFO_1573 { - DWORD sv1573_restrictnullsessaccess; -} -alias SERVER_INFO_1573* PSERVER_INFO_1573, LPSERVER_INFO_1573; - -struct SERVER_INFO_1574 { - DWORD sv1574_enablewfw311directipx; -} -alias SERVER_INFO_1574* PSERVER_INFO_1574, LPSERVER_INFO_1574; - -struct SERVER_INFO_1575 { - DWORD sv1575_otherqueueaffinity; -} -alias SERVER_INFO_1575* PSERVER_INFO_1575, LPSERVER_INFO_1575; - -struct SERVER_INFO_1576 { - DWORD sv1576_queuesamplesecs; -} -alias SERVER_INFO_1576* PSERVER_INFO_1576, LPSERVER_INFO_1576; - -struct SERVER_INFO_1577 { - DWORD sv1577_balancecount; -} -alias SERVER_INFO_1577* PSERVER_INFO_1577, LPSERVER_INFO_1577; - -struct SERVER_INFO_1578 { - DWORD sv1578_preferredaffinity; -} -alias SERVER_INFO_1578* PSERVER_INFO_1578, LPSERVER_INFO_1578; - -struct SERVER_INFO_1579 { - DWORD sv1579_maxfreerfcbs; -} -alias SERVER_INFO_1579* PSERVER_INFO_1579, LPSERVER_INFO_1579; - -struct SERVER_INFO_1580 { - DWORD sv1580_maxfreemfcbs; -} -alias SERVER_INFO_1580* PSERVER_INFO_1580, LPSERVER_INFO_1580; - -struct SERVER_INFO_1581 { - DWORD sv1581_maxfreemlcbs; -} -alias SERVER_INFO_1581* PSERVER_INFO_1581, LPSERVER_INFO_1581; - -struct SERVER_INFO_1582 { - DWORD sv1582_maxfreepagedpoolchunks; -} -alias SERVER_INFO_1582* PSERVER_INFO_1582, LPSERVER_INFO_1582; - -struct SERVER_INFO_1583 { - DWORD sv1583_minpagedpoolchunksize; -} -alias SERVER_INFO_1583* PSERVER_INFO_1583, LPSERVER_INFO_1583; - -struct SERVER_INFO_1584 { - DWORD sv1584_maxpagedpoolchunksize; -} -alias SERVER_INFO_1584* PSERVER_INFO_1584, LPSERVER_INFO_1584; - -struct SERVER_INFO_1585 { - BOOL sv1585_sendsfrompreferredprocessor; -} -alias SERVER_INFO_1585* PSERVER_INFO_1585, LPSERVER_INFO_1585; - -struct SERVER_INFO_1586 { - BOOL sv1586_maxthreadsperqueue; -} -alias SERVER_INFO_1586* PSERVER_INFO_1586, LPSERVER_INFO_1586; - -struct SERVER_TRANSPORT_INFO_0 { - DWORD svti0_numberofvcs; - LPWSTR svti0_transportname; - PBYTE svti0_transportaddress; - DWORD svti0_transportaddresslength; - LPWSTR svti0_networkaddress; -} -alias SERVER_TRANSPORT_INFO_0* PSERVER_TRANSPORT_INFO_0, - LPSERVER_TRANSPORT_INFO_0; - -extern (Windows): -NET_API_STATUS NetServerEnum(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,DWORD,LPCWSTR,PDWORD); -NET_API_STATUS NetServerEnumEx(LPCWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,DWORD,LPCWSTR,LPCWSTR); -NET_API_STATUS NetServerGetInfo(LPWSTR,DWORD,PBYTE*); -NET_API_STATUS NetServerSetInfo(LPWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetServerSetInfoCommandLine(WORD,LPWSTR*); -NET_API_STATUS NetServerDiskEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetServerComputerNameAdd(LPWSTR,LPWSTR,LPWSTR); -NET_API_STATUS NetServerComputerNameDel(LPWSTR,LPWSTR); -NET_API_STATUS NetServerTransportAdd(LPWSTR,DWORD,PBYTE); -NET_API_STATUS NetServerTransportAddEx(LPWSTR,DWORD,PBYTE); -NET_API_STATUS NetServerTransportDel(LPWSTR,DWORD,PBYTE); -NET_API_STATUS NetServerTransportEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -BOOL SetServiceBits(SERVICE_STATUS_HANDLE,DWORD,BOOL,BOOL); - -const SVI1_NUM_ELEMENTS=5; -const SVI2_NUM_ELEMENTS=40; -const SVI3_NUM_ELEMENTS=44; -const SV_MAX_CMD_LEN=PATHLEN; -const SW_AUTOPROF_LOAD_MASK=1; -const SW_AUTOPROF_SAVE_MASK=2; -const SV_MAX_SRV_HEUR_LEN=32; -const SV_USERS_PER_LICENSE=5; -const SV_PLATFORM_ID_OS2=400; -const SV_PLATFORM_ID_NT=500; -const MAJOR_VERSION_MASK=15; -const SV_TYPE_WORKSTATION=1; -const SV_TYPE_SERVER=2; -const SV_TYPE_SQLSERVER=4; -const SV_TYPE_DOMAIN_CTRL=8; -const SV_TYPE_DOMAIN_BAKCTRL=16; -const SV_TYPE_TIME_SOURCE=32; -const SV_TYPE_AFP=64; -const SV_TYPE_NOVELL=128; -const SV_TYPE_DOMAIN_MEMBER=256; -const SV_TYPE_PRINTQ_SERVER=512; -const SV_TYPE_DIALIN_SERVER=1024; -const SV_TYPE_XENIX_SERVER=2048; -const SV_TYPE_SERVER_UNIX=SV_TYPE_XENIX_SERVER; -const SV_TYPE_NT=4096; -const SV_TYPE_WFW=8192; -const SV_TYPE_SERVER_MFPN=16384; -const SV_TYPE_SERVER_NT=32768; -const SV_TYPE_POTENTIAL_BROWSER=65536; -const SV_TYPE_BACKUP_BROWSER=0x20000; -const SV_TYPE_MASTER_BROWSER=0x40000; -const SV_TYPE_DOMAIN_MASTER=0x80000; -const SV_TYPE_SERVER_OSF=0x100000; -const SV_TYPE_SERVER_VMS=0x200000; -const SV_TYPE_WINDOWS=0x400000; -const SV_TYPE_ALTERNATE_XPORT=0x20000000; -const SV_TYPE_LOCAL_LIST_ONLY=0x40000000; -const SV_TYPE_DOMAIN_ENUM=0x80000000; -const SV_TYPE_ALL=0xFFFFFFFF; -const SV_NODISC=(-1); -const SV_USERSECURITY=1; -const SV_SHARESECURITY=0; -const SV_HIDDEN=1; -const SV_VISIBLE=0; -const SV_PLATFORM_ID_PARMNUM=101; -const SV_NAME_PARMNUM=102; -const SV_VERSION_MAJOR_PARMNUM=103; -const SV_VERSION_MINOR_PARMNUM=104; -const SV_TYPE_PARMNUM=105; -const SV_COMMENT_PARMNUM=5; -const SV_USERS_PARMNUM=107; -const SV_DISC_PARMNUM=10; -const SV_HIDDEN_PARMNUM=16; -const SV_ANNOUNCE_PARMNUM=17; -const SV_ANNDELTA_PARMNUM=18; -const SV_USERPATH_PARMNUM=112; -const SV_ULIST_MTIME_PARMNUM=401; -const SV_GLIST_MTIME_PARMNUM=402; -const SV_ALIST_MTIME_PARMNUM=403; -const SV_ALERTS_PARMNUM=11; -const SV_SECURITY_PARMNUM=405; -const SV_NUMADMIN_PARMNUM=406; -const SV_LANMASK_PARMNUM=407; -const SV_GUESTACC_PARMNUM=408; -const SV_CHDEVQ_PARMNUM=410; -const SV_CHDEVJOBS_PARMNUM=411; -const SV_CONNECTIONS_PARMNUM=412; -const SV_SHARES_PARMNUM=413; -const SV_OPENFILES_PARMNUM=414; -const SV_SESSREQS_PARMNUM=417; -const SV_ACTIVELOCKS_PARMNUM=419; -const SV_NUMREQBUF_PARMNUM=420; -const SV_NUMBIGBUF_PARMNUM=422; -const SV_NUMFILETASKS_PARMNUM=423; -const SV_ALERTSCHED_PARMNUM=37; -const SV_ERRORALERT_PARMNUM=38; -const SV_LOGONALERT_PARMNUM=39; -const SV_ACCESSALERT_PARMNUM=40; -const SV_DISKALERT_PARMNUM=41; -const SV_NETIOALERT_PARMNUM=42; -const SV_MAXAUDITSZ_PARMNUM=43; -const SV_SRVHEURISTICS_PARMNUM=431; -const SV_SESSOPENS_PARMNUM=501; -const SV_SESSVCS_PARMNUM=502; -const SV_OPENSEARCH_PARMNUM=503; -const SV_SIZREQBUF_PARMNUM=504; -const SV_INITWORKITEMS_PARMNUM=505; -const SV_MAXWORKITEMS_PARMNUM=506; -const SV_RAWWORKITEMS_PARMNUM=507; -const SV_IRPSTACKSIZE_PARMNUM=508; -const SV_MAXRAWBUFLEN_PARMNUM=509; -const SV_SESSUSERS_PARMNUM=510; -const SV_SESSCONNS_PARMNUM=511; -const SV_MAXNONPAGEDMEMORYUSAGE_PARMNUM=512; -const SV_MAXPAGEDMEMORYUSAGE_PARMNUM=513; -const SV_ENABLESOFTCOMPAT_PARMNUM=514; -const SV_ENABLEFORCEDLOGOFF_PARMNUM=515; -const SV_TIMESOURCE_PARMNUM=516; -const SV_ACCEPTDOWNLEVELAPIS_PARMNUM=517; -const SV_LMANNOUNCE_PARMNUM=518; -const SV_DOMAIN_PARMNUM=519; -const SV_MAXCOPYREADLEN_PARMNUM=520; -const SV_MAXCOPYWRITELEN_PARMNUM=521; -const SV_MINKEEPSEARCH_PARMNUM=522; -const SV_MAXKEEPSEARCH_PARMNUM=523; -const SV_MINKEEPCOMPLSEARCH_PARMNUM=524; -const SV_MAXKEEPCOMPLSEARCH_PARMNUM=525; -const SV_THREADCOUNTADD_PARMNUM=526; -const SV_NUMBLOCKTHREADS_PARMNUM=527; -const SV_SCAVTIMEOUT_PARMNUM=528; -const SV_MINRCVQUEUE_PARMNUM=529; -const SV_MINFREEWORKITEMS_PARMNUM=530; -const SV_XACTMEMSIZE_PARMNUM=531; -const SV_THREADPRIORITY_PARMNUM=532; -const SV_MAXMPXCT_PARMNUM=533; -const SV_OPLOCKBREAKWAIT_PARMNUM=534; -const SV_OPLOCKBREAKRESPONSEWAIT_PARMNUM=535; -const SV_ENABLEOPLOCKS_PARMNUM=536; -const SV_ENABLEOPLOCKFORCECLOSE_PARMNUM=537; -const SV_ENABLEFCBOPENS_PARMNUM=538; -const SV_ENABLERAW_PARMNUM=539; -const SV_ENABLESHAREDNETDRIVES_PARMNUM=540; -const SV_MINFREECONNECTIONS_PARMNUM=541; -const SV_MAXFREECONNECTIONS_PARMNUM=542; -const SV_INITSESSTABLE_PARMNUM=543; -const SV_INITCONNTABLE_PARMNUM=544; -const SV_INITFILETABLE_PARMNUM=545; -const SV_INITSEARCHTABLE_PARMNUM=546; -const SV_ALERTSCHEDULE_PARMNUM=547; -const SV_ERRORTHRESHOLD_PARMNUM=548; -const SV_NETWORKERRORTHRESHOLD_PARMNUM=549; -const SV_DISKSPACETHRESHOLD_PARMNUM=550; -const SV_MAXLINKDELAY_PARMNUM=552; -const SV_MINLINKTHROUGHPUT_PARMNUM=553; -const SV_LINKINFOVALIDTIME_PARMNUM=554; -const SV_SCAVQOSINFOUPDATETIME_PARMNUM=555; -const SV_MAXWORKITEMIDLETIME_PARMNUM=556; -const SV_MAXRAWWORKITEMS_PARMNUM=557; -const SV_PRODUCTTYPE_PARMNUM=560; -const SV_SERVERSIZE_PARMNUM=561; -const SV_CONNECTIONLESSAUTODISC_PARMNUM=562; -const SV_SHARINGVIOLATIONRETRIES_PARMNUM=563; -const SV_SHARINGVIOLATIONDELAY_PARMNUM=564; -const SV_MAXGLOBALOPENSEARCH_PARMNUM=565; -const SV_REMOVEDUPLICATESEARCHES_PARMNUM=566; -const SV_LOCKVIOLATIONRETRIES_PARMNUM=567; -const SV_LOCKVIOLATIONOFFSET_PARMNUM=568; -const SV_LOCKVIOLATIONDELAY_PARMNUM=569; -const SV_MDLREADSWITCHOVER_PARMNUM=570; -const SV_CACHEDOPENLIMIT_PARMNUM=571; -const SV_CRITICALTHREADS_PARMNUM=572; -const SV_RESTRICTNULLSESSACCESS_PARMNUM=573; -const SV_ENABLEWFW311DIRECTIPX_PARMNUM=574; -const SV_OTHERQUEUEAFFINITY_PARMNUM=575; -const SV_QUEUESAMPLESECS_PARMNUM=576; -const SV_BALANCECOUNT_PARMNUM=577; -const SV_PREFERREDAFFINITY_PARMNUM=578; -const SV_MAXFREERFCBS_PARMNUM=579; -const SV_MAXFREEMFCBS_PARMNUM=580; -const SV_MAXFREELFCBS_PARMNUM=581; -const SV_MAXFREEPAGEDPOOLCHUNKS_PARMNUM=582; -const SV_MINPAGEDPOOLCHUNKSIZE_PARMNUM=583; -const SV_MAXPAGEDPOOLCHUNKSIZE_PARMNUM=584; -const SV_SENDSFROMPREFERREDPROCESSOR_PARMNUM=585; -const SV_MAXTHREADSPERQUEUE_PARMNUM=586; -const SV_COMMENT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_COMMENT_PARMNUM); -const SV_USERS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_USERS_PARMNUM); -const SV_DISC_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_DISC_PARMNUM); -const SV_HIDDEN_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_HIDDEN_PARMNUM); -const SV_ANNOUNCE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ANNOUNCE_PARMNUM); -const SV_ANNDELTA_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ANNDELTA_PARMNUM); -const SV_SESSOPENS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SESSOPENS_PARMNUM); -const SV_SESSVCS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SESSVCS_PARMNUM); -const SV_OPENSEARCH_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_OPENSEARCH_PARMNUM); -const SV_MAXWORKITEMS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXWORKITEMS_PARMNUM); -const SV_MAXRAWBUFLEN_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXRAWBUFLEN_PARMNUM); -const SV_SESSUSERS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SESSUSERS_PARMNUM); -const SV_SESSCONNS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SESSCONNS_PARMNUM); -const SV_MAXNONPAGEDMEMORYUSAGE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXNONPAGEDMEMORYUSAGE_PARMNUM); -const SV_MAXPAGEDMEMORYUSAGE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXPAGEDMEMORYUSAGE_PARMNUM); -const SV_ENABLESOFTCOMPAT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLESOFTCOMPAT_PARMNUM); -const SV_ENABLEFORCEDLOGOFF_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLEFORCEDLOGOFF_PARMNUM); -const SV_TIMESOURCE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_TIMESOURCE_PARMNUM); -const SV_LMANNOUNCE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_LMANNOUNCE_PARMNUM); -const SV_MAXCOPYREADLEN_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXCOPYREADLEN_PARMNUM); -const SV_MAXCOPYWRITELEN_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXCOPYWRITELEN_PARMNUM); -const SV_MINKEEPSEARCH_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINKEEPSEARCH_PARMNUM); -const SV_MAXKEEPSEARCH_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXKEEPSEARCH_PARMNUM); -const SV_MINKEEPCOMPLSEARCH_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINKEEPCOMPLSEARCH_PARMNUM); -const SV_MAXKEEPCOMPLSEARCH_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXKEEPCOMPLSEARCH_PARMNUM); -const SV_SCAVTIMEOUT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SCAVTIMEOUT_PARMNUM); -const SV_MINRCVQUEUE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINRCVQUEUE_PARMNUM); -const SV_MINFREEWORKITEMS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINFREEWORKITEMS_PARMNUM); -const SV_MAXMPXCT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXMPXCT_PARMNUM); -const SV_OPLOCKBREAKWAIT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_OPLOCKBREAKWAIT_PARMNUM); -const SV_OPLOCKBREAKRESPONSEWAIT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_OPLOCKBREAKRESPONSEWAIT_PARMNUM); -const SV_ENABLEOPLOCKS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLEOPLOCKS_PARMNUM); -const SV_ENABLEOPLOCKFORCECLOSE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLEOPLOCKFORCECLOSE_PARMNUM); -const SV_ENABLEFCBOPENS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLEFCBOPENS_PARMNUM); -const SV_ENABLERAW_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLERAW_PARMNUM); -const SV_ENABLESHAREDNETDRIVES_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLESHAREDNETDRIVES_PARMNUM); -const SV_MINFREECONNECTIONS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINFREECONNECTIONS_PARMNUM); -const SV_MAXFREECONNECTIONS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXFREECONNECTIONS_PARMNUM); -const SV_INITSESSTABLE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_INITSESSTABLE_PARMNUM); -const SV_INITCONNTABLE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_INITCONNTABLE_PARMNUM); -const SV_INITFILETABLE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_INITFILETABLE_PARMNUM); -const SV_INITSEARCHTABLE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_INITSEARCHTABLE_PARMNUM); -const SV_ALERTSCHEDULE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ALERTSCHEDULE_PARMNUM); -const SV_ERRORTHRESHOLD_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ERRORTHRESHOLD_PARMNUM); -const SV_NETWORKERRORTHRESHOLD_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_NETWORKERRORTHRESHOLD_PARMNUM); -const SV_DISKSPACETHRESHOLD_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_DISKSPACETHRESHOLD_PARMNUM); -const SV_MAXLINKDELAY_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXLINKDELAY_PARMNUM); -const SV_MINLINKTHROUGHPUT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINLINKTHROUGHPUT_PARMNUM); -const SV_LINKINFOVALIDTIME_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_LINKINFOVALIDTIME_PARMNUM); -const SV_SCAVQOSINFOUPDATETIME_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SCAVQOSINFOUPDATETIME_PARMNUM); -const SV_MAXWORKITEMIDLETIME_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXWORKITEMIDLETIME_PARMNUM); -const SV_MAXRAWWORKITEMS_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXRAWWORKITEMS_PARMNUM); -const SV_PRODUCTTYPE_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_PRODUCTTYPE_PARMNUM); -const SV_SERVERSIZE_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SERVERSIZE_PARMNUM); -const SV_CONNECTIONLESSAUTODISC_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_CONNECTIONLESSAUTODISC_PARMNUM); -const SV_SHARINGVIOLATIONRETRIES_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SHARINGVIOLATIONRETRIES_PARMNUM); -const SV_SHARINGVIOLATIONDELAY_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SHARINGVIOLATIONDELAY_PARMNUM); -const SV_MAXGLOBALOPENSEARCH_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXGLOBALOPENSEARCH_PARMNUM); -const SV_REMOVEDUPLICATESEARCHES_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_REMOVEDUPLICATESEARCHES_PARMNUM); -const SV_LOCKVIOLATIONRETRIES_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_LOCKVIOLATIONRETRIES_PARMNUM); -const SV_LOCKVIOLATIONOFFSET_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_LOCKVIOLATIONOFFSET_PARMNUM); -const SV_LOCKVIOLATIONDELAY_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_LOCKVIOLATIONDELAY_PARMNUM); -const SV_MDLREADSWITCHOVER_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MDLREADSWITCHOVER_PARMNUM); -const SV_CACHEDOPENLIMIT_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_CACHEDOPENLIMIT_PARMNUM); -const SV_CRITICALTHREADS_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_CRITICALTHREADS_PARMNUM); -const SV_RESTRICTNULLSESSACCESS_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_RESTRICTNULLSESSACCESS_PARMNUM); -const SV_ENABLEWFW311DIRECTIPX_INFOLOEVEL=(PARMNUM_BASE_INFOLEVEL+SV_ENABLEWFW311DIRECTIPX_PARMNUM); -const SV_OTHERQUEUEAFFINITY_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_OTHERQUEUEAFFINITY_PARMNUM); -const SV_QUEUESAMPLESECS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_QUEUESAMPLESECS_PARMNUM); -const SV_BALANCECOUNT_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_BALANCECOUNT_PARMNUM); -const SV_PREFERREDAFFINITY_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_PREFERREDAFFINITY_PARMNUM); -const SV_MAXFREERFCBS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXFREERFCBS_PARMNUM); -const SV_MAXFREEMFCBS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXFREEMFCBS_PARMNUM); -const SV_MAXFREELFCBS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXFREELFCBS_PARMNUM); -const SV_MAXFREEPAGEDPOOLCHUNKS_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXFREEPAGEDPOOLCHUNKS_PARMNUM); -const SV_MINPAGEDPOOLCHUNKSIZE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MINPAGEDPOOLCHUNKSIZE_PARMNUM); -const SV_MAXPAGEDPOOLCHUNKSIZE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXPAGEDPOOLCHUNKSIZE_PARMNUM); -const SV_SENDSFROMPREFERREDPROCESSOR_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_SENDSFROMPREFERREDPROCESSOR_PARMNUM); -const SV_MAXTHREADSPERQUEUE_INFOLEVEL=(PARMNUM_BASE_INFOLEVEL+SV_MAXTHREADSPERQUEUE_PARMNUM); diff --git a/3rdparty-extra/win32/lmshare.d b/3rdparty-extra/win32/lmshare.d deleted file mode 100644 index 5edaf4d30..000000000 --- a/3rdparty-extra/win32/lmshare.d +++ /dev/null @@ -1,198 +0,0 @@ -/***********************************************************************\ -* lmshare.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmshare; -version(Windows): -pragma(lib, "netapi"); - -import win32.lmcons; -private import win32.w32api, win32.windef; - - -const SHARE_NETNAME_PARMNUM = 1; -const SHARE_TYPE_PARMNUM = 3; -const SHARE_REMARK_PARMNUM = 4; -const SHARE_PERMISSIONS_PARMNUM = 5; -const SHARE_MAX_USES_PARMNUM = 6; -const SHARE_CURRENT_USES_PARMNUM = 7; -const SHARE_PATH_PARMNUM = 8; -const SHARE_PASSWD_PARMNUM = 9; -const SHARE_FILE_SD_PARMNUM = 501; -const SHARE_REMARK_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + SHARE_REMARK_PARMNUM; -const SHARE_MAX_USES_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + SHARE_MAX_USES_PARMNUM; -const SHARE_FILE_SD_INFOLEVEL = PARMNUM_BASE_INFOLEVEL + SHARE_FILE_SD_PARMNUM; - -const SHI1_NUM_ELEMENTS = 4; -const SHI2_NUM_ELEMENTS = 10; - -const STYPE_DISKTREE = 0; -const STYPE_PRINTQ = 1; -const STYPE_DEVICE = 2; -const STYPE_IPC = 3; -const STYPE_DFS = 100; -const STYPE_SPECIAL = 0x80000000; - -const DWORD SHI_USES_UNLIMITED = -1; - -const SESS_GUEST = 1; -const SESS_NOENCRYPTION = 2; -const SESI1_NUM_ELEMENTS = 8; -const SESI2_NUM_ELEMENTS = 9; - -const PERM_FILE_READ = 1; -const PERM_FILE_WRITE = 2; -const PERM_FILE_CREATE = 4; - -struct FILE_INFO_2 { - DWORD fi2_id; -} -alias FILE_INFO_2* PFILE_INFO_2, LPFILE_INFO_2; - -struct FILE_INFO_3 { - DWORD fi3_id; - DWORD fi3_permissions; - DWORD fi3_num_locks; - LPTSTR fi3_pathname; - LPTSTR fi3_username; -} -alias FILE_INFO_3* PFILE_INFO_3, LPFILE_INFO_3; - -struct SHARE_INFO_0 { - LPTSTR shi0_netname; -} -alias SHARE_INFO_0* PSHARE_INFO_0, LPSHARE_INFO_0; - -struct SHARE_INFO_1 { - LPTSTR shi1_netname; - DWORD shi1_type; - LPTSTR shi1_remark; -} -alias SHARE_INFO_1* PSHARE_INFO_1, LPSHARE_INFO_1; - -struct SHARE_INFO_2 { - LPTSTR shi2_netname; - DWORD shi2_type; - LPTSTR shi2_remark; - DWORD shi2_permissions; - DWORD shi2_max_uses; - DWORD shi2_current_uses; - LPTSTR shi2_path; - LPTSTR shi2_passwd; -} -alias SHARE_INFO_2* PSHARE_INFO_2, LPSHARE_INFO_2; - -struct SHARE_INFO_502 { - LPTSTR shi502_netname; - DWORD shi502_type; - LPTSTR shi502_remark; - DWORD shi502_permissions; - DWORD shi502_max_uses; - DWORD shi502_current_uses; - LPTSTR shi502_path; - LPTSTR shi502_passwd; - DWORD shi502_reserved; - PSECURITY_DESCRIPTOR shi502_security_descriptor; -} -alias SHARE_INFO_502* PSHARE_INFO_502, LPSHARE_INFO_502; - -struct SHARE_INFO_1004 { - LPTSTR shi1004_remark; -} -alias SHARE_INFO_1004* PSHARE_INFO_1004, LPSHARE_INFO_1004; - -struct SHARE_INFO_1006 { - DWORD shi1006_max_uses; -} -alias SHARE_INFO_1006* PSHARE_INFO_1006, LPSHARE_INFO_1006; - -struct SHARE_INFO_1501 { - DWORD shi1501_reserved; - PSECURITY_DESCRIPTOR shi1501_security_descriptor; -} -alias SHARE_INFO_1501* PSHARE_INFO_1501, LPSHARE_INFO_1501; - -struct SESSION_INFO_0 { - LPWSTR sesi0_cname; -} -alias SESSION_INFO_0* PSESSION_INFO_0, LPSESSION_INFO_0; - -struct SESSION_INFO_1 { - LPTSTR sesi1_cname; - LPTSTR sesi1_username; - DWORD sesi1_num_opens; - DWORD sesi1_time; - DWORD sesi1_idle_time; - DWORD sesi1_user_flags; -} -alias SESSION_INFO_1* PSESSION_INFO_1, LPSESSION_INFO_1; - -struct SESSION_INFO_2 { - LPTSTR sesi2_cname; - LPTSTR sesi2_username; - DWORD sesi2_num_opens; - DWORD sesi2_time; - DWORD sesi2_idle_time; - DWORD sesi2_user_flags; - LPWSTR sesi2_cltype_name; -} -alias SESSION_INFO_2* PSESSION_INFO_2, LPSESSION_INFO_2; - -struct SESSION_INFO_10 { - LPWSTR sesi10_cname; - LPWSTR sesi10_username; - DWORD sesi10_time; - DWORD sesi10_idle_time; -} -alias SESSION_INFO_10* PSESSION_INFO_10, LPSESSION_INFO_10; - -struct SESSION_INFO_502 { - LPWSTR sesi502_cname; - LPWSTR sesi502_username; - DWORD sesi502_num_opens; - DWORD sesi502_time; - DWORD sesi502_idle_time; - DWORD sesi502_user_flags; - LPWSTR sesi502_cltype_name; - LPWSTR sesi502_transport; -} -alias SESSION_INFO_502* PSESSION_INFO_502, LPSESSION_INFO_502; - -struct CONNECTION_INFO_0 { - DWORD coni0_id; -} -alias CONNECTION_INFO_0* PCONNECTION_INFO_0, LPCONNECTION_INFO_0; - -struct CONNECTION_INFO_1 { - DWORD coni1_id; - DWORD coni1_type; - DWORD coni1_num_opens; - DWORD coni1_num_users; - DWORD coni1_time; - LPWSTR coni1_username; - LPWSTR coni1_netname; -} -alias CONNECTION_INFO_1* PCONNECTION_INFO_1, LPCONNECTION_INFO_1; - -extern (Windows) { -NET_API_STATUS NetShareAdd(LPWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetShareEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetShareEnumSticky(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD resume_handle); -NET_API_STATUS NetShareGetInfo(LPWSTR,LPWSTR,DWORD,PBYTE*); -NET_API_STATUS NetShareSetInfo(LPWSTR,LPWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetShareDel(LPWSTR,LPWSTR,DWORD); -NET_API_STATUS NetShareDelSticky(LPWSTR,LPWSTR,DWORD); -NET_API_STATUS NetShareCheck(LPWSTR,LPWSTR,PDWORD); -NET_API_STATUS NetSessionEnum(LPWSTR,LPWSTR,LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetSessionDel(LPWSTR,LPWSTR,LPWSTR); -NET_API_STATUS NetSessionGetInfo(LPWSTR,LPWSTR,LPWSTR,DWORD,PBYTE*); -NET_API_STATUS NetConnectionEnum(LPWSTR,LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetFileClose(LPWSTR,DWORD); -NET_API_STATUS NetFileEnum(LPWSTR,LPWSTR,LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetFileGetInfo(LPWSTR,DWORD,DWORD,PBYTE*); -} \ No newline at end of file diff --git a/3rdparty-extra/win32/lmsname.d b/3rdparty-extra/win32/lmsname.d deleted file mode 100644 index b79b55104..000000000 --- a/3rdparty-extra/win32/lmsname.d +++ /dev/null @@ -1,66 +0,0 @@ -/***********************************************************************\ -* lmsname.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmsname; -version(Windows): - -private import win32.windef; - -const TCHAR[] - SERVICE_WORKSTATION = "LanmanWorkstation", - SERVICE_LM20_WORKSTATION = "WORKSTATION", - WORKSTATION_DISPLAY_NAME = "Workstation", - SERVICE_SERVER = "LanmanServer", - SERVICE_LM20_SERVER = "SERVER", - SERVER_DISPLAY_NAME = "Server", - SERVICE_BROWSER = "BROWSER", - SERVICE_LM20_BROWSER = SERVICE_BROWSER, - SERVICE_MESSENGER = "MESSENGER", - SERVICE_LM20_MESSENGER = SERVICE_MESSENGER, - SERVICE_NETRUN = "NETRUN", - SERVICE_LM20_NETRUN = SERVICE_NETRUN, - SERVICE_SPOOLER = "SPOOLER", - SERVICE_LM20_SPOOLER = SERVICE_SPOOLER, - SERVICE_ALERTER = "ALERTER", - SERVICE_LM20_ALERTER = SERVICE_ALERTER, - SERVICE_NETLOGON = "NETLOGON", - SERVICE_LM20_NETLOGON = SERVICE_NETLOGON, - SERVICE_NETPOPUP = "NETPOPUP", - SERVICE_LM20_NETPOPUP = SERVICE_NETPOPUP, - SERVICE_SQLSERVER = "SQLSERVER", - SERVICE_LM20_SQLSERVER = SERVICE_SQLSERVER, - SERVICE_REPL = "REPLICATOR", - SERVICE_LM20_REPL = SERVICE_REPL, - SERVICE_RIPL = "REMOTEBOOT", - SERVICE_LM20_RIPL = SERVICE_RIPL, - SERVICE_TIMESOURCE = "TIMESOURCE", - SERVICE_LM20_TIMESOURCE = SERVICE_TIMESOURCE, - SERVICE_AFP = "AFP", - SERVICE_LM20_AFP = SERVICE_AFP, - SERVICE_UPS = "UPS", - SERVICE_LM20_UPS = SERVICE_UPS, - SERVICE_XACTSRV = "XACTSRV", - SERVICE_LM20_XACTSRV = SERVICE_XACTSRV, - SERVICE_TCPIP = "TCPIP", - SERVICE_LM20_TCPIP = SERVICE_TCPIP, - SERVICE_NBT = "NBT", - SERVICE_LM20_NBT = SERVICE_NBT, - SERVICE_LMHOSTS = "LMHOSTS", - SERVICE_LM20_LMHOSTS = SERVICE_LMHOSTS, - SERVICE_TELNET = "Telnet", - SERVICE_LM20_TELNET = SERVICE_TELNET, - SERVICE_SCHEDULE = "Schedule", - SERVICE_LM20_SCHEDULE = SERVICE_SCHEDULE, - SERVICE_NTLMSSP = "NtLmSsp", - SERVICE_DHCP = "DHCP", - SERVICE_LM20_DHCP = SERVICE_DHCP, - SERVICE_NWSAP = "NwSapAgent", - SERVICE_LM20_NWSAP = SERVICE_NWSAP, - NWSAP_DISPLAY_NAME = "NW Sap Agent", - SERVICE_NWCS = "NWCWorkstation"; diff --git a/3rdparty-extra/win32/lmstats.d b/3rdparty-extra/win32/lmstats.d deleted file mode 100644 index 961a40b4c..000000000 --- a/3rdparty-extra/win32/lmstats.d +++ /dev/null @@ -1,122 +0,0 @@ -/***********************************************************************\ -* lmstats.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmstats; -version(Windows): -pragma(lib, "netapi32"); - -private import win32.lmcons, win32.windef; - -const ULONG - STATSOPT_CLR = 1, - STATS_NO_VALUE = -1, - STATS_OVERFLOW = -2; - -struct STAT_SERVER_0{ - DWORD sts0_start; - DWORD sts0_fopens; - DWORD sts0_devopens; - DWORD sts0_jobsqueued; - DWORD sts0_sopens; - DWORD sts0_stimedout; - DWORD sts0_serrorout; - DWORD sts0_pwerrors; - DWORD sts0_permerrors; - DWORD sts0_syserrors; - DWORD sts0_bytessent_low; - DWORD sts0_bytessent_high; - DWORD sts0_bytesrcvd_low; - DWORD sts0_bytesrcvd_high; - DWORD sts0_avresponse; - DWORD sts0_reqbufneed; - DWORD sts0_bigbufneed; -} -alias STAT_SERVER_0* PSTAT_SERVER_0, LPSTAT_SERVER_0; - -// #ifdef LM20_WORKSTATION_STATISTICS -// typedef struct _STAT_WORKSTATION_0 { -// DWORD stw0_start; -// DWORD stw0_numNCB_r; -// DWORD stw0_numNCB_s; -// DWORD stw0_numNCB_a; -// DWORD stw0_fiNCB_r; -// DWORD stw0_fiNCB_s; -// DWORD stw0_fiNCB_a; -// DWORD stw0_fcNCB_r; -// DWORD stw0_fcNCB_s; -// DWORD stw0_fcNCB_a; -// DWORD stw0_sesstart; -// DWORD stw0_sessfailcon; -// DWORD stw0_sessbroke; -// DWORD stw0_uses; -// DWORD stw0_usefail; -// DWORD stw0_autorec; -// DWORD stw0_bytessent_r_lo; -// DWORD stw0_bytessent_r_hi; -// DWORD stw0_bytesrcvd_r_lo; -// DWORD stw0_bytesrcvd_r_hi; -// DWORD stw0_bytessent_s_lo; -// DWORD stw0_bytessent_s_hi; -// DWORD stw0_bytesrcvd_s_lo; -// DWORD stw0_bytesrcvd_s_hi; -// DWORD stw0_bytessent_a_lo; -// DWORD stw0_bytessent_a_hi; -// DWORD stw0_bytesrcvd_a_lo; -// DWORD stw0_bytesrcvd_a_hi; -// DWORD stw0_reqbufneed; -// DWORD stw0_bigbufneed; -// } STAT_WORKSTATION_0,*PSTAT_WORKSTATION_0,*LPSTAT_WORKSTATION_0; -// #else - -struct STAT_WORKSTATION_0{ - LARGE_INTEGER StatisticsStartTime; - LARGE_INTEGER BytesReceived; - LARGE_INTEGER SmbsReceived; - LARGE_INTEGER PagingReadBytesRequested; - LARGE_INTEGER NonPagingReadBytesRequested; - LARGE_INTEGER CacheReadBytesRequested; - LARGE_INTEGER NetworkReadBytesRequested; - LARGE_INTEGER BytesTransmitted; - LARGE_INTEGER SmbsTransmitted; - LARGE_INTEGER PagingWriteBytesRequested; - LARGE_INTEGER NonPagingWriteBytesRequested; - LARGE_INTEGER CacheWriteBytesRequested; - LARGE_INTEGER NetworkWriteBytesRequested; - DWORD InitiallyFailedOperations; - DWORD FailedCompletionOperations; - DWORD ReadOperations; - DWORD RandomReadOperations; - DWORD ReadSmbs; - DWORD LargeReadSmbs; - DWORD SmallReadSmbs; - DWORD WriteOperations; - DWORD RandomWriteOperations; - DWORD WriteSmbs; - DWORD LargeWriteSmbs; - DWORD SmallWriteSmbs; - DWORD RawReadsDenied; - DWORD RawWritesDenied; - DWORD NetworkErrors; - DWORD Sessions; - DWORD FailedSessions; - DWORD Reconnects; - DWORD CoreConnects; - DWORD Lanman20Connects; - DWORD Lanman21Connects; - DWORD LanmanNtConnects; - DWORD ServerDisconnects; - DWORD HungSessions; - DWORD UseCount; - DWORD FailedUseCount; - DWORD CurrentCommands; -} -alias STAT_WORKSTATION_0* PSTAT_WORKSTATION_0, LPSTAT_WORKSTATION_0; - -extern (Windows): -NET_API_STATUS NetStatisticsGet(LPWSTR,LPWSTR,DWORD,DWORD,PBYTE*); diff --git a/3rdparty-extra/win32/lmsvc.d b/3rdparty-extra/win32/lmsvc.d deleted file mode 100644 index 88fa4eb84..000000000 --- a/3rdparty-extra/win32/lmsvc.d +++ /dev/null @@ -1,157 +0,0 @@ -/***********************************************************************\ -* lmsvc.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmsvc; -version(Windows): - -// FIXME: Is this file deprecated? All of the functions are only for Win16. -/** - Changes relative to MinGW: - lmsname is not imported publicly (instead, win32.lm imports it directly). -*/ -// TODO: 5 macros - -private import win32.lmcons, win32.lmsname, win32.windef; - -const TCHAR[] SERVICE_DOS_ENCRYPTION = "ENCRYPT"; - -const SERVICE_UNINSTALLED=0; -const SERVICE_INSTALL_PENDING=1; -const SERVICE_UNINSTALL_PENDING=2; -const SERVICE_INSTALLED=3; -const SERVICE_INSTALL_STATE=3; -const SERVICE_PAUSE_STATE=18; -const LM20_SERVICE_ACTIVE=0; -const LM20_SERVICE_CONTINUE_PENDING=4; -const LM20_SERVICE_PAUSE_PENDING=8; -const LM20_SERVICE_PAUSED=18; -const SERVICE_NOT_UNINSTALLABLE=0; -const SERVICE_UNINSTALLABLE=16; -const SERVICE_NOT_PAUSABLE=0; -const SERVICE_PAUSABLE=32; -const SERVICE_REDIR_PAUSED=0x700; -const SERVICE_REDIR_DISK_PAUSED=256; -const SERVICE_REDIR_PRINT_PAUSED=512; -const SERVICE_REDIR_COMM_PAUSED=1024; -const SERVICE_CTRL_INTERROGATE=0; -const SERVICE_CTRL_PAUSE=1; -const SERVICE_CTRL_CONTINUE=2; -const SERVICE_CTRL_UNINSTALL=3; -const SERVICE_CTRL_REDIR_DISK=1; -const SERVICE_CTRL_REDIR_PRINT=2; -const SERVICE_CTRL_REDIR_COMM=4; -const SERVICE_IP_NO_HINT=0; -const SERVICE_CCP_NO_HINT=0; -const SERVICE_IP_QUERY_HINT=0x10000; -const SERVICE_CCP_QUERY_HINT=0x10000; -const SERVICE_IP_CHKPT_NUM=255; -const SERVICE_CCP_CHKPT_NUM=255; -const SERVICE_IP_WAIT_TIME=0xFF00; -const SERVICE_CCP_WAIT_TIME=0xFF00; -const SERVICE_IP_WAITTIME_SHIFT=8; -const SERVICE_NTIP_WAITTIME_SHIFT=12; -const UPPER_HINT_MASK=0xFF00; -const LOWER_HINT_MASK=255; -const UPPER_GET_HINT_MASK=0xFF00000; -const LOWER_GET_HINT_MASK=0xFF00; -const SERVICE_NT_MAXTIME=0xFFFF; -const SERVICE_RESRV_MASK=0x1FFFF; -const SERVICE_MAXTIME=255; -const SERVICE_BASE=3050; -const SERVICE_UIC_NORMAL=0; - -const SERVICE_UIC_BADPARMVAL = SERVICE_BASE+1; -const SERVICE_UIC_MISSPARM = SERVICE_BASE+2; -const SERVICE_UIC_UNKPARM = SERVICE_BASE+3; -const SERVICE_UIC_RESOURCE = SERVICE_BASE+4; -const SERVICE_UIC_CONFIG = SERVICE_BASE+5; -const SERVICE_UIC_SYSTEM = SERVICE_BASE+6; -const SERVICE_UIC_INTERNAL = SERVICE_BASE+7; -const SERVICE_UIC_AMBIGPARM = SERVICE_BASE+8; -const SERVICE_UIC_DUPPARM = SERVICE_BASE+9; -const SERVICE_UIC_KILL = SERVICE_BASE+10; -const SERVICE_UIC_EXEC = SERVICE_BASE+11; -const SERVICE_UIC_SUBSERV = SERVICE_BASE+12; -const SERVICE_UIC_CONFLPARM = SERVICE_BASE+13; -const SERVICE_UIC_FILE = SERVICE_BASE+14; -const SERVICE_UIC_M_NULL=0; -const SERVICE_UIC_M_MEMORY = SERVICE_BASE+20; -const SERVICE_UIC_M_DISK = SERVICE_BASE+21; -const SERVICE_UIC_M_THREADS = SERVICE_BASE+22; -const SERVICE_UIC_M_PROCESSES = SERVICE_BASE+23; -const SERVICE_UIC_M_SECURITY = SERVICE_BASE+24; -const SERVICE_UIC_M_LANROOT = SERVICE_BASE+25; -const SERVICE_UIC_M_REDIR = SERVICE_BASE+26; -const SERVICE_UIC_M_SERVER = SERVICE_BASE+27; -const SERVICE_UIC_M_SEC_FILE_ERR = SERVICE_BASE+28; -const SERVICE_UIC_M_FILES = SERVICE_BASE+29; -const SERVICE_UIC_M_LOGS = SERVICE_BASE+30; -const SERVICE_UIC_M_LANGROUP = SERVICE_BASE+31; -const SERVICE_UIC_M_MSGNAME = SERVICE_BASE+32; -const SERVICE_UIC_M_ANNOUNCE = SERVICE_BASE+33; -const SERVICE_UIC_M_UAS = SERVICE_BASE+34; -const SERVICE_UIC_M_SERVER_SEC_ERR = SERVICE_BASE+35; -const SERVICE_UIC_M_WKSTA = SERVICE_BASE+37; -const SERVICE_UIC_M_ERRLOG = SERVICE_BASE+38; -const SERVICE_UIC_M_FILE_UW = SERVICE_BASE+39; -const SERVICE_UIC_M_ADDPAK = SERVICE_BASE+40; -const SERVICE_UIC_M_LAZY = SERVICE_BASE+41; -const SERVICE_UIC_M_UAS_MACHINE_ACCT = SERVICE_BASE+42; -const SERVICE_UIC_M_UAS_SERVERS_NMEMB = SERVICE_BASE+43; -const SERVICE_UIC_M_UAS_SERVERS_NOGRP = SERVICE_BASE+44; -const SERVICE_UIC_M_UAS_INVALID_ROLE = SERVICE_BASE+45; -const SERVICE_UIC_M_NETLOGON_NO_DC = SERVICE_BASE+46; -const SERVICE_UIC_M_NETLOGON_DC_CFLCT = SERVICE_BASE+47; -const SERVICE_UIC_M_NETLOGON_AUTH = SERVICE_BASE+48; -const SERVICE_UIC_M_UAS_PROLOG = SERVICE_BASE+49; -const SERVICE2_BASE=5600; -const SERVICE_UIC_M_NETLOGON_MPATH = SERVICE2_BASE+0; -const SERVICE_UIC_M_LSA_MACHINE_ACCT = SERVICE2_BASE+1; -const SERVICE_UIC_M_DATABASE_ERROR = SERVICE2_BASE+2; - -struct SERVICE_INFO_0 { - LPWSTR svci0_name; -} -alias SERVICE_INFO_0* PSERVICE_INFO_0, LPSERVICE_INFO_0; - -struct SERVICE_INFO_1 { - LPWSTR svci1_name; - DWORD svci1_status; - DWORD svci1_code; - DWORD svci1_pid; -} -alias SERVICE_INFO_1* PSERVICE_INFO_1, LPSERVICE_INFO_1; - -struct SERVICE_INFO_2 { - LPWSTR svci2_name; - DWORD svci2_status; - DWORD svci2_code; - DWORD svci2_pid; - LPWSTR svci2_text; - DWORD svci2_specific_error; - LPWSTR svci2_display_name; -} -alias SERVICE_INFO_2* PSERVICE_INFO_2, LPSERVICE_INFO_2; - -extern (Windows) { - deprecated { - NET_API_STATUS NetServiceControl(LPCWSTR, LPCWSTR, DWORD, DWORD, - PBYTE*); - NET_API_STATUS NetServiceEnum(LPCWSTR, DWORD, PBYTE*, DWORD, PDWORD, - PDWORD, PDWORD); - NET_API_STATUS NetServiceGetInfo(LPCWSTR, LPCWSTR, DWORD, PBYTE*); - NET_API_STATUS NetServiceInstall(LPCWSTR, LPCWSTR, DWORD, LPCWSTR*, - PBYTE*); - } -} -//MACRO #define SERVICE_IP_CODE(t, n) ((long)SERVICE_IP_QUERY_HINT|(long)(n|(t<>SERVICE_NTIP_WAITTIME_SHIFT)|(((c)&LOWER_GET_HINT_MASK)>>SERVICE_IP_WAITTIME_SHIFT)) diff --git a/3rdparty-extra/win32/lmuse.d b/3rdparty-extra/win32/lmuse.d deleted file mode 100644 index 5aa97728a..000000000 --- a/3rdparty-extra/win32/lmuse.d +++ /dev/null @@ -1,81 +0,0 @@ -/***********************************************************************\ -* lmuse.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmuse; -version(Windows): -pragma(lib, "netapi32"); - -import win32.lmuseflg; -private import win32.lmcons, win32.windef; - -enum { - USE_LOCAL_PARMNUM = 1, - USE_REMOTE_PARMNUM, - USE_PASSWORD_PARMNUM, - USE_ASGTYPE_PARMNUM, - USE_USERNAME_PARMNUM, - USE_DOMAINNAME_PARMNUM -} - -enum { - USE_OK, - USE_PAUSED, - USE_SESSLOST, - USE_DISCONN = USE_SESSLOST, - USE_NETERR, - USE_CONN, - USE_RECONN -} - -const DWORD USE_WILDCARD = -1; - -enum { - USE_DISKDEV, - USE_SPOOLDEV, - USE_CHARDEV, - USE_IPC -} - -struct USE_INFO_0 { - LPWSTR ui0_local; - LPWSTR ui0_remote; -} -alias USE_INFO_0* PUSE_INFO_0, LPUSE_INFO_0; - -struct USE_INFO_1 { - LPWSTR ui1_local; - LPWSTR ui1_remote; - LPWSTR ui1_password; - DWORD ui1_status; - DWORD ui1_asg_type; - DWORD ui1_refcount; - DWORD ui1_usecount; -} -alias USE_INFO_1* PUSE_INFO_1, LPUSE_INFO_1; - -struct USE_INFO_2 { - LPWSTR ui2_local; - LPWSTR ui2_remote; - LPWSTR ui2_password; - DWORD ui2_status; - DWORD ui2_asg_type; - DWORD ui2_refcount; - DWORD ui2_usecount; - LPWSTR ui2_username; - LPWSTR ui2_domainname; -} -alias USE_INFO_2* PUSE_INFO_2, LPUSE_INFO_2; - -extern (Windows) { - NET_API_STATUS NetUseAdd(LPWSTR, DWORD, PBYTE, PDWORD); - NET_API_STATUS NetUseDel(LPWSTR, LPWSTR, DWORD); - NET_API_STATUS NetUseEnum(LPWSTR, DWORD, PBYTE*, DWORD, PDWORD, PDWORD, - PDWORD); - NET_API_STATUS NetUseGetInfo(LPWSTR, LPWSTR, DWORD, PBYTE*); -} diff --git a/3rdparty-extra/win32/lmuseflg.d b/3rdparty-extra/win32/lmuseflg.d deleted file mode 100644 index f6ebbe0ad..000000000 --- a/3rdparty-extra/win32/lmuseflg.d +++ /dev/null @@ -1,17 +0,0 @@ -/***********************************************************************\ -* lmuseflg.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmuseflg; -version(Windows): - -enum : uint { - USE_NOFORCE = 0, - USE_FORCE, - USE_LOTS_OF_FORCE // = 2 -} diff --git a/3rdparty-extra/win32/lmwksta.d b/3rdparty-extra/win32/lmwksta.d deleted file mode 100644 index dab9b408c..000000000 --- a/3rdparty-extra/win32/lmwksta.d +++ /dev/null @@ -1,391 +0,0 @@ -/***********************************************************************\ -* lmwksta.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.lmwksta; -version(Windows): -pragma(lib, "netapi32"); - -import win32.lmuseflg; -private import win32.lmcons, win32.windef; - -pragma(lib, "Netapi32"); - -enum { - WKSTA_COMPUTERNAME_PARMNUM = 1, - WKSTA_LANGROUP_PARMNUM, // = 2 - WKSTA_VER_MAJOR_PARMNUM = 4, - WKSTA_VER_MINOR_PARMNUM, - WKSTA_LOGGED_ON_USERS_PARMNUM, - WKSTA_LANROOT_PARMNUM, - WKSTA_LOGON_DOMAIN_PARMNUM, - WKSTA_LOGON_SERVER_PARMNUM, - WKSTA_CHARWAIT_PARMNUM, - WKSTA_CHARTIME_PARMNUM, - WKSTA_CHARCOUNT_PARMNUM, - WKSTA_KEEPCONN_PARMNUM, - WKSTA_KEEPSEARCH_PARMNUM, - WKSTA_MAXCMDS_PARMNUM, - WKSTA_NUMWORKBUF_PARMNUM, - WKSTA_MAXWRKCACHE_PARMNUM, - WKSTA_SESSTIMEOUT_PARMNUM, - WKSTA_SIZERROR_PARMNUM, - WKSTA_NUMALERTS_PARMNUM, - WKSTA_NUMSERVICES_PARMNUM, - WKSTA_NUMCHARBUF_PARMNUM, - WKSTA_SIZCHARBUF_PARMNUM, // = 23 - WKSTA_ERRLOGSZ_PARMNUM = 27, - WKSTA_PRINTBUFTIME_PARMNUM, - WKSTA_SIZWORKBUF_PARMNUM, - WKSTA_MAILSLOTS_PARMNUM, - WKSTA_NUMDGRAMBUF_PARMNUM, - WKSTA_WRKHEURISTICS_PARMNUM, - WKSTA_MAXTHREADS_PARMNUM, // = 33 - WKSTA_LOCKQUOTA_PARMNUM = 41, - WKSTA_LOCKINCREMENT_PARMNUM, - WKSTA_LOCKMAXIMUM_PARMNUM, - WKSTA_PIPEINCREMENT_PARMNUM, - WKSTA_PIPEMAXIMUM_PARMNUM, - WKSTA_DORMANTFILELIMIT_PARMNUM, - WKSTA_CACHEFILETIMEOUT_PARMNUM, - WKSTA_USEOPPORTUNISTICLOCKING_PARMNUM, - WKSTA_USEUNLOCKBEHIND_PARMNUM, - WKSTA_USECLOSEBEHIND_PARMNUM, - WKSTA_BUFFERNAMEDPIPES_PARMNUM, - WKSTA_USELOCKANDREADANDUNLOCK_PARMNUM, - WKSTA_UTILIZENTCACHING_PARMNUM, - WKSTA_USERAWREAD_PARMNUM, - WKSTA_USERAWWRITE_PARMNUM, - WKSTA_USEWRITERAWWITHDATA_PARMNUM, - WKSTA_USEENCRYPTION_PARMNUM, - WKSTA_BUFFILESWITHDENYWRITE_PARMNUM, - WKSTA_BUFFERREADONLYFILES_PARMNUM, - WKSTA_FORCECORECREATEMODE_PARMNUM, - WKSTA_USE512BYTESMAXTRANSFER_PARMNUM, - WKSTA_READAHEADTHRUPUT_PARMNUM, // = 62 - WKSTA_PLATFORM_ID_PARMNUM = 100, - WKSTA_OTH_DOMAINS_PARMNUM = 101, - TRANSPORT_QUALITYOFSERVICE_PARMNUM = 201, - TRANSPORT_NAME_PARMNUM = 202 -} - -struct WKSTA_INFO_100{ - DWORD wki100_platform_id; - LPWSTR wki100_computername; - LPWSTR wki100_langroup; - DWORD wki100_ver_major; - DWORD wki100_ver_minor; -} -alias WKSTA_INFO_100* PWKSTA_INFO_100, LPWKSTA_INFO_100; - -struct WKSTA_INFO_101{ - DWORD wki101_platform_id; - LPWSTR wki101_computername; - LPWSTR wki101_langroup; - DWORD wki101_ver_major; - DWORD wki101_ver_minor; - LPWSTR wki101_lanroot; -} -alias WKSTA_INFO_101* PWKSTA_INFO_101, LPWKSTA_INFO_101; - -struct WKSTA_INFO_102{ - DWORD wki102_platform_id; - LPWSTR wki102_computername; - LPWSTR wki102_langroup; - DWORD wki102_ver_major; - DWORD wki102_ver_minor; - LPWSTR wki102_lanroot; - DWORD wki102_logged_on_users; -} -alias WKSTA_INFO_102* PWKSTA_INFO_102, LPWKSTA_INFO_102; - -struct WKSTA_INFO_302{ - DWORD wki302_char_wait; - DWORD wki302_collection_time; - DWORD wki302_maximum_collection_count; - DWORD wki302_keep_conn; - DWORD wki302_keep_search; - DWORD wki302_max_cmds; - DWORD wki302_num_work_buf; - DWORD wki302_siz_work_buf; - DWORD wki302_max_wrk_cache; - DWORD wki302_sess_timeout; - DWORD wki302_siz_error; - DWORD wki302_num_alerts; - DWORD wki302_num_services; - DWORD wki302_errlog_sz; - DWORD wki302_print_buf_time; - DWORD wki302_num_char_buf; - DWORD wki302_siz_char_buf; - LPWSTR wki302_wrk_heuristics; - DWORD wki302_mailslots; - DWORD wki302_num_dgram_buf; -} -alias WKSTA_INFO_302* PWKSTA_INFO_302, LPWKSTA_INFO_302; - -struct WKSTA_INFO_402{ - DWORD wki402_char_wait; - DWORD wki402_collection_time; - DWORD wki402_maximum_collection_count; - DWORD wki402_keep_conn; - DWORD wki402_keep_search; - DWORD wki402_max_cmds; - DWORD wki402_num_work_buf; - DWORD wki402_siz_work_buf; - DWORD wki402_max_wrk_cache; - DWORD wki402_sess_timeout; - DWORD wki402_siz_error; - DWORD wki402_num_alerts; - DWORD wki402_num_services; - DWORD wki402_errlog_sz; - DWORD wki402_print_buf_time; - DWORD wki402_num_char_buf; - DWORD wki402_siz_char_buf; - LPWSTR wki402_wrk_heuristics; - DWORD wki402_mailslots; - DWORD wki402_num_dgram_buf; - DWORD wki402_max_threads; -} -alias WKSTA_INFO_402* PWKSTA_INFO_402, LPWKSTA_INFO_402; - -struct WKSTA_INFO_502{ - DWORD wki502_char_wait; - DWORD wki502_collection_time; - DWORD wki502_maximum_collection_count; - DWORD wki502_keep_conn; - DWORD wki502_max_cmds; - DWORD wki502_sess_timeout; - DWORD wki502_siz_char_buf; - DWORD wki502_max_threads; - DWORD wki502_lock_quota; - DWORD wki502_lock_increment; - DWORD wki502_lock_maximum; - DWORD wki502_pipe_increment; - DWORD wki502_pipe_maximum; - DWORD wki502_cache_file_timeout; - DWORD wki502_dormant_file_limit; - DWORD wki502_read_ahead_throughput; - DWORD wki502_num_mailslot_buffers; - DWORD wki502_num_srv_announce_buffers; - DWORD wki502_max_illegal_datagram_events; - DWORD wki502_illegal_datagram_event_reset_frequency; - BOOL wki502_log_election_packets; - BOOL wki502_use_opportunistic_locking; - BOOL wki502_use_unlock_behind; - BOOL wki502_use_close_behind; - BOOL wki502_buf_named_pipes; - BOOL wki502_use_lock_read_unlock; - BOOL wki502_utilize_nt_caching; - BOOL wki502_use_raw_read; - BOOL wki502_use_raw_write; - BOOL wki502_use_write_raw_data; - BOOL wki502_use_encryption; - BOOL wki502_buf_files_deny_write; - BOOL wki502_buf_read_only_files; - BOOL wki502_force_core_create_mode; - BOOL wki502_use_512_byte_max_transfer; -} -alias WKSTA_INFO_502* PWKSTA_INFO_502, LPWKSTA_INFO_502; - -struct WKSTA_INFO_1010 { - DWORD wki1010_char_wait; -} -alias WKSTA_INFO_1010* PWKSTA_INFO_1010, LPWKSTA_INFO_1010; - -struct WKSTA_INFO_1011 { - DWORD wki1011_collection_time; -} -alias WKSTA_INFO_1011* PWKSTA_INFO_1011, LPWKSTA_INFO_1011; - -struct WKSTA_INFO_1012 { - DWORD wki1012_maximum_collection_count; -} -alias WKSTA_INFO_1012* PWKSTA_INFO_1012, LPWKSTA_INFO_1012; - -struct WKSTA_INFO_1027 { - DWORD wki1027_errlog_sz; -} -alias WKSTA_INFO_1027* PWKSTA_INFO_1027, LPWKSTA_INFO_1027; - -struct WKSTA_INFO_1028 { - DWORD wki1028_print_buf_time; -} -alias WKSTA_INFO_1028* PWKSTA_INFO_1028, LPWKSTA_INFO_1028; - -struct WKSTA_INFO_1032 { - DWORD wki1032_wrk_heuristics; -} -alias WKSTA_INFO_1032* PWKSTA_INFO_1032, LPWKSTA_INFO_1032; - -struct WKSTA_INFO_1013 { - DWORD wki1013_keep_conn; -} -alias WKSTA_INFO_1013* PWKSTA_INFO_1013, LPWKSTA_INFO_1013; - -struct WKSTA_INFO_1018 { - DWORD wki1018_sess_timeout; -} -alias WKSTA_INFO_1018* PWKSTA_INFO_1018, LPWKSTA_INFO_1018; - -struct WKSTA_INFO_1023 { - DWORD wki1023_siz_char_buf; -} -alias WKSTA_INFO_1023* PWKSTA_INFO_1023, LPWKSTA_INFO_1023; - -struct WKSTA_INFO_1033 { - DWORD wki1033_max_threads; -} -alias WKSTA_INFO_1033* PWKSTA_INFO_1033, LPWKSTA_INFO_1033; - -struct WKSTA_INFO_1041 { - DWORD wki1041_lock_quota; -} -alias WKSTA_INFO_1041* PWKSTA_INFO_1041, LPWKSTA_INFO_1041; - -struct WKSTA_INFO_1042 { - DWORD wki1042_lock_increment; -} -alias WKSTA_INFO_1042* PWKSTA_INFO_1042, LPWKSTA_INFO_1042; - -struct WKSTA_INFO_1043 { - DWORD wki1043_lock_maximum; -} -alias WKSTA_INFO_1043* PWKSTA_INFO_1043, LPWKSTA_INFO_1043; - -struct WKSTA_INFO_1044 { - DWORD wki1044_pipe_increment; -} -alias WKSTA_INFO_1044* PWKSTA_INFO_1044, LPWKSTA_INFO_1044; - -struct WKSTA_INFO_1045 { - DWORD wki1045_pipe_maximum; -} -alias WKSTA_INFO_1045* PWKSTA_INFO_1045, LPWKSTA_INFO_1045; - -struct WKSTA_INFO_1046 { - DWORD wki1046_dormant_file_limit; -} -alias WKSTA_INFO_1046* PWKSTA_INFO_1046, LPWKSTA_INFO_1046; - -struct WKSTA_INFO_1047 { - DWORD wki1047_cache_file_timeout; -} -alias WKSTA_INFO_1047* PWKSTA_INFO_1047, LPWKSTA_INFO_1047; - -struct WKSTA_INFO_1048 { - BOOL wki1048_use_opportunistic_locking; -} -alias WKSTA_INFO_1048* PWKSTA_INFO_1048, LPWKSTA_INFO_1048; - -struct WKSTA_INFO_1049 { - BOOL wki1049_use_unlock_behind; -} -alias WKSTA_INFO_1049* PWKSTA_INFO_1049, LPWKSTA_INFO_1049; - -struct WKSTA_INFO_1050 { - BOOL wki1050_use_close_behind; -} -alias WKSTA_INFO_1050* PWKSTA_INFO_1050, LPWKSTA_INFO_1050; - -struct WKSTA_INFO_1051 { - BOOL wki1051_buf_named_pipes; -} -alias WKSTA_INFO_1051* PWKSTA_INFO_1051, LPWKSTA_INFO_1051; - -struct WKSTA_INFO_1052 { - BOOL wki1052_use_lock_read_unlock; -} -alias WKSTA_INFO_1052* PWKSTA_INFO_1052, LPWKSTA_INFO_1052; - -struct WKSTA_INFO_1053 { - BOOL wki1053_utilize_nt_caching; -} -alias WKSTA_INFO_1053* PWKSTA_INFO_1053, LPWKSTA_INFO_1053; - -struct WKSTA_INFO_1054 { - BOOL wki1054_use_raw_read; -} -alias WKSTA_INFO_1054* PWKSTA_INFO_1054, LPWKSTA_INFO_1054; - -struct WKSTA_INFO_1055 { - BOOL wki1055_use_raw_write; -} -alias WKSTA_INFO_1055* PWKSTA_INFO_1055, LPWKSTA_INFO_1055; - -struct WKSTA_INFO_1056 { - BOOL wki1056_use_write_raw_data; -} -alias WKSTA_INFO_1056* PWKSTA_INFO_1056, LPWKSTA_INFO_1056; - -struct WKSTA_INFO_1057 { - BOOL wki1057_use_encryption; -} -alias WKSTA_INFO_1057* PWKSTA_INFO_1057, LPWKSTA_INFO_1057; - -struct WKSTA_INFO_1058 { - BOOL wki1058_buf_files_deny_write; -} -alias WKSTA_INFO_1058* PWKSTA_INFO_1058, LPWKSTA_INFO_1058; - -struct WKSTA_INFO_1059 { - BOOL wki1059_buf_read_only_files; -} -alias WKSTA_INFO_1059* PWKSTA_INFO_1059, LPWKSTA_INFO_1059; - -struct WKSTA_INFO_1060 { - BOOL wki1060_force_core_create_mode; -} -alias WKSTA_INFO_1060* PWKSTA_INFO_1060, LPWKSTA_INFO_1060; - -struct WKSTA_INFO_1061 { - BOOL wki1061_use_512_byte_max_transfer; -} -alias WKSTA_INFO_1061* PWKSTA_INFO_1061, LPWKSTA_INFO_1061; - -struct WKSTA_INFO_1062 { - DWORD wki1062_read_ahead_throughput; -} -alias WKSTA_INFO_1062* PWKSTA_INFO_1062, LPWKSTA_INFO_1062; - -struct WKSTA_USER_INFO_0 { - LPWSTR wkui0_username; -} -alias WKSTA_USER_INFO_0* PWKSTA_USER_INFO_0, LPWKSTA_USER_INFO_0; - -struct WKSTA_USER_INFO_1{ - LPWSTR wkui1_username; - LPWSTR wkui1_logon_domain; - LPWSTR wkui1_oth_domains; - LPWSTR wkui1_logon_server; -} -alias WKSTA_USER_INFO_1* PWKSTA_USER_INFO_1, LPWKSTA_USER_INFO_1; - -struct WKSTA_USER_INFO_1101 { - LPWSTR wkui1101_oth_domains; -} -alias WKSTA_USER_INFO_1101* PWKSTA_USER_INFO_1101, LPWKSTA_USER_INFO_1101; - -struct WKSTA_TRANSPORT_INFO_0{ - DWORD wkti0_quality_of_service; - DWORD wkti0_number_of_vcs; - LPWSTR wkti0_transport_name; - LPWSTR wkti0_transport_address; - BOOL wkti0_wan_ish; -} -alias WKSTA_TRANSPORT_INFO_0* PWKSTA_TRANSPORT_INFO_0, LPWKSTA_TRANSPORT_INFO_0; - -extern (Windows) { -NET_API_STATUS NetWkstaGetInfo(LPWSTR,DWORD,PBYTE*); -NET_API_STATUS NetWkstaSetInfo(LPWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetWkstaUserGetInfo(LPWSTR,DWORD,PBYTE*); -NET_API_STATUS NetWkstaUserSetInfo(LPWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetWkstaUserEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -NET_API_STATUS NetWkstaTransportAdd(LPWSTR,DWORD,PBYTE,PDWORD); -NET_API_STATUS NetWkstaTransportDel(LPWSTR,LPWSTR,DWORD); -NET_API_STATUS NetWkstaTransportEnum(LPWSTR,DWORD,PBYTE*,DWORD,PDWORD,PDWORD,PDWORD); -} diff --git a/3rdparty-extra/win32/mapi.d b/3rdparty-extra/win32/mapi.d deleted file mode 100644 index 6ef274770..000000000 --- a/3rdparty-extra/win32/mapi.d +++ /dev/null @@ -1,169 +0,0 @@ -/***********************************************************************\ -* mapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.mapi; -version(Windows): - -private import win32.windef; - -// FIXME: check types and grouping of constants - -enum { - SUCCESS_SUCCESS, - MAPI_USER_ABORT, - MAPI_E_USER_ABORT = MAPI_USER_ABORT, - MAPI_E_FAILURE, - MAPI_E_LOGIN_FAILURE, - MAPI_E_LOGON_FAILURE = MAPI_E_LOGIN_FAILURE, - MAPI_E_DISK_FULL = 4, - MAPI_E_INSUFFICIENT_MEMORY, - MAPI_E_ACCESS_DENIED, - MAPI_E_BLK_TOO_SMALL = MAPI_E_ACCESS_DENIED, // = 6 - MAPI_E_TOO_MANY_SESSIONS = 8, - MAPI_E_TOO_MANY_FILES, - MAPI_E_TOO_MANY_RECIPIENTS, - MAPI_E_ATTACHMENT_NOT_FOUND, - MAPI_E_ATTACHMENT_OPEN_FAILURE, - MAPI_E_ATTACHMENT_WRITE_FAILURE, - MAPI_E_UNKNOWN_RECIPIENT, - MAPI_E_BAD_RECIPTYPE, - MAPI_E_NO_MESSAGES, - MAPI_E_INVALID_MESSAGE, - MAPI_E_TEXT_TOO_LARGE, - MAPI_E_INVALID_SESSION, - MAPI_E_TYPE_NOT_SUPPORTED, - MAPI_E_AMBIGUOUS_RECIPIENT, - MAPI_E_AMBIGUOUS_RECIP = MAPI_E_AMBIGUOUS_RECIPIENT, - MAPI_E_MESSAGE_IN_USE, - MAPI_E_NETWORK_FAILURE, - MAPI_E_INVALID_EDITFIELDS, - MAPI_E_INVALID_RECIPS, - MAPI_E_NOT_SUPPORTED // = 26 -} - -enum { - MAPI_ORIG, - MAPI_TO, - MAPI_CC, - MAPI_BCC -} - -const MAPI_LOGON_UI = 0x0001; -const MAPI_NEW_SESSION = 0x0002; -const MAPI_FORCE_DOWNLOAD = 0x1000; -const MAPI_LOGOFF_SHARED = 0x0001; -const MAPI_LOGOFF_UI = 0x0002; -const MAPI_DIALOG = 0x0008; -const MAPI_UNREAD_ONLY = 0x0020; -const MAPI_LONG_MSGID = 0x4000; -const MAPI_GUARANTEE_FIFO = 0x0100; -const MAPI_ENVELOPE_ONLY = 0x0040; -const MAPI_PEEK = 0x0080; -const MAPI_BODY_AS_FILE = 0x0200; -const MAPI_SUPPRESS_ATTACH = 0x0800; -const MAPI_AB_NOMODIFY = 0x0400; -const MAPI_OLE = 0x0001; -const MAPI_OLE_STATIC = 0x0002; -const MAPI_UNREAD = 0x0001; -const MAPI_RECEIPT_REQUESTED = 0x0002; -const MAPI_SENT = 0x0004; - -alias uint FLAGS, LHANDLE; -alias uint* LPLHANDLE, LPULONG; - -struct MapiRecipDesc { - ULONG ulReserved; - ULONG ulRecipClass; - LPSTR lpszName; - LPSTR lpszAddress; - ULONG ulEIDSize; - LPVOID lpEntryID; -} -alias MapiRecipDesc* lpMapiRecipDesc; - -struct MapiFileDesc { - ULONG ulReserved; - ULONG flFlags; - ULONG nPosition; - LPSTR lpszPathName; - LPSTR lpszFileName; - LPVOID lpFileType; -} -alias MapiFileDesc* lpMapiFileDesc; - -struct MapiFileTagExt { - ULONG ulReserved; - ULONG cbTag; - LPBYTE lpTag; - ULONG cbEncoding; - LPBYTE lpEncoding; -} -alias MapiFileTagExt* lpMapiFileTagExt; - -struct MapiMessage { - ULONG ulReserved; - LPSTR lpszSubject; - LPSTR lpszNoteText; - LPSTR lpszMessageType; - LPSTR lpszDateReceived; - LPSTR lpszConversationID; - FLAGS flFlags; - lpMapiRecipDesc lpOriginator; - ULONG nRecipCount; - lpMapiRecipDesc lpRecips; - ULONG nFileCount; - lpMapiFileDesc lpFiles; -} -alias MapiMessage* lpMapiMessage; - -extern (Pascal) { - ULONG MAPILogon(ULONG, LPSTR, LPSTR, FLAGS, ULONG, LPLHANDLE); - ULONG MAPISendMail(LHANDLE, ULONG, lpMapiMessage, FLAGS, ULONG); - ULONG MAPISendDocuments(ULONG, LPSTR, LPSTR, LPSTR, ULONG); - ULONG MAPIReadMail(LHANDLE, ULONG, LPSTR, FLAGS, ULONG, lpMapiMessage*); - ULONG MAPIFindNext(LHANDLE, ULONG, LPSTR, LPSTR, FLAGS, ULONG, LPSTR); - ULONG MAPIResolveName(LHANDLE, ULONG, LPSTR, FLAGS, ULONG, - lpMapiRecipDesc*); - ULONG MAPIAddress(LHANDLE, ULONG, LPSTR, ULONG, LPSTR, ULONG, - lpMapiRecipDesc, FLAGS, ULONG, LPULONG, lpMapiRecipDesc*); - ULONG MAPIFreeBuffer(LPVOID); - ULONG MAPIDetails(LHANDLE, ULONG, lpMapiRecipDesc, FLAGS, ULONG); - ULONG MAPISaveMail(LHANDLE, ULONG, lpMapiMessage lpszMessage, FLAGS, - ULONG, LPSTR); - ULONG MAPIDeleteMail(LHANDLE lpSession, ULONG, LPSTR, FLAGS, ULONG); - ULONG MAPILogoff(LHANDLE, ULONG, FLAGS, ULONG); - // Netscape extensions - ULONG MAPIGetNetscapeVersion(); - ULONG MAPI_NSCP_SynchronizeClient(LHANDLE, ULONG); - - // Handles for use with GetProcAddress - alias ULONG function(ULONG, LPSTR, LPSTR, FLAGS, ULONG, LPLHANDLE) - LPMAPILOGON; - alias ULONG function(LHANDLE, ULONG, lpMapiMessage, FLAGS, ULONG) - LPMAPISENDMAIL; - alias ULONG function(ULONG, LPSTR, LPSTR, LPSTR, ULONG) - LPMAPISENDDOCUMENTS; - alias ULONG function(LHANDLE, ULONG, LPSTR, FLAGS, ULONG, lpMapiMessage*) - LPMAPIREADMAIL; - alias ULONG function(LHANDLE, ULONG, LPSTR, LPSTR, FLAGS, ULONG, LPSTR) - LPMAPIFINDNEXT; - alias ULONG function(LHANDLE, ULONG, LPSTR, FLAGS, ULONG, - lpMapiRecipDesc*) LPMAPIRESOLVENAME; - alias ULONG function(LHANDLE, ULONG, LPSTR, ULONG, LPSTR, ULONG, - lpMapiRecipDesc, FLAGS, ULONG, LPULONG, lpMapiRecipDesc*) LPMAPIADDRESS; - alias ULONG function(LPVOID lpv) LPMAPIFREEBUFFER; - alias ULONG function(LHANDLE, ULONG, lpMapiRecipDesc, FLAGS, ULONG) - LPMAPIDETAILS; - alias ULONG function(LHANDLE, ULONG, lpMapiMessage, FLAGS, ULONG, LPSTR) - LPMAPISAVEMAIL; - alias ULONG function(LHANDLE lpSession, ULONG, LPSTR, FLAGS, ULONG) - LPMAPIDELETEMAIL; - alias ULONG function(LHANDLE, ULONG, FLAGS, ULONG) LPMAPILOGOFF; -} diff --git a/3rdparty-extra/win32/mciavi.d b/3rdparty-extra/win32/mciavi.d deleted file mode 100644 index 53db29ffb..000000000 --- a/3rdparty-extra/win32/mciavi.d +++ /dev/null @@ -1,41 +0,0 @@ -/***********************************************************************\ -* mciavi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.mciavi; -version(Windows): - -private import win32.mmsystem; - -// FIXME: check types and grouping of constants - -const MCI_MCIAVI_PLAY_WINDOW = 0x01000000; -const MCI_MCIAVI_PLAY_FULLSCREEN = 0x02000000; -const MCI_MCIAVI_PLAY_FULLBY2 = 0x04000000; - -enum { - MCI_AVI_STATUS_FRAMES_SKIPPED = 0x00008001, - MCI_AVI_STATUS_LAST_PLAY_SPEED = 0x00008002, - MCI_AVI_STATUS_AUDIO_BREAKS = 0x00008003, - MCI_AVI_SETVIDEO_DRAW_PROCEDURE = 0x00008000, - MCI_AVI_SETVIDEO_PALETTE_COLOR = 0x00008100, - MCI_AVI_SETVIDEO_PALETTE_HALFTONE = 0x0000FFFF -} - -enum { - MCIERR_AVI_OLDAVIFORMAT = MCIERR_CUSTOM_DRIVER_BASE + 100, - MCIERR_AVI_NOTINTERLEAVED, - MCIERR_AVI_NODISPDIB, - MCIERR_AVI_CANTPLAYFULLSCREEN, - MCIERR_AVI_TOOBIGFORVGA, - MCIERR_AVI_NOCOMPRESSOR, - MCIERR_AVI_DISPLAYERROR, - MCIERR_AVI_AUDIOERROR, - MCIERR_AVI_BADPALETTE // = MCIERR_CUSTOM_DRIVER_BASE + 108 -} diff --git a/3rdparty-extra/win32/mcx.d b/3rdparty-extra/win32/mcx.d deleted file mode 100644 index a91cc5a70..000000000 --- a/3rdparty-extra/win32/mcx.d +++ /dev/null @@ -1,100 +0,0 @@ -/***********************************************************************\ -* mcx.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.mcx; -version(Windows): - -private import win32.windef; - -const DWORD - DIALOPTION_BILLING = 64, - DIALOPTION_QUIET = 128, - DIALOPTION_DIALTONE = 256; - -const DWORD - MDMVOLFLAG_LOW = 1, - MDMVOLFLAG_MEDIUM = 2, - MDMVOLFLAG_HIGH = 4; - -enum : DWORD { - MDMVOL_LOW = 0, - MDMVOL_MEDIUM = 1, - MDMVOL_HIGH = 2 -} - -const DWORD - MDMSPKRFLAG_OFF = 1, - MDMSPKRFLAG_DIAL = 2, - MDMSPKRFLAG_ON = 4, - MDMSPKRFLAG_CALLSETUP = 8; - -enum : DWORD { - MDMSPKR_OFF, - MDMSPKR_DIAL, - MDMSPKR_ON, - MDMSPKR_CALLSETUP -} - -const DWORD - MDM_COMPRESSION = 0x0001, - MDM_ERROR_CONTROL = 0x0002, - MDM_FORCED_EC = 0x0004, - MDM_CELLULAR = 0x0008, - MDM_FLOWCONTROL_HARD = 0x0010, - MDM_FLOWCONTROL_SOFT = 0x0020, - MDM_CCITT_OVERRIDE = 0x0040, - MDM_SPEED_ADJUST = 0x0080, - MDM_TONE_DIAL = 0x0100, - MDM_BLIND_DIAL = 0x0200, - MDM_V23_OVERRIDE = 0x0400; - -struct MODEMDEVCAPS { - DWORD dwActualSize; - DWORD dwRequiredSize; - DWORD dwDevSpecificOffset; - DWORD dwDevSpecificSize; - DWORD dwModemProviderVersion; - DWORD dwModemManufacturerOffset; - DWORD dwModemManufacturerSize; - DWORD dwModemModelOffset; - DWORD dwModemModelSize; - DWORD dwModemVersionOffset; - DWORD dwModemVersionSize; - DWORD dwDialOptions; - DWORD dwCallSetupFailTimer; - DWORD dwInactivityTimeout; - DWORD dwSpeakerVolume; - DWORD dwSpeakerMode; - DWORD dwModemOptions; - DWORD dwMaxDTERate; - DWORD dwMaxDCERate; - BYTE _abVariablePortion; - - BYTE* abVariablePortion() { return &_abVariablePortion; } -} -alias MODEMDEVCAPS* PMODEMDEVCAPS, LPMODEMDEVCAPS; - -struct MODEMSETTINGS { - DWORD dwActualSize; - DWORD dwRequiredSize; - DWORD dwDevSpecificOffset; - DWORD dwDevSpecificSize; - DWORD dwCallSetupFailTimer; - DWORD dwInactivityTimeout; - DWORD dwSpeakerVolume; - DWORD dwSpeakerMode; - DWORD dwPreferredModemOptions; - DWORD dwNegotiatedModemOptions; - DWORD dwNegotiatedDCERate; - BYTE _abVariablePortion; - - BYTE* abVariablePortion() { return &_abVariablePortion; } -} -alias MODEMSETTINGS* PMODEMSETTINGS, LPMODEMSETTINGS; diff --git a/3rdparty-extra/win32/mgmtapi.d b/3rdparty-extra/win32/mgmtapi.d deleted file mode 100644 index 3448a16ca..000000000 --- a/3rdparty-extra/win32/mgmtapi.d +++ /dev/null @@ -1,48 +0,0 @@ -/***********************************************************************\ -* mgmtapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.mgmtapi; -version(Windows): - -import win32.snmp; -private import win32.windef; - -enum { - SNMP_MGMTAPI_TIMEOUT = 40, - SNMP_MGMTAPI_SELECT_FDERRORS, - SNMP_MGMTAPI_TRAP_ERRORS, - SNMP_MGMTAPI_TRAP_DUPINIT, - SNMP_MGMTAPI_NOTRAPS, - SNMP_MGMTAPI_AGAIN, - SNMP_MGMTAPI_INVALID_CTL, - SNMP_MGMTAPI_INVALID_SESSION, - SNMP_MGMTAPI_INVALID_BUFFER // = 48 -} - -const MGMCTL_SETAGENTPORT = 1; - -alias PVOID LPSNMP_MGR_SESSION; - -extern (Windows) { - BOOL SnmpMgrClose(LPSNMP_MGR_SESSION); - BOOL SnmpMgrCtl(LPSNMP_MGR_SESSION, DWORD, LPVOID, DWORD, LPVOID, DWORD, - LPDWORD); - BOOL SnmpMgrGetTrap(AsnObjectIdentifier*, AsnNetworkAddress*, - AsnInteger*, AsnInteger*, AsnTimeticks*, SnmpVarBindList*); - BOOL SnmpMgrGetTrapEx(AsnObjectIdentifier*, AsnNetworkAddress*, - AsnNetworkAddress*, AsnInteger*, AsnInteger*, AsnOctetString*, - AsnTimeticks*, SnmpVarBindList*); - BOOL SnmpMgrOidToStr(AsnObjectIdentifier*, LPSTR*); - LPSNMP_MGR_SESSION SnmpMgrOpen(LPSTR, LPSTR, INT, INT); - INT SnmpMgrRequest(LPSNMP_MGR_SESSION, BYTE, SnmpVarBindList*, - AsnInteger*, AsnInteger*); - BOOL SnmpMgrStrToOid(LPSTR, AsnObjectIdentifier*); - BOOL SnmpMgrTrapListen(HANDLE*); -} diff --git a/3rdparty-extra/win32/msacm.d b/3rdparty-extra/win32/msacm.d deleted file mode 100644 index ec51acb4d..000000000 --- a/3rdparty-extra/win32/msacm.d +++ /dev/null @@ -1,174 +0,0 @@ -/***********************************************************************\ -* msacm.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.msacm; -version(Windows): - -private import win32.basetsd, win32.mmsystem, win32.windef; - -mixin DECLARE_HANDLE!("HACMDRIVERID"); -mixin DECLARE_HANDLE!("HACMDRIVER"); -alias HACMDRIVER* LPHACMDRIVER; - -/* Comment from MinGW - found through experimentation - */ -const size_t - ACMDRIVERDETAILS_SHORTNAME_CHARS = 32, - ACMDRIVERDETAILS_LONGNAME_CHARS = 128, - ACMDRIVERDETAILS_COPYRIGHT_CHARS = 80, - ACMDRIVERDETAILS_LICENSING_CHARS = 128; - -/* Comment from MinGW - I don't know the right values for these macros - */ -const size_t - ACMFORMATDETAILS_FORMAT_CHARS = 256, - ACMFORMATTAGDETAILS_FORMATTAG_CHARS = 256, - ACMDRIVERDETAILS_FEATURES_CHARS = 256; - -struct ACMFORMATDETAILSA { - DWORD cbStruct = ACMFORMATDETAILSA.sizeof; // are they? - DWORD dwFormatIndex; - DWORD dwFormatTag; - DWORD fdwSupport; - LPWAVEFORMATEX pwfx; - DWORD cbwfx; - char[ACMFORMATDETAILS_FORMAT_CHARS] szFormat; -} -alias ACMFORMATDETAILSA* LPACMFORMATDETAILSA; - -struct ACMFORMATDETAILSW { - DWORD cbStruct = ACMFORMATDETAILSW.sizeof; - DWORD dwFormatIndex; - DWORD dwFormatTag; - DWORD fdwSupport; - LPWAVEFORMATEX pwfx; - DWORD cbwfx; - WCHAR[ACMFORMATDETAILS_FORMAT_CHARS] szFormat; -} -alias ACMFORMATDETAILSW* LPACMFORMATDETAILSW; - -struct ACMFORMATTAGDETAILSA { - DWORD cbStruct = ACMFORMATTAGDETAILSA.sizeof; - DWORD dwFormatTagIndex; - DWORD dwFormatTag; - DWORD cbFormatSize; - DWORD fdwSupport; - DWORD cStandardFormats; - char[ACMFORMATTAGDETAILS_FORMATTAG_CHARS] szFormatTag; -} -alias ACMFORMATTAGDETAILSA* LPACMFORMATTAGDETAILSA; - -struct ACMFORMATTAGDETAILSW { - DWORD cbStruct = ACMFORMATTAGDETAILSW.sizeof; - DWORD dwFormatTagIndex; - DWORD dwFormatTag; - DWORD cbFormatSize; - DWORD fdwSupport; - DWORD cStandardFormats; - WCHAR[ACMFORMATTAGDETAILS_FORMATTAG_CHARS] szFormatTag; -} -alias ACMFORMATTAGDETAILSW* LPACMFORMATTAGDETAILSW; - -struct ACMDRIVERDETAILSA { - DWORD cbStruct = ACMDRIVERDETAILSA.sizeof; - FOURCC fccType; - FOURCC fccComp; - WORD wMid; - WORD wPid; - DWORD vdwACM; - DWORD vdwDriver; - DWORD fdwSupport; - DWORD cFormatTags; - DWORD cFilterTags; - HICON hicon; - char[ACMDRIVERDETAILS_SHORTNAME_CHARS] szShortName; - char[ACMDRIVERDETAILS_LONGNAME_CHARS] szLongName; - char[ACMDRIVERDETAILS_COPYRIGHT_CHARS] szCopyright; - char[ACMDRIVERDETAILS_LICENSING_CHARS] szLicensing; - char[ACMDRIVERDETAILS_FEATURES_CHARS] szFeatures; -} -alias ACMDRIVERDETAILSA* LPACMDRIVERDETAILSA; - -struct ACMDRIVERDETAILSW { - DWORD cbStruct = ACMDRIVERDETAILSW.sizeof; - FOURCC fccType; - FOURCC fccComp; - WORD wMid; - WORD wPid; - DWORD vdwACM; - DWORD vdwDriver; - DWORD fdwSupport; - DWORD cFormatTags; - DWORD cFilterTags; - HICON hicon; - WCHAR[ACMDRIVERDETAILS_SHORTNAME_CHARS] szShortName; - WCHAR[ACMDRIVERDETAILS_LONGNAME_CHARS] szLongName; - WCHAR[ACMDRIVERDETAILS_COPYRIGHT_CHARS] szCopyright; - WCHAR[ACMDRIVERDETAILS_LICENSING_CHARS] szLicensing; - WCHAR[ACMDRIVERDETAILS_FEATURES_CHARS] szFeatures; -} -alias ACMDRIVERDETAILSW* LPACMDRIVERDETAILSW; - -extern (Windows) { - alias BOOL function(HACMDRIVERID hadid, LPACMFORMATDETAILSA pafd, - DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATENUMCBA; - alias BOOL function(HACMDRIVERID hadid, LPACMFORMATDETAILSW pafd, - DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATENUMCBW; - alias BOOL function(HACMDRIVERID hadid, LPACMFORMATTAGDETAILSA paftd, - DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATTAGENUMCBA; - alias BOOL function(HACMDRIVERID hadid, LPACMFORMATTAGDETAILSW paftd, - DWORD_PTR dwInstance, DWORD fdwSupport) ACMFORMATTAGENUMCBW; - alias BOOL function(HACMDRIVERID hadid, DWORD_PTR dwInstance, - DWORD fdwSupport) ACMDRIVERENUMCB; - - MMRESULT acmDriverOpen(LPHACMDRIVER phad, HACMDRIVERID hadid, - DWORD fdwOpen); - MMRESULT acmDriverEnum(ACMDRIVERENUMCB fnCallback, DWORD_PTR dwInstance, - DWORD fdwEnum); - MMRESULT acmFormatEnumA(HACMDRIVER had, LPACMFORMATDETAILSA pafd, - ACMFORMATENUMCBA fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum); - MMRESULT acmFormatEnumW(HACMDRIVER had, LPACMFORMATDETAILSW pafd, - ACMFORMATENUMCBW fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum); - MMRESULT acmDriverClose(HACMDRIVER had, DWORD fdwClose); - MMRESULT acmDriverDetailsA(HACMDRIVERID hadid, LPACMDRIVERDETAILSA padd, - DWORD fdwDetails); - MMRESULT acmDriverDetailsW(HACMDRIVERID hadid, LPACMDRIVERDETAILSW padd, - DWORD fdwDetails); - MMRESULT acmFormatTagEnumA(HACMDRIVER had, LPACMFORMATTAGDETAILSA paftd, - ACMFORMATTAGENUMCBA fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum); - MMRESULT acmFormatTagEnumW(HACMDRIVER had, LPACMFORMATTAGDETAILSW paftd, - ACMFORMATTAGENUMCBW fnCallback, DWORD_PTR dwInstance, DWORD fdwEnum); -} - -version (Unicode) { - alias ACMFORMATDETAILSW ACMFORMATDETAILS; - alias ACMFORMATTAGDETAILSW ACMFORMATTAGDETAILS; - alias ACMDRIVERDETAILSW ACMDRIVERDETAILS; - alias ACMFORMATENUMCBW ACMFORMATENUMCB; - alias ACMFORMATTAGENUMCBW ACMFORMATTAGENUMCB; - alias acmFormatEnumW acmFormatEnum; - alias acmDriverDetailsW acmDriverDetails; - alias acmFormatTagEnumW acmFormatTagEnum; -} else { - alias ACMFORMATDETAILSA ACMFORMATDETAILS; - alias ACMFORMATTAGDETAILSA ACMFORMATTAGDETAILS; - alias ACMDRIVERDETAILSA ACMDRIVERDETAILS; - alias ACMFORMATENUMCBA ACMFORMATENUMCB; - alias ACMFORMATTAGENUMCBA ACMFORMATTAGENUMCB; - alias acmFormatEnumA acmFormatEnum; - alias acmDriverDetailsA acmDriverDetails; - alias acmFormatTagEnumA acmFormatTagEnum; -} - -alias ACMFORMATDETAILS* LPACMFORMATDETAILS; -alias ACMFORMATTAGDETAILS* LPACMFORMATTAGDETAILS; -alias ACMDRIVERDETAILS* LPACMDRIVERDETAILS; diff --git a/3rdparty-extra/win32/mshtml.d b/3rdparty-extra/win32/mshtml.d deleted file mode 100644 index a5d3bc367..000000000 --- a/3rdparty-extra/win32/mshtml.d +++ /dev/null @@ -1,537 +0,0 @@ -/***********************************************************************\ -* mshtml.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.mshtml; -version(Windows): - -private import win32.basetyps, win32.oaidl, win32.unknwn, - win32.windef, win32.wtypes; - -// These are used in this file, but not defined in MinGW. -interface IHTMLStyleSheet {}; -alias IHTMLStyle LPHTMLSTYLE; -alias IHTMLStyleSheet LPHTMLSTYLESHEET; -interface IHTMLLocation {}; -alias IHTMLLocation LPHTMLLOCATION; -interface IHTMLFramesCollection {}; -alias IHTMLFramesCollection LPHTMLFRAMESCOLLECTION; -interface IHTMLStyleSheetsCollection {}; -alias IHTMLStyleSheetsCollection LPHTMLSTYLESHEETSCOLLECTION; -interface IHTMLStyle {}; -interface IHTMLFiltersCollection {}; -alias IHTMLFiltersCollection LPHTMLFILTERSCOLLECTION; -interface IOmHistory : IDispatch { - HRESULT get_length(short* p); - HRESULT back(VARIANT*); - HRESULT forward(VARIANT*); - HRESULT go(VARIANT*); -}; -alias IOmHistory LPOMHISTORY; -interface IOmNavigator {}; -alias IOmNavigator LPOMNAVIGATOR; -interface IHTMLImageElementFactory {}; -alias IHTMLImageElementFactory LPHTMLIMAGEELEMENTFACTORY; -interface IHTMLEventObj {}; -alias IHTMLEventObj LPHTMLEVENTOBJ; -interface IHTMLScreen {}; -alias IHTMLScreen LPHTMLSCREEN; -interface IHTMLOptionElementFactory {}; -alias IHTMLOptionElementFactory LPHTMLOPTIONELEMENTFACTORY; - -interface IHTMLLinkElement : IDispatch { - HRESULT put_href(BSTR); - HRESULT get_href(BSTR*); - HRESULT put_rel(BSTR); - HRESULT get_rel(BSTR*); - HRESULT put_rev(BSTR); - HRESULT get_rev(BSTR*); - HRESULT put_type(BSTR); - HRESULT get_type(BSTR*); - HRESULT get_readyState(BSTR*); - HRESULT put_onreadystatechange(VARIANT); - HRESULT get_onreadystatechange(VARIANT*); - HRESULT put_onload(VARIANT); - HRESULT get_onload(VARIANT*); - HRESULT put_onerror(VARIANT); - HRESULT get_onerror(VARIANT*); - HRESULT get_styleSheet(LPHTMLSTYLESHEET*); - HRESULT put_disabled(VARIANT_BOOL); - HRESULT get_disabled(VARIANT_BOOL*); - HRESULT put_media(BSTR); - HRESULT get_media(BSTR*); -} -alias IHTMLLinkElement LPHTMLLINKELEMENT; - -interface IHTMLImgElement : IDispatch { - HRESULT put_isMap(VARIANT_BOOL); - HRESULT get_isMap(VARIANT_BOOL*); - HRESULT put_useMap(BSTR); - HRESULT get_useMap(BSTR*); - HRESULT get_mimeType(BSTR*); - HRESULT get_fileSize(BSTR*); - HRESULT get_fileCreatedDate(BSTR*); - HRESULT get_fileModifiedDate(BSTR*); - HRESULT get_fileUpdatedDate(BSTR*); - HRESULT get_protocol(BSTR*); - HRESULT get_href(BSTR*); - HRESULT get_nameProp(BSTR*); - HRESULT put_border(VARIANT); - HRESULT get_border(VARIANT*); - HRESULT put_vspace(LONG); - HRESULT get_vspace(LONG*); - HRESULT put_hspace(LONG); - HRESULT get_hspace(LONG*); - HRESULT put_alt(BSTR); - HRESULT get_alt(BSTR*); - HRESULT put_src(BSTR); - HRESULT get_src(BSTR*); - HRESULT put_lowsrc(BSTR); - HRESULT get_lowsrc(BSTR*); - HRESULT put_vrml(BSTR); - HRESULT get_vrml(BSTR*); - HRESULT put_dynsrc(BSTR); - HRESULT get_dynsrc(BSTR*); - HRESULT get_readyState(BSTR*); - HRESULT get_complete(VARIANT_BOOL*); - HRESULT put_loop(VARIANT); - HRESULT get_loop(VARIANT*); - HRESULT put_align(BSTR); - HRESULT get_align(BSTR*); - HRESULT put_onload(VARIANT); - HRESULT get_onload(VARIANT*); - HRESULT put_onerror(VARIANT); - HRESULT get_onerror(VARIANT*); - HRESULT put_onabort(VARIANT); - HRESULT get_onabort(VARIANT*); - HRESULT put_name(BSTR); - HRESULT get_name(BSTR*); - HRESULT put_width(LONG); - HRESULT get_width(LONG*); - HRESULT put_height(LONG); - HRESULT get_height(LONG*); - HRESULT put_start(BSTR); - HRESULT get_start(BSTR*); -} -alias IHTMLImgElement LPHTMLIMGELEMENT; - -interface IHTMLElementCollection : IDispatch { - HRESULT toString(BSTR*); - HRESULT put_length(LONG); - HRESULT get_length(LONG*); - HRESULT get__newEnum(IUnknown*); - HRESULT item(VARIANT,VARIANT,IDispatch* pDisp); - HRESULT tags(VARIANT,IDispatch* pdisp); -} -alias IHTMLElementCollection LPHTMLELEMENTCOLLECTION; - -interface IHTMLDocument : IDispatch { - HRESULT get_Script(IDispatch*); -} - -interface IHTMLDocument2 : IHTMLDocument { - HRESULT get_all(LPHTMLELEMENTCOLLECTION*); - HRESULT get_body(LPHTMLELEMENT*); - HRESULT get_activeElement(LPHTMLELEMENT*); - HRESULT get_images(LPHTMLELEMENTCOLLECTION*); - HRESULT get_applets(LPHTMLELEMENTCOLLECTION*); - HRESULT get_links(LPHTMLELEMENTCOLLECTION*); - HRESULT get_forms(LPHTMLELEMENTCOLLECTION*); - HRESULT get_anchors(LPHTMLELEMENTCOLLECTION*); - HRESULT put_title(BSTR); - HRESULT get_title(BSTR*); - HRESULT get_scripts(LPHTMLELEMENTCOLLECTION*); - HRESULT put_designMode(BSTR); - HRESULT get_designMode(BSTR*); - HRESULT get_selection(LPHTMLSELECTIONOBJECT*); - HRESULT get_readyState(BSTR*); - HRESULT get_frames(IHTMLFramesCollection2*); - HRESULT get_embeds(LPHTMLELEMENTCOLLECTION*); - HRESULT get_plugins(LPHTMLELEMENTCOLLECTION*); - HRESULT put_alinkColor(VARIANT); - HRESULT get_alinkColor(VARIANT*); - HRESULT put_bgColor(VARIANT); - HRESULT get_bgColor(VARIANT*); - HRESULT put_fgColor(VARIANT); - HRESULT get_fgColor(VARIANT*); - HRESULT put_linkColor(VARIANT); - HRESULT get_linkColor(VARIANT*); - HRESULT put_vlinkColor(VARIANT); - HRESULT get_vlinkColor(VARIANT*); - HRESULT get_referrer(BSTR*); - HRESULT get_location(LPHTMLLOCATION*); - HRESULT get_lastModified(BSTR*); - HRESULT put_url(BSTR); - HRESULT get_url(BSTR*); - HRESULT put_domain(BSTR); - HRESULT get_domain(BSTR*); - HRESULT put_cookie(BSTR); - HRESULT get_cookie(BSTR*); - HRESULT put_expands(VARIANT_BOOL); - HRESULT get_expands(VARIANT_BOOL*); - HRESULT put_charset(BSTR); - HRESULT get_charset(BSTR*); - HRESULT put_defaultCharset(BSTR); - HRESULT get_defaultCharset(BSTR*); - HRESULT get_mimeType(BSTR*); - HRESULT get_fileSize(BSTR*); - HRESULT get_fileCreatedDate(BSTR*); - HRESULT get_fileModifiedDate(BSTR*); - HRESULT get_fileUpdatedDate(BSTR*); - HRESULT get_security(BSTR*); - HRESULT get_protocol(BSTR*); - HRESULT get_nameProp(BSTR*); - HRESULT write(SAFEARRAY*); - HRESULT writeln(SAFEARRAY*); - HRESULT open(BSTR,VARIANT,VARIANT,VARIANT,IDispatch*); - HRESULT close(); - HRESULT clear(); - HRESULT queryCommandSupported(BSTR,VARIANT_BOOL*); - HRESULT queryCommandEnabled(BSTR,VARIANT_BOOL*); - HRESULT queryCommandState(BSTR,VARIANT_BOOL*); - HRESULT queryCommandIndeterm(BSTR,VARIANT_BOOL*); - HRESULT queryCommandText(BSTR,BSTR*); - HRESULT queryCommandValue(BSTR,VARIANT*); - HRESULT execCommand(BSTR,VARIANT_BOOL,VARIANT,VARIANT_BOOL*); - HRESULT execCommandShowHelp(BSTR,VARIANT_BOOL*); - HRESULT createElement(BSTR,LPHTMLELEMENT*); - HRESULT put_onhelp(VARIANT); - HRESULT get_onhelp(VARIANT*); - HRESULT put_onclick(VARIANT); - HRESULT get_onclick(VARIANT*); - HRESULT put_ondblclick(VARIANT); - HRESULT get_ondblclick(VARIANT*); - HRESULT put_onkeyup(VARIANT); - HRESULT get_onkeyup(VARIANT*); - HRESULT put_onkeydown(VARIANT); - HRESULT get_onkeydown(VARIANT*); - HRESULT put_onkeypress(VARIANT); - HRESULT get_onkeypress(VARIANT*); - HRESULT put_onmouseup(VARIANT); - HRESULT get_onmouseup(VARIANT*); - HRESULT put_onmousedown(VARIANT); - HRESULT get_onmousedown(VARIANT*); - HRESULT put_onmousemove(VARIANT); - HRESULT get_onmousemove(VARIANT*); - HRESULT put_onmouseout(VARIANT); - HRESULT get_onmouseout(VARIANT*); - HRESULT put_onmouseover(VARIANT); - HRESULT get_onmouseover(VARIANT*); - HRESULT put_onreadystatechange(VARIANT); - HRESULT get_onreadystatechange(VARIANT*); - HRESULT put_onafterupdate(VARIANT); - HRESULT get_onafterupdate(VARIANT*); - HRESULT put_onrowexit(VARIANT); - HRESULT get_onrowexit(VARIANT*); - HRESULT put_onrowenter(VARIANT); - HRESULT get_onrowenter(VARIANT*); - HRESULT put_ondragstart(VARIANT); - HRESULT get_ondragstart(VARIANT*); - HRESULT put_onselectstart(VARIANT); - HRESULT get_onselectstart(VARIANT*); - HRESULT elementFromPoint(LONG,LONG,LPHTMLELEMENT*); - HRESULT get_parentWindow(LPHTMLWINDOW2*); - HRESULT get_styleSheets(LPHTMLSTYLESHEETSCOLLECTION*); - HRESULT put_onbeforeupdate(VARIANT); - HRESULT get_onbeforeupdate(VARIANT*); - HRESULT put_onerrorupdate(VARIANT); - HRESULT get_onerrorupdate(VARIANT*); - HRESULT toString(BSTR*); - HRESULT createStyleSheet(BSTR,LONG,LPHTMLSTYLESHEET*); -} - -interface IHTMLSelectionObject : IDispatch { - HRESULT createRange(IDispatch*); - HRESULT empty(); - HRESULT clear(); - HRESULT get_type(BSTR*); -} -alias IHTMLSelectionObject LPHTMLSELECTIONOBJECT; - -interface IHTMLTxtRange : IDispatch { - HRESULT get_htmlText(BSTR*); - HRESULT put_text(BSTR); - HRESULT get_text(BSTR*); - HRESULT parentElement(LPHTMLELEMENT*); - HRESULT duplicate(IHTMLTxtRange*); - HRESULT inRange(IHTMLTxtRange,VARIANT_BOOL*); - HRESULT isEqual(IHTMLTxtRange,VARIANT_BOOL*); - HRESULT scrollIntoView(VARIANT_BOOL); - HRESULT collapse(VARIANT_BOOL); - HRESULT expand(BSTR,VARIANT_BOOL*); - HRESULT move(BSTR,LONG,LONG*); - HRESULT moveStart(BSTR,LONG,LONG*); - HRESULT moveEnd(BSTR,LONG,LONG*); - HRESULT select(); - HRESULT pasteHTML(BSTR); - HRESULT moveToElementText(LPHTMLELEMENT); - HRESULT setEndPoint(BSTR,IHTMLTxtRange); - HRESULT compareEndPoints(BSTR,IHTMLTxtRange,LONG*); - HRESULT findText(BSTR,LONG,LONG,VARIANT_BOOL*); - HRESULT moveToPoint(LONG,LONG); - HRESULT getBookmark(BSTR*); - HRESULT moveToBookbark(BSTR,VARIANT_BOOL*); - HRESULT queryCommandSupported(BSTR,VARIANT_BOOL*); - HRESULT queryCommandEnabled(BSTR,VARIANT_BOOL*); - HRESULT queryCommandState(BSTR,VARIANT_BOOL*); - HRESULT queryCommandIndeterm(BSTR,VARIANT_BOOL*); - HRESULT queryCommandText(BSTR,BSTR*); - HRESULT queryCommandValue(BSTR,VARIANT*); - HRESULT execCommand(BSTR,VARIANT_BOOL,VARIANT,VARIANT_BOOL*); - HRESULT execCommandShowHelp(BSTR,VARIANT_BOOL*); -} - -interface IHTMLElement : IDispatch { - HRESULT setAttribute(BSTR,VARIANT,LONG); - HRESULT getAttribute(BSTR,LONG,VARIANT*); - HRESULT removeAttribute(BSTR,LONG,VARIANT_BOOL*); - HRESULT put_className(BSTR); - HRESULT get_className(ref BSTR); - HRESULT put_id(BSTR); - HRESULT get_id(ref BSTR); - HRESULT get_tagName(ref BSTR); - HRESULT get_parentElement(LPHTMLELEMENT*); - HRESULT get_style(LPHTMLSTYLE*); - HRESULT put_onhelp(VARIANT); - HRESULT get_onhelp(VARIANT*); - HRESULT put_onclick(VARIANT); - HRESULT get_onclick(VARIANT*); - HRESULT put_ondblclick(VARIANT); - HRESULT get_ondblclick(VARIANT*); - HRESULT put_onkeydown(VARIANT); - HRESULT get_onkeydown(VARIANT*); - HRESULT put_onkeyup(VARIANT); - HRESULT get_onkeyup(VARIANT*); - HRESULT put_onkeypress(VARIANT); - HRESULT get_onkeypress(VARIANT*); - HRESULT put_onmouseout(VARIANT); - HRESULT get_onmouseout(VARIANT*); - HRESULT put_onmouseover(VARIANT); - HRESULT get_onmouseover(VARIANT*); - HRESULT put_onmousemove(VARIANT); - HRESULT get_onmousemove(VARIANT*); - HRESULT put_onmousedown(VARIANT); - HRESULT get_onmousedown(VARIANT*); - HRESULT put_onmouseup(VARIANT); - HRESULT get_onmouseup(VARIANT*); - HRESULT get_document(IDispatch*); - HRESULT put_title(BSTR); - HRESULT get_title(ref BSTR); - HRESULT put_language(BSTR); - HRESULT get_language(ref BSTR); - HRESULT put_onselectstart(VARIANT); - HRESULT get_onselectstart(VARIANT*); - HRESULT scrollIntoView(VARIANT); - HRESULT contains(LPHTMLELEMENT,VARIANT_BOOL*); - HRESULT get_source3Index(LONG*); - HRESULT get_recordNumber(VARIANT*); - HRESULT put_lang(BSTR); - HRESULT get_lang(ref BSTR); - HRESULT get_offsetLeft(LONG*); - HRESULT get_offsetTop(LONG*); - HRESULT get_offsetWidth(LONG*); - HRESULT get_offsetHeight(LONG*); - HRESULT get_offsetParent(LPHTMLELEMENT*); - HRESULT put_innerHTML(BSTR); - HRESULT get_innerHTML(ref BSTR); - HRESULT put_innerText(BSTR); - HRESULT get_innerText(ref BSTR); - HRESULT put_outerHTML(BSTR); - HRESULT get_outerHTML(ref BSTR); - HRESULT put_outerText(BSTR); - HRESULT get_outerText(ref BSTR); - HRESULT insertAdjacentHTML(BSTR,BSTR); - HRESULT insertAdjacentText(BSTR,BSTR); - HRESULT get_parentTextEdit(LPHTMLELEMENT*); - HRESULT isTextEdit(VARIANT_BOOL*); - HRESULT click(); - HRESULT get_filters(LPHTMLFILTERSCOLLECTION*); - HRESULT put_ondragstart(VARIANT); - HRESULT get_ondragstart(VARIANT*); - HRESULT toString(BSTR*); - HRESULT put_onbeforeupdate(VARIANT); - HRESULT get_onbeforeupdate(VARIANT*); - HRESULT put_onafterupdate(VARIANT); - HRESULT get_onafterupdate(VARIANT*); - HRESULT put_onerrorupdate(VARIANT); - HRESULT get_onerrorupdate(VARIANT*); - HRESULT put_onrowexit(VARIANT); - HRESULT get_onrowexit(VARIANT*); - HRESULT put_onrowenter(VARIANT); - HRESULT get_onrowenter(VARIANT*); - HRESULT put_ondatasetchanged(VARIANT); - HRESULT get_ondatasetchanged(VARIANT*); - HRESULT put_ondataavailable(VARIANT); - HRESULT get_ondataavailable(VARIANT*); - HRESULT put_ondatasetcomplete(VARIANT); - HRESULT get_ondatasetcomplete(VARIANT*); - HRESULT put_onfilterchange(VARIANT); - HRESULT get_onfilterchange(VARIANT*); - HRESULT get_children(IDispatch*); - HRESULT get_all(IDispatch*); -} -alias IHTMLElement LPHTMLELEMENT; - -interface IHTMLFramesCollection2 : IDispatch { - HRESULT item(VARIANT*,VARIANT*); - HRESULT get_length(LONG*); -} - -interface IHTMLWindow2 : IHTMLFramesCollection2 { - HRESULT get_frames(IHTMLFramesCollection2*); - HRESULT put_defaultStatus(BSTR); - HRESULT get_defaultStatus(BSTR*); - HRESULT put_status(BSTR); - HRESULT get_status(BSTR*); - HRESULT setTimeout(BSTR,LONG,VARIANT*,LONG*); - HRESULT clearTimeout(LONG); - HRESULT alert(BSTR); - HRESULT confirm(BSTR,VARIANT_BOOL*); - HRESULT prompt(BSTR,BSTR,VARIANT*); - HRESULT get_Image(LPHTMLIMAGEELEMENTFACTORY*); - HRESULT get_location(LPHTMLLOCATION*); - HRESULT get_history(LPOMHISTORY*); - HRESULT close(); - HRESULT put_opener(VARIANT); - HRESULT get_opener(VARIANT*); - HRESULT get_navigator(LPOMNAVIGATOR*); - HRESULT put_name(BSTR); - HRESULT get_name(BSTR*); - HRESULT get_parent(LPHTMLWINDOW2*); - HRESULT open(BSTR,BSTR,BSTR,VARIANT_BOOL,LPHTMLWINDOW2*); - HRESULT get_self(LPHTMLWINDOW2*); - HRESULT get_top(LPHTMLWINDOW2*); - HRESULT get_window(LPHTMLWINDOW2*); - HRESULT navigate(BSTR); - HRESULT put_onfocus(VARIANT); - HRESULT get_onfocus(VARIANT*); - HRESULT put_onblur(VARIANT); - HRESULT get_onblur(VARIANT*); - HRESULT put_onload(VARIANT); - HRESULT get_onload(VARIANT*); - HRESULT put_onbeforeunload(VARIANT); - HRESULT get_onbeforeunload(VARIANT*); - HRESULT put_onunload(VARIANT); - HRESULT get_onunload(VARIANT*); - HRESULT put_onhelp(VARIANT); - HRESULT get_onhelp(VARIANT*); - HRESULT put_onerror(VARIANT); - HRESULT get_onerror(VARIANT*); - HRESULT put_onresize(VARIANT); - HRESULT get_onresize(VARIANT*); - HRESULT put_onscroll(VARIANT); - HRESULT get_onscroll(VARIANT*); - HRESULT get_document(IHTMLDocument2*); - HRESULT get_event(LPHTMLEVENTOBJ*); - HRESULT get__newEnum(IUnknown*); - HRESULT showModalDialog(BSTR,VARIANT*,VARIANT*,VARIANT*); - HRESULT showHelp(BSTR,VARIANT,BSTR); - HRESULT get_screen(LPHTMLSCREEN*); - HRESULT get_Option(LPHTMLOPTIONELEMENTFACTORY*); - HRESULT focus(); - HRESULT get_closed(VARIANT_BOOL*); - HRESULT blur(); - HRESULT scroll(long,long); - HRESULT get_clientInformation(LPOMNAVIGATOR*); - HRESULT setInterval(BSTR,long,VARIANT*,long*); - HRESULT clearInterval(long); - HRESULT put_offscreenBuffering(VARIANT); - HRESULT get_offscreenBuffering(VARIANT*); - HRESULT execScript(BSTR,BSTR,VARIANT*); - HRESULT toString(BSTR*); - HRESULT scrollBy(LONG,LONG); - HRESULT scrollTo(LONG,LONG); - HRESULT moveTo(LONG,LONG); - HRESULT moveBy(LONG,LONG); - HRESULT resizeTo(LONG,LONG); - HRESULT resizeBy(LONG,LONG); - HRESULT get_external(IDispatch*); -} -alias IHTMLWindow2 LPHTMLWINDOW2; - -interface IHTMLFrameBase : IDispatch { - HRESULT put_src(BSTR); - HRESULT get_src(BSTR*); - HRESULT put_name(BSTR); - HRESULT get_name(BSTR*); - HRESULT put_border(VARIANT); - HRESULT get_border(VARIANT*); - HRESULT put_frameBorder(BSTR); - HRESULT get_frameBorder(BSTR*); - HRESULT put_frameSpacing(VARIANT); - HRESULT get_frameSpacing(VARIANT*); - HRESULT put_marginWidth(VARIANT); - HRESULT get_marginWidth(VARIANT*); - HRESULT put_marginHeight(VARIANT); - HRESULT get_marginHeight(VARIANT*); - HRESULT put_noResize(VARIANT_BOOL); - HRESULT get_noResize(VARIANT_BOOL*); - HRESULT put_scrolling(BSTR); - HRESULT get_scrolling(BSTR*); -} - -interface IHTMLFrameBase2 : IDispatch { - HRESULT get_contentWindow(IHTMLWindow2*); - HRESULT put_onload(VARIANT); - HRESULT get_onload(VARIANT*); - HRESULT put_onreadystatechange(VARIANT); - HRESULT get_onreadystatechange(VARIANT*); - HRESULT get_readyState(BSTR*); - HRESULT put_allowTransparency(VARIANT_BOOL); - HRESULT get_allowTransparency(VARIANT_BOOL*); -} - -interface IHTMLFrameBase3 : IDispatch { - HRESULT put_longDesc(BSTR); - HRESULT get_longDesc(BSTR*); -} - -interface IHTMLBodyElement : IDispatch { - HRESULT put_background(BSTR); - HRESULT get_background(BSTR*); - HRESULT put_bgProperties(BSTR); - HRESULT get_bgProperties(BSTR*); - HRESULT put_leftMargin(VARIANT); - HRESULT get_leftMargin(VARIANT*); - HRESULT put_topMargin(VARIANT); - HRESULT get_topMargin(VARIANT*); - HRESULT put_rightMargin(VARIANT); - HRESULT get_rightMargin(VARIANT*); - HRESULT put_bottomMargin(VARIANT); - HRESULT get_bottomMargin(VARIANT*); - HRESULT put_noWrap(VARIANT_BOOL); - HRESULT get_noWrap(VARIANT_BOOL*); - HRESULT put_bgColor(VARIANT); - HRESULT get_bgColor(VARIANT*); - HRESULT put_text(VARIANT); - HRESULT get_text(VARIANT*); - HRESULT put_link(VARIANT); - HRESULT get_link(VARIANT*); - HRESULT put_vLink(VARIANT); - HRESULT get_vLink(VARIANT*); - HRESULT put_aLink(VARIANT); - HRESULT get_aLink(VARIANT*); - HRESULT put_onload(VARIANT); - HRESULT get_onload(VARIANT*); - HRESULT put_onunload(VARIANT); - HRESULT get_onunload(VARIANT*); - HRESULT put_scroll(BSTR); - HRESULT get_scroll(BSTR*); - HRESULT put_onselect(VARIANT); - HRESULT get_onselect(VARIANT*); - HRESULT put_onbeforeunload(VARIANT); - HRESULT get_onbeforeunload(VARIANT*); - HRESULT createTextRange(IHTMLTxtRange*); -} - -interface IHTMLBodyElement2 : IDispatch { - HRESULT put_onbeforeprint(VARIANT); - HRESULT get_onbeforeprint(VARIANT*); - HRESULT put_onafterprint(VARIANT); - HRESULT get_onafterprint(VARIANT*); -} diff --git a/3rdparty-extra/win32/mswsock.d b/3rdparty-extra/win32/mswsock.d deleted file mode 100644 index 1a65ed05d..000000000 --- a/3rdparty-extra/win32/mswsock.d +++ /dev/null @@ -1,198 +0,0 @@ -/***********************************************************************\ -* mswsock.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Daniel Keep * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.mswsock; -version(Windows): - -import win32.winbase, win32.windef; -private import win32.basetyps, win32.w32api; - -// FIXME: clean up Windows version support - -version (Win32_Winsock2) pragma(msg, - "Version Win32_Winsock2 is deprecated; Winsock2 is now imported by default"); - -// Pull in Winsock1 if the user has put "Win32_Winsock1" on the compile -// line; otherwise, default to Winsock2. -version (Win32_Winsock1) { - import win32.winsock; -} else { - import win32.winsock2; -} - -static if (_WIN32_WINNT >= 0x500) { - enum { - /* WinNT5+: - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/socket_options.htm */ - SO_MAXDG = 0x7009, - SO_MAXPATHDG = 0x700A, - } -} - -enum { - /* WinNT4+: - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/socket_options_for_windows_nt_4_0_2.htm */ - SO_CONNDATA = 0x7000, - SO_CONNOPT = 0x7001, - SO_DISCDATA = 0x7002, - SO_DISCOPT = 0x7003, - SO_CONNDATALEN = 0x7004, - SO_CONNOPTLEN = 0x7005, - SO_DISCDATALEN = 0x7006, - SO_DISCOPTLEN = 0x7007, - - /* WinNT4: - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/socket_options.htm */ - SO_UPDATE_ACCEPT_CONTENT = 0x700B, -} - -enum { - /* Win95+, WinNT4+ but apparently shouldn't used: mark as deprecated? - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/socket_options.htm */ - SO_OPENTYPE = 0x7008, - - /* Win95+; these two are passed to the SO_OPENTYPE option as arguments, - so would they be deprecated as well? - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/socket_options.htm */ - SO_SYNCHRONOUS_ALERT = 0x0010, - SO_SYNCHRONOUS_NONALERT = 0x0020, - - /* Win95: - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/socket_options.htm */ - SO_CONNECT_TIME = 0x700C, -} - - -enum { - TCP_BSDURGENT = 0x7000, -} - -/* These *appear* to be constants for passing to the TransmitFile / - TransmitPackets functions, which are available in WinNT3.51+ - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/transmitfile_2.htm */ -enum { - TF_DISCONNECT = 1, - TF_REUSE_SOCKET = 2, - TF_WRITE_BEHIND = 4, - TF_USE_DEFAULT_WORKER = 0, - TF_USE_SYSTEM_THREAD = 16, - TF_USE_KERNEL_APC = 32 -} - -/* Win95+, WinNT3.51+ - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/transmit_file_buffers_2.htm */ -struct TRANSMIT_FILE_BUFFERS { - PVOID Head; - DWORD HeadLength; - PVOID Tail; - DWORD TailLength; -} -alias TRANSMIT_FILE_BUFFERS* PTRANSMIT_FILE_BUFFERS, LPTRANSMIT_FILE_BUFFERS; - -extern(Windows) { - /* Win95+, WinNT3.51+ - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/wsarecvex_2.htm */ - int WSARecvEx(SOCKET, char*, int, int*); - - /* Win95+, WinNT3.51+ - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/getacceptexSOCKADDRs_2.htm */ - VOID GetAcceptExSockaddrs(PVOID, DWORD, DWORD, DWORD, SOCKADDR**, LPINT, SOCKADDR**, LPINT); - - /* WinNT3.51+ - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/transmitfile_2.htm */ - BOOL TransmitFile(SOCKET, HANDLE, DWORD, DWORD, LPOVERLAPPED, LPTRANSMIT_FILE_BUFFERS, DWORD); - - /* WinNT3.51+ - ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/acceptex_2.htm */ - alias BOOL function(SOCKET, SOCKET, PVOID, DWORD, DWORD, DWORD, LPDWORD, LPOVERLAPPED) LPFN_ACCEPTEX; - const GUID WSAID_ACCEPTEX = {0xb5367df1,0xcbac,0x11cf,[0x95,0xca,0x00,0x80,0x5f,0x48,0xa1,0x92]}; - - alias BOOL function(SOCKET, SOCKADDR*, int, PVOID, DWORD, LPDWORD, LPOVERLAPPED) LPFN_CONNECTEX; - const GUID WSAID_CONNECTEX = {0x25a207b9,0xddf3,0x4660,[0x8e,0xe9,0x76,0xe5,0x8c,0x74,0x06,0x3e]}; -} - -version(Win32_Winsock1) { -} else { - static if (_WIN32_WINNT > 0x501) { - /* These appear to be constants for the TRANSMIT_PACKETS_ELEMENT - * structure below, so I've given them the same minimum version - */ - enum { - TP_ELEMENT_FILE = 1, - TP_ELEMENT_MEMORY = 2, - TP_ELEMENT_EOP = 4 - } - - /* WinXP+, Srv2k3+ - * ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/transmit_packets_element_2.htm - */ - struct TRANSMIT_PACKETS_ELEMENT { - ULONG dwElFlags; - ULONG cLength; - union { - struct { - LARGE_INTEGER nFileOffset; - HANDLE hFile; - } - PVOID pBuffer; - } - } - - /* WinXP+, Server2003+: - * ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/wsamsg_2.htm - */ - struct WSAMSG { - LPSOCKADDR name; - INT namelen; - LPWSABUF lpBuffers; - DWORD dwBufferCount; - WSABUF Control; - DWORD dwFlags; - } - - alias WSAMSG* PWSAMSG, LPWSAMSG; - - /* According to MSDN docs, the WSAMSG.Control buffer starts with a - cmsghdr header of the following form. See also RFC 2292. */ - /* DK: Confirmed. So I suppose these should get the same version as - WSAMSG... */ - struct WSACMSGHDR { - UINT cmsg_len; - INT cmsg_level; - INT cmsg_type; - // followed by UCHAR cmsg_data[]; - } - - /* TODO: Standard Posix.1g macros as per RFC 2292, with WSA_uglification. */ - /* DK: MinGW doesn't define these, and neither does the MSDN docs. Might have - to actually look up RFC 2292... */ - /+ - #if 0 - #define WSA_CMSG_FIRSTHDR(mhdr) - #define WSA_CMSG_NXTHDR(mhdr, cmsg) - #define WSA_CMSG_SPACE(length) - #define WSA_CMSG_LEN(length) - #endif - +/ - - extern(Windows) - { - /* WinXP+, Srv2k3+ - * ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/disconnectex_2.htm - */ - BOOL DisconnectEx(SOCKET, LPOVERLAPPED, DWORD, DWORD); - - /* WinXP+, Srv2k3+ - * ms-help://MS.MSDNQTR.2003FEB.1033/winsock/winsock/wsarecvmsg_2.htm - */ - int WSARecvMsg(SOCKET, LPWSAMSG, LPDWORD, LPWSAOVERLAPPED, LPWSAOVERLAPPED_COMPLETION_ROUTINE); - } - } -} diff --git a/3rdparty-extra/win32/nddeapi.d b/3rdparty-extra/win32/nddeapi.d deleted file mode 100644 index 3033bf742..000000000 --- a/3rdparty-extra/win32/nddeapi.d +++ /dev/null @@ -1,163 +0,0 @@ -/***********************************************************************\ -* nddeapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.nddeapi; -version(Windows): - -private import win32.windef; - -// FIXME: check types and grouping of constants - -/+ -#ifndef CNLEN /* also in lmcons.h */ -#define CNLEN 15 -#define UNCLEN (CNLEN + 2) -#endif -+/ - -const char SEP_CHAR = ','; -const char[] BAR_CHAR = "|"; -const wchar SEP_WCHAR = ','; -const wchar[] BAR_WCHAR = "|"; - -enum { - NDDE_NO_ERROR, - NDDE_ACCESS_DENIED, - NDDE_BUF_TOO_SMALL, - NDDE_ERROR_MORE_DATA, - NDDE_INVALID_SERVER, - NDDE_INVALID_SHARE, - NDDE_INVALID_PARAMETER, - NDDE_INVALID_LEVEL, - NDDE_INVALID_PASSWORD, - NDDE_INVALID_ITEMNAME, - NDDE_INVALID_TOPIC, - NDDE_INTERNAL_ERROR, - NDDE_OUT_OF_MEMORY, - NDDE_INVALID_APPNAME, - NDDE_NOT_IMPLEMENTED, - NDDE_SHARE_ALREADY_EXIST, - NDDE_SHARE_NOT_EXIST, - NDDE_INVALID_FILENAME, - NDDE_NOT_RUNNING, - NDDE_INVALID_WINDOW, - NDDE_INVALID_SESSION, - NDDE_INVALID_ITEM_LIST, - NDDE_SHARE_DATA_CORRUPTED, - NDDE_REGISTRY_ERROR, - NDDE_CANT_ACCESS_SERVER, - NDDE_INVALID_SPECIAL_COMMAND, - NDDE_INVALID_SECURITY_DESC, - NDDE_TRUST_SHARE_FAIL -} - -const size_t - MAX_NDDESHARENAME = 256, - MAX_DOMAINNAME = 15, - MAX_USERNAME = 15, - MAX_APPNAME = 255, - MAX_TOPICNAME = 255, - MAX_ITEMNAME = 255; - -const NDDEF_NOPASSWORDPROMPT = 1; -const NDDEF_NOCACHELOOKUP = 2; -const NDDEF_STRIP_NDDE = 4; - -const SHARE_TYPE_OLD = 1; -const SHARE_TYPE_NEW = 2; -const SHARE_TYPE_STATIC = 4; - -const uint - NDDE_CMD_SHOW_MASK = 0x0000FFFF, - NDDE_TRUST_CMD_SHOW = 0x10000000, - NDDE_TRUST_SHARE_DEL = 0x20000000, - NDDE_TRUST_SHARE_INIT = 0x40000000, - NDDE_TRUST_SHARE_START = 0x80000000; - -struct NDdeShareInfo_tag { - LONG lRevision; - LPTSTR lpszShareName; - LONG lShareType; - LPTSTR lpszAppTopicList; - LONG fSharedFlag; - LONG fService; - LONG fStartAppFlag; - LONG nCmdShow; - LONG[2] qModifyId; - LONG cNumItems; - LPTSTR lpszItemList; -} -extern (C) { // huh? - NDdeShareInfo_tag NDDESHAREINFO; - NDdeShareInfo_tag* PNDDESHAREINFO; -} - -extern (Windows) { - UINT NDdeGetErrorStringA(UINT, LPSTR, DWORD); - UINT NDdeGetErrorStringW(UINT, LPWSTR, DWORD); - UINT NDdeGetShareSecurityA(LPSTR, LPSTR, SECURITY_INFORMATION, - PSECURITY_DESCRIPTOR, DWORD, PDWORD); - UINT NDdeGetShareSecurityW(LPWSTR, LPWSTR, SECURITY_INFORMATION, - PSECURITY_DESCRIPTOR, DWORD, PDWORD); - UINT NDdeGetTrustedShareA(LPSTR, LPSTR, PDWORD, PDWORD, PDWORD); - UINT NDdeGetTrustedShareW(LPWSTR, LPWSTR, PDWORD, PDWORD, PDWORD); - BOOL NDdeIsValidShareNameA(LPSTR); - BOOL NDdeIsValidShareNameW(LPWSTR); - BOOL NDdeIsValidAppTopicListA(LPSTR); - BOOL NDdeIsValidAppTopicListW(LPWSTR); - UINT NDdeSetShareSecurityA(LPSTR, LPSTR, SECURITY_INFORMATION, - PSECURITY_DESCRIPTOR); - UINT NDdeSetShareSecurityW(LPWSTR, LPWSTR, SECURITY_INFORMATION, - PSECURITY_DESCRIPTOR); - UINT NDdeSetTrustedShareA(LPSTR, LPSTR, DWORD); - UINT NDdeSetTrustedShareW(LPWSTR, LPWSTR, DWORD); - UINT NDdeShareAddA(LPSTR, UINT, PSECURITY_DESCRIPTOR, PBYTE, DWORD); - UINT NDdeShareAddW(LPWSTR, UINT, PSECURITY_DESCRIPTOR, PBYTE, DWORD); - UINT NDdeShareDelA(LPSTR, LPSTR, UINT); - UINT NDdeShareDelW(LPWSTR, LPWSTR, UINT); - UINT NDdeShareEnumA(LPSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); - UINT NDdeShareEnumW(LPWSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); - UINT NDdeShareGetInfoA(LPSTR, LPSTR, UINT, PBYTE, DWORD, PDWORD, PWORD); - UINT NDdeShareGetInfoW(LPWSTR, LPWSTR, UINT, PBYTE, DWORD, PDWORD, PWORD); - UINT NDdeShareSetInfoA(LPSTR, LPSTR, UINT, PBYTE, DWORD, WORD); - UINT NDdeShareSetInfoW(LPWSTR, LPWSTR, UINT, PBYTE, DWORD, WORD); - UINT NDdeTrustedShareEnumA(LPSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); - UINT NDdeTrustedShareEnumW(LPWSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); -} - -version (Unicode) { - alias NDdeShareAddW NDdeShareAdd; - alias NDdeShareDelW NDdeShareDel; - alias NDdeSetShareSecurityW NDdeSetShareSecurity; - alias NDdeGetShareSecurityW NDdeGetShareSecurity; - alias NDdeShareEnumW NDdeShareEnum; - alias NDdeShareGetInfoW NDdeShareGetInfo; - alias NDdeShareSetInfoW NDdeShareSetInfo; - alias NDdeGetErrorStringW NDdeGetErrorString; - alias NDdeIsValidShareNameW NDdeIsValidShareName; - alias NDdeIsValidAppTopicListW NDdeIsValidAppTopicList; - alias NDdeSetTrustedShareW NDdeSetTrustedShare; - alias NDdeGetTrustedShareW NDdeGetTrustedShare; - alias NDdeTrustedShareEnumW NDdeTrustedShareEnum; -} else { - alias NDdeShareAddA NDdeShareAdd; - alias NDdeShareDelA NDdeShareDel; - alias NDdeSetShareSecurityA NDdeSetShareSecurity; - alias NDdeGetShareSecurityA NDdeGetShareSecurity; - alias NDdeShareEnumA NDdeShareEnum; - alias NDdeShareGetInfoA NDdeShareGetInfo; - alias NDdeShareSetInfoA NDdeShareSetInfo; - alias NDdeGetErrorStringA NDdeGetErrorString; - alias NDdeIsValidShareNameA NDdeIsValidShareName; - alias NDdeIsValidAppTopicListA NDdeIsValidAppTopicList; - alias NDdeSetTrustedShareA NDdeSetTrustedShare; - alias NDdeGetTrustedShareA NDdeGetTrustedShare; - alias NDdeTrustedShareEnumA NDdeTrustedShareEnum; -} diff --git a/3rdparty-extra/win32/nspapi.d b/3rdparty-extra/win32/nspapi.d deleted file mode 100644 index e101cd3ac..000000000 --- a/3rdparty-extra/win32/nspapi.d +++ /dev/null @@ -1,149 +0,0 @@ -/***********************************************************************\ -* nspapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.nspapi; -version(Windows): - -private import win32.basetyps, win32.windef; - -// FIXME: check types of constants - -enum { - NS_ALL = 0, - - NS_SAP, - NS_NDS, - NS_PEER_BROWSE, - - NS_TCPIP_LOCAL = 10, - NS_TCPIP_HOSTS, - NS_DNS, - NS_NETBT, - NS_WINS, - - NS_NBP = 20, - - NS_MS = 30, - NS_STDA, - NS_NTDS, - - NS_X500 = 40, - NS_NIS, - NS_NISPLUS, - - NS_WRQ = 50 -} - -enum { - SERVICE_REGISTER = 1, - SERVICE_DEREGISTER = 2, - SERVICE_FLUSH = 3, - SERVICE_FLAG_HARD = 2 -} - -/* MinGW makes the next section conditional on winsock.h or winsock2.h - * being included. But that doesn't translate well into D. - */ -version (Win32_Winsock1) { - import win32.winsock; -} else { - import win32.winsock2; -} - -struct SOCKET_ADDRESS { - LPSOCKADDR lpSockaddr; - INT iSockaddrLength; -} -alias SOCKET_ADDRESS* PSOCKET_ADDRESS, LPSOCKET_ADDRESS; - -struct CSADDR_INFO { - SOCKET_ADDRESS LocalAddr; - SOCKET_ADDRESS RemoteAddr; - INT iSocketType; - INT iProtocol; -} -alias CSADDR_INFO* PCSADDR_INFO, LPCSADDR_INFO; - -struct BLOB { - ULONG cbSize; - BYTE* pBlobData; -} -alias BLOB* PBLOB, LPBLOB; - -struct SERVICE_ADDRESS { - DWORD dwAddressType; - DWORD dwAddressFlags; - DWORD dwAddressLength; - DWORD dwPrincipalLength; - BYTE* lpAddress; - BYTE* lpPrincipal; -} - -struct SERVICE_ADDRESSES { - DWORD dwAddressCount; - SERVICE_ADDRESS _Addresses; - - SERVICE_ADDRESS* Addresses() { return &_Addresses; } -} -alias SERVICE_ADDRESSES* PSERVICE_ADDRESSES, LPSERVICE_ADDRESSES; - -struct SERVICE_INFOA { - LPGUID lpServiceType; - LPSTR lpServiceName; - LPSTR lpComment; - LPSTR lpLocale; - DWORD dwDisplayHint; - DWORD dwVersion; - DWORD dwTime; - LPSTR lpMachineName; - LPSERVICE_ADDRESSES lpServiceAddress; - BLOB ServiceSpecificInfo; -} -alias SERVICE_INFOA* LPSERVICE_INFOA; - -struct SERVICE_INFOW { - LPGUID lpServiceType; - LPWSTR lpServiceName; - LPWSTR lpComment; - LPWSTR lpLocale; - DWORD dwDisplayHint; - DWORD dwVersion; - DWORD dwTime; - LPWSTR lpMachineName; - LPSERVICE_ADDRESSES lpServiceAddress; - BLOB ServiceSpecificInfo; -} -alias SERVICE_INFOW* LPSERVICE_INFOW; - -alias void* LPSERVICE_ASYNC_INFO; - -extern (Windows) { - INT SetServiceA(DWORD, DWORD, DWORD, LPSERVICE_INFOA, - LPSERVICE_ASYNC_INFO, LPDWORD); - INT SetServiceW(DWORD, DWORD, DWORD, LPSERVICE_INFOW, - LPSERVICE_ASYNC_INFO, LPDWORD); - INT GetAddressByNameA(DWORD, LPGUID, LPSTR, LPINT, DWORD, - LPSERVICE_ASYNC_INFO, LPVOID, LPDWORD, LPSTR, LPDWORD); - INT GetAddressByNameW(DWORD, LPGUID, LPWSTR, LPINT, DWORD, - LPSERVICE_ASYNC_INFO, LPVOID, LPDWORD, LPWSTR, LPDWORD); -} - -version (Unicode) { - alias SERVICE_INFOW SERVICE_INFO; - alias SetServiceW SetService; - alias GetAddressByNameW GetAddressByName; -} else { - alias SERVICE_INFOA SERVICE_INFO; - alias SetServiceA SetService; - alias GetAddressByNameA GetAddressByName; -} - -alias SERVICE_INFO _SERVICE_INFO; -alias SERVICE_INFO* LPSERVICE_INFO; diff --git a/3rdparty-extra/win32/ntdef.d b/3rdparty-extra/win32/ntdef.d deleted file mode 100644 index 8eaa1d922..000000000 --- a/3rdparty-extra/win32/ntdef.d +++ /dev/null @@ -1,81 +0,0 @@ -/***********************************************************************\ -* ntdef.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ntdef; -version(Windows): - -private import win32.basetsd, win32.subauth, win32.windef, win32.winnt; - -const uint - OBJ_INHERIT = 0x0002, - OBJ_PERMANENT = 0x0010, - OBJ_EXCLUSIVE = 0x0020, - OBJ_CASE_INSENSITIVE = 0x0040, - OBJ_OPENIF = 0x0080, - OBJ_OPENLINK = 0x0100, - OBJ_VALID_ATTRIBUTES = 0x01F2; - -void InitializeObjectAttributes(OBJECT_ATTRIBUTES* p, UNICODE_STRING* n, - uint a, HANDLE r, void* s) { - with (*p) { - Length = OBJECT_ATTRIBUTES.sizeof; - RootDirectory = r; - Attributes = a; - ObjectName = n; - SecurityDescriptor = s; - SecurityQualityOfService = null; - } -} - -bool NT_SUCCESS(int x) { return x >= 0; } - -/* In MinGW, NTSTATUS, UNICODE_STRING, STRING and their associated pointer - * type aliases are defined in ntdef.h, ntsecapi.h and subauth.h, each of - * which checks that none of the others is already included. - */ -alias int NTSTATUS; -alias int* PNTSTATUS; - -struct UNICODE_STRING { - USHORT Length; - USHORT MaximumLength; - PWSTR Buffer; -} -alias UNICODE_STRING* PUNICODE_STRING; -alias const(UNICODE_STRING)* PCUNICODE_STRING; - -struct STRING { - USHORT Length; - USHORT MaximumLength; - PCHAR Buffer; -} -alias STRING ANSI_STRING, OEM_STRING; -alias STRING* PSTRING, PANSI_STRING, POEM_STRING; - -alias LARGE_INTEGER PHYSICAL_ADDRESS; -alias LARGE_INTEGER* PPHYSICAL_ADDRESS; - -enum SECTION_INHERIT { - ViewShare = 1, - ViewUnmap -} - -/* In MinGW, this is defined in ntdef.h and ntsecapi.h, each of which checks - * that the other isn't already included. - */ -struct OBJECT_ATTRIBUTES { - ULONG Length = OBJECT_ATTRIBUTES.sizeof; - HANDLE RootDirectory; - PUNICODE_STRING ObjectName; - ULONG Attributes; - PVOID SecurityDescriptor; - PVOID SecurityQualityOfService; -} -alias OBJECT_ATTRIBUTES* POBJECT_ATTRIBUTES; diff --git a/3rdparty-extra/win32/ntdll.d b/3rdparty-extra/win32/ntdll.d deleted file mode 100644 index 0d21bcfa0..000000000 --- a/3rdparty-extra/win32/ntdll.d +++ /dev/null @@ -1,23 +0,0 @@ -/***********************************************************************\ -* ntdll.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ntdll; -version(Windows): - -private import win32.w32api; - - -enum SHUTDOWN_ACTION { - ShutdownNoReboot, - ShutdownReboot, - ShutdownPowerOff -} - -extern (Windows) uint NtShutdownSystem(SHUTDOWN_ACTION Action); diff --git a/3rdparty-extra/win32/ntldap.d b/3rdparty-extra/win32/ntldap.d deleted file mode 100644 index 735405f73..000000000 --- a/3rdparty-extra/win32/ntldap.d +++ /dev/null @@ -1,59 +0,0 @@ -/***********************************************************************\ -* ntldap.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ntldap; -version(Windows): - -/* TOTHINKABOUT: These constants don't have ANSI/Unicode versioned - * aliases. Should we merge them anyway? - */ - -const char[] - LDAP_SERVER_ASQ_OID = "1.2.840.113556.1.4.1504", - LDAP_SERVER_DIRSYNC_OID = "1.2.840.113556.1.4.841", - LDAP_SERVER_SD_FLAGS_OID = "1.2.840.113556.1.4.801", - LDAP_SERVER_FAST_BIND_OID = "1.2.840.113556.1.4.1781", - LDAP_MATCHING_RULE_BIT_OR = "1.2.840.113556.1.4.804", - LDAP_MATCHING_RULE_BIT_AND = "1.2.840.113556.1.4.803", - LDAP_SERVER_EXTENDED_DN_OID = "1.2.840.113556.1.4.529", - LDAP_SERVER_LAZY_COMMIT_OID = "1.2.840.113556.1.4.619", - LDAP_SERVER_TREE_DELETE_OID = "1.2.840.113556.1.4.805", - LDAP_SERVER_VERIFY_NAME_OID = "1.2.840.113556.1.4.1338", - LDAP_SERVER_SHOW_DELETED_OID = "1.2.840.113556.1.4.417", - LDAP_SERVER_NOTIFICATION_OID = "1.2.840.113556.1.4.528", - LDAP_SERVER_DOMAIN_SCOPE_OID = "1.2.840.113556.1.4.1339", - LDAP_CAP_ACTIVE_DIRECTORY_OID = "1.2.840.113556.1.4.800", - LDAP_SERVER_SEARCH_OPTIONS_OID = "1.2.840.113556.1.4.1340", - LDAP_CAP_ACTIVE_DIRECTORY_V51_OID = "1.2.840.113556.1.4.1670", - LDAP_SERVER_PERMISSIVE_MODIFY_OID = "1.2.840.113556.1.4.1413", - LDAP_SERVER_CROSSDOM_MOVE_TARGET_OID = "1.2.840.113556.1.4.521"; - -const wchar[] - LDAP_SERVER_ASQ_OID_W = "1.2.840.113556.1.4.1504", - LDAP_SERVER_DIRSYNC_OID_W = "1.2.840.113556.1.4.841", - LDAP_SERVER_SD_FLAGS_OID_W = "1.2.840.113556.1.4.801", - LDAP_SERVER_FAST_BIND_OID_W = "1.2.840.113556.1.4.1781", - LDAP_MATCHING_RULE_BIT_OR_W = "1.2.840.113556.1.4.804", - LDAP_MATCHING_RULE_BIT_AND_W = "1.2.840.113556.1.4.803", - LDAP_SERVER_EXTENDED_DN_OID_W = "1.2.840.113556.1.4.529", - LDAP_SERVER_LAZY_COMMIT_OID_W = "1.2.840.113556.1.4.619", - LDAP_SERVER_TREE_DELETE_OID_W = "1.2.840.113556.1.4.805", - LDAP_SERVER_VERIFY_NAME_OID_W = "1.2.840.113556.1.4.1338", - LDAP_SERVER_SHOW_DELETED_OID_W = "1.2.840.113556.1.4.417", - LDAP_SERVER_NOTIFICATION_OID_W = "1.2.840.113556.1.4.528", - LDAP_SERVER_DOMAIN_SCOPE_OID_W = "1.2.840.113556.1.4.1339", - LDAP_CAP_ACTIVE_DIRECTORY_OID_W = "1.2.840.113556.1.4.800", - LDAP_SERVER_SEARCH_OPTIONS_OID_W = "1.2.840.113556.1.4.1340", - LDAP_CAP_ACTIVE_DIRECTORY_V51_OID_W = "1.2.840.113556.1.4.1670", - LDAP_SERVER_PERMISSIVE_MODIFY_OID_W = "1.2.840.113556.1.4.1413", - LDAP_SERVER_CROSSDOM_MOVE_TARGET_OID_W = "1.2.840.113556.1.4.521"; - -const SERVER_SEARCH_FLAG_DOMAIN_SCOPE = 1; -const SERVER_SEARCH_FLAG_PHANTOM_ROOT = 2; diff --git a/3rdparty-extra/win32/ntsecapi.d b/3rdparty-extra/win32/ntsecapi.d deleted file mode 100644 index d9b43dd16..000000000 --- a/3rdparty-extra/win32/ntsecapi.d +++ /dev/null @@ -1,794 +0,0 @@ -/***********************************************************************\ -* ntsecapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ntsecapi; -version(Windows): - -private import - win32.basetyps, win32.ntdef, win32.windef, win32.winnt, win32.w32api; - -// FIXME: check types and grouping of constants -// FIXME: check Windows version support - -const KERB_WRAP_NO_ENCRYPT = 0x80000001; - -const LOGON_GUEST = 0x00000001; -const LOGON_NOENCRYPTION = 0x00000002; -const LOGON_CACHED_ACCOUNT = 0x00000004; -const LOGON_USED_LM_PASSWORD = 0x00000008; -const LOGON_EXTRA_SIDS = 0x00000020; -const LOGON_SUBAUTH_SESSION_KEY = 0x00000040; -const LOGON_SERVER_TRUST_ACCOUNT = 0x00000080; -const LOGON_NTLMV2_ENABLED = 0x00000100; -const LOGON_RESOURCE_GROUPS = 0x00000200; -const LOGON_PROFILE_PATH_RETURNED = 0x00000400; -const LOGON_GRACE_LOGON = 0x01000000; - -enum { - LSA_MODE_PASSWORD_PROTECTED = 1, - LSA_MODE_INDIVIDUAL_ACCOUNTS, - LSA_MODE_MANDATORY_ACCESS, - LSA_MODE_LOG_FULL -} - -bool LSA_SUCCESS(int x) { return x >= 0; } - -/* TOTHINKABOUT: These constants don't have ANSI/Unicode versioned - * aliases. Should we merge them anyway? - */ -const char[] MICROSOFT_KERBEROS_NAME_A = "Kerberos"; -const wchar[] MICROSOFT_KERBEROS_NAME_W = "Kerberos"; -const char[] MSV1_0_PACKAGE_NAME = "MICROSOFT_AUTHENTICATION_PACKAGE_V1_0"; -const wchar[] MSV1_0_PACKAGE_NAMEW = "MICROSOFT_AUTHENTICATION_PACKAGE_V1_0"; - -const MSV1_0_ALLOW_SERVER_TRUST_ACCOUNT = 32; -const MSV1_0_ALLOW_WORKSTATION_TRUST_ACCOUNT = 2048; -const MSV1_0_CLEARTEXT_PASSWORD_ALLOWED = 2; -const MSV1_0_CRED_LM_PRESENT = 1; -const MSV1_0_CRED_NT_PRESENT = 2; -const MSV1_0_CRED_VERSION = 0; -const MSV1_0_DONT_TRY_GUEST_ACCOUNT = 16; -const MSV1_0_MAX_NTLM3_LIFE = 1800; -const MSV1_0_MAX_AVL_SIZE = 64000; -const MSV1_0_MNS_LOGON = 16777216; - -const size_t - MSV1_0_CHALLENGE_LENGTH = 8, - MSV1_0_LANMAN_SESSION_KEY_LENGTH = 8, - MSV1_0_NTLM3_RESPONSE_LENGTH = 16, - MSV1_0_NTLM3_OWF_LENGTH = 16, - MSV1_0_NTLM3_INPUT_LENGTH = MSV1_0_NTLM3_RESPONSE.sizeof - - MSV1_0_NTLM3_RESPONSE_LENGTH, - MSV1_0_OWF_PASSWORD_LENGTH = 16, - MSV1_0_PACKAGE_NAMEW_LENGTH = MSV1_0_PACKAGE_NAMEW.sizeof - - WCHAR.sizeof; - -const MSV1_0_RETURN_USER_PARAMETERS = 8; -const MSV1_0_RETURN_PASSWORD_EXPIRY = 64; -const MSV1_0_RETURN_PROFILE_PATH = 512; -const MSV1_0_SUBAUTHENTICATION_DLL_EX = 1048576; -const MSV1_0_SUBAUTHENTICATION_DLL = 0xff000000; -const MSV1_0_SUBAUTHENTICATION_DLL_SHIFT = 24; -const MSV1_0_SUBAUTHENTICATION_DLL_RAS = 2; -const MSV1_0_SUBAUTHENTICATION_DLL_IIS = 132; -const MSV1_0_SUBAUTHENTICATION_FLAGS = 0xff000000; -const MSV1_0_TRY_GUEST_ACCOUNT_ONLY = 256; -const MSV1_0_TRY_SPECIFIED_DOMAIN_ONLY = 1024; -const MSV1_0_UPDATE_LOGON_STATISTICS = 4; -const MSV1_0_USE_CLIENT_CHALLENGE = 128; -const MSV1_0_USER_SESSION_KEY_LENGTH = 16; - -const char[] - MSV1_0_SUBAUTHENTICATION_KEY - = `System\CurrentControlSet\Control\Lsa\MSV1_0`, - MSV1_0_SUBAUTHENTICATION_VALUE = "Auth"; - -const ACCESS_MASK - POLICY_VIEW_LOCAL_INFORMATION = 0x0001, - POLICY_VIEW_AUDIT_INFORMATION = 0x0002, - POLICY_GET_PRIVATE_INFORMATION = 0x0004, - POLICY_TRUST_ADMIN = 0x0008, - POLICY_CREATE_ACCOUNT = 0x0010, - POLICY_CREATE_SECRET = 0x0020, - POLICY_CREATE_PRIVILEGE = 0x0040, - POLICY_SET_DEFAULT_QUOTA_LIMITS = 0x0080, - POLICY_SET_AUDIT_REQUIREMENTS = 0x0100, - POLICY_AUDIT_LOG_ADMIN = 0x0200, - POLICY_SERVER_ADMIN = 0x0400, - POLICY_LOOKUP_NAMES = 0x0800, - - POLICY_READ = STANDARD_RIGHTS_READ | 0x0006, - POLICY_WRITE = STANDARD_RIGHTS_WRITE | 0x07F8, - POLICY_EXECUTE = STANDARD_RIGHTS_EXECUTE | 0x0801, - POLICY_ALL_ACCESS = STANDARD_RIGHTS_REQUIRED | 0x0FFF; - -const POLICY_AUDIT_EVENT_UNCHANGED = 0; -const POLICY_AUDIT_EVENT_SUCCESS = 1; -const POLICY_AUDIT_EVENT_FAILURE = 2; -const POLICY_AUDIT_EVENT_NONE = 4; -const POLICY_AUDIT_EVENT_MASK = 7; - -enum { - POLICY_LOCATION_LOCAL = 1, - POLICY_LOCATION_DS -} - -enum : uint { - POLICY_MACHINE_POLICY_LOCAL = 0, - POLICY_MACHINE_POLICY_DEFAULTED, - POLICY_MACHINE_POLICY_EXPLICIT, - POLICY_MACHINE_POLICY_UNKNOWN = 0xFFFFFFFF -} - - -const POLICY_QOS_SCHANEL_REQUIRED = 0x0001; -const POLICY_QOS_OUTBOUND_INTEGRITY = 0x0002; -const POLICY_QOS_OUTBOUND_CONFIDENTIALITY = 0x0004; -const POLICY_QOS_INBOUND_INTEGREITY = 0x0008; -const POLICY_QOS_INBOUND_CONFIDENTIALITY = 0x0010; -const POLICY_QOS_ALLOW_LOCAL_ROOT_CERT_STORE = 0x0020; -const POLICY_QOS_RAS_SERVER_ALLOWED = 0x0040; -const POLICY_QOS_DHCP_SERVER_ALLOWD = 0x0080; - -const POLICY_KERBEROS_FORWARDABLE = 1; -const POLICY_KERBEROS_PROXYABLE = 2; -const POLICY_KERBEROS_RENEWABLE = 4; -const POLICY_KERBEROS_POSTDATEABLE = 8; - -const char[] - SAM_PASSWORD_CHANGE_NOTIFY_ROUTINE = "PasswordChangeNotify", - SAM_INIT_NOTIFICATION_ROUTINE = "InitializeChangeNotify", - SAM_PASSWORD_FILTER_ROUTINE = "PasswordFilter"; - -const TCHAR[] - SE_INTERACTIVE_LOGON_NAME = "SeInteractiveLogonRight", - SE_NETWORK_LOGON_NAME = "SeNetworkLogonRight", - SE_BATCH_LOGON_NAME = "SeBatchLogonRight", - SE_SERVICE_LOGON_NAME = "SeServiceLogonRight"; - -enum { - TRUST_ATTRIBUTE_NON_TRANSITIVE = 1, - TRUST_ATTRIBUTE_UPLEVEL_ONLY = 2, - TRUST_ATTRIBUTE_TREE_PARENT = 4194304, - TRUST_ATTRIBUTES_VALID = -16580609 -} - -enum { - TRUST_AUTH_TYPE_NONE, - TRUST_AUTH_TYPE_NT4OWF, - TRUST_AUTH_TYPE_CLEAR -} - -enum { - TRUST_DIRECTION_DISABLED, - TRUST_DIRECTION_INBOUND, - TRUST_DIRECTION_OUTBOUND, - TRUST_DIRECTION_BIDIRECTIONAL -} - -enum { - TRUST_TYPE_DOWNLEVEL = 1, - TRUST_TYPE_UPLEVEL, - TRUST_TYPE_MIT, - TRUST_TYPE_DCE -} - -alias UNICODE_STRING LSA_UNICODE_STRING; -alias UNICODE_STRING* PLSA_UNICODE_STRING; -alias STRING LSA_STRING; -alias STRING* PLSA_STRING; - -enum MSV1_0_LOGON_SUBMIT_TYPE { - MsV1_0InteractiveLogon = 2, - MsV1_0Lm20Logon, - MsV1_0NetworkLogon, - MsV1_0SubAuthLogon, - MsV1_0WorkstationUnlockLogon = 7 -} -alias MSV1_0_LOGON_SUBMIT_TYPE* PMSV1_0_LOGON_SUBMIT_TYPE; - -enum MSV1_0_PROFILE_BUFFER_TYPE { - MsV1_0InteractiveProfile = 2, - MsV1_0Lm20LogonProfile, - MsV1_0SmartCardProfile -} -alias MSV1_0_PROFILE_BUFFER_TYPE* PMSV1_0_PROFILE_BUFFER_TYPE; - - -enum MSV1_0_AVID { - MsvAvEOL, - MsvAvNbComputerName, - MsvAvNbDomainName, - MsvAvDnsComputerName, - MsvAvDnsDomainName -} - -enum MSV1_0_PROTOCOL_MESSAGE_TYPE { - MsV1_0Lm20ChallengeRequest = 0, - MsV1_0Lm20GetChallengeResponse, - MsV1_0EnumerateUsers, - MsV1_0GetUserInfo, - MsV1_0ReLogonUsers, - MsV1_0ChangePassword, - MsV1_0ChangeCachedPassword, - MsV1_0GenericPassthrough, - MsV1_0CacheLogon, - MsV1_0SubAuth, - MsV1_0DeriveCredential, - MsV1_0CacheLookup -} -alias MSV1_0_PROTOCOL_MESSAGE_TYPE* PMSV1_0_PROTOCOL_MESSAGE_TYPE; - -enum POLICY_LSA_SERVER_ROLE { - PolicyServerRoleBackup = 2, - PolicyServerRolePrimary -} -alias POLICY_LSA_SERVER_ROLE* PPOLICY_LSA_SERVER_ROLE; - -enum POLICY_SERVER_ENABLE_STATE { - PolicyServerEnabled = 2, - PolicyServerDisabled -} -alias POLICY_SERVER_ENABLE_STATE* PPOLICY_SERVER_ENABLE_STATE; - -enum POLICY_INFORMATION_CLASS { - PolicyAuditLogInformation = 1, - PolicyAuditEventsInformation, - PolicyPrimaryDomainInformation, - PolicyPdAccountInformation, - PolicyAccountDomainInformation, - PolicyLsaServerRoleInformation, - PolicyReplicaSourceInformation, - PolicyDefaultQuotaInformation, - PolicyModificationInformation, - PolicyAuditFullSetInformation, - PolicyAuditFullQueryInformation, - PolicyDnsDomainInformation, - PolicyEfsInformation -} -alias POLICY_INFORMATION_CLASS* PPOLICY_INFORMATION_CLASS; - -enum POLICY_AUDIT_EVENT_TYPE { - AuditCategorySystem, - AuditCategoryLogon, - AuditCategoryObjectAccess, - AuditCategoryPrivilegeUse, - AuditCategoryDetailedTracking, - AuditCategoryPolicyChange, - AuditCategoryAccountManagement, - AuditCategoryDirectoryServiceAccess, - AuditCategoryAccountLogon -} -alias POLICY_AUDIT_EVENT_TYPE* PPOLICY_AUDIT_EVENT_TYPE; - -enum POLICY_LOCAL_INFORMATION_CLASS { - PolicyLocalAuditEventsInformation = 1, - PolicyLocalPdAccountInformation, - PolicyLocalAccountDomainInformation, - PolicyLocalLsaServerRoleInformation, - PolicyLocalReplicaSourceInformation, - PolicyLocalModificationInformation, - PolicyLocalAuditFullSetInformation, - PolicyLocalAuditFullQueryInformation, - PolicyLocalDnsDomainInformation, - PolicyLocalIPSecReferenceInformation, - PolicyLocalMachinePasswordInformation, - PolicyLocalQualityOfServiceInformation, - PolicyLocalPolicyLocationInformation -} -alias POLICY_LOCAL_INFORMATION_CLASS* PPOLICY_LOCAL_INFORMATION_CLASS; - -enum POLICY_DOMAIN_INFORMATION_CLASS { - PolicyDomainIPSecReferenceInformation = 1, - PolicyDomainQualityOfServiceInformation, - PolicyDomainEfsInformation, - PolicyDomainPublicKeyInformation, - PolicyDomainPasswordPolicyInformation, - PolicyDomainLockoutInformation, - PolicyDomainKerberosTicketInformation -} -alias POLICY_DOMAIN_INFORMATION_CLASS* PPOLICY_DOMAIN_INFORMATION_CLASS; - -enum SECURITY_LOGON_TYPE { - Interactive = 2, - Network, - Batch, - Service, - Proxy, - Unlock -} -alias SECURITY_LOGON_TYPE* PSECURITY_LOGON_TYPE; - -enum TRUSTED_INFORMATION_CLASS { - TrustedDomainNameInformation = 1, - TrustedControllersInformation, - TrustedPosixOffsetInformation, - TrustedPasswordInformation, - TrustedDomainInformationBasic, - TrustedDomainInformationEx, - TrustedDomainAuthInformation, - TrustedDomainFullInformation -} -alias TRUSTED_INFORMATION_CLASS* PTRUSTED_INFORMATION_CLASS; - -struct DOMAIN_PASSWORD_INFORMATION { - USHORT MinPasswordLength; - USHORT PasswordHistoryLength; - ULONG PasswordProperties; - LARGE_INTEGER MaxPasswordAge; - LARGE_INTEGER MinPasswordAge; -} -alias DOMAIN_PASSWORD_INFORMATION* PDOMAIN_PASSWORD_INFORMATION; - -struct LSA_ENUMERATION_INFORMATION { - PSID Sid; -} -alias LSA_ENUMERATION_INFORMATION* PLSA_ENUMERATION_INFORMATION; - -alias OBJECT_ATTRIBUTES LSA_OBJECT_ATTRIBUTES; -alias OBJECT_ATTRIBUTES* PLSA_OBJECT_ATTRIBUTES; - -struct LSA_TRUST_INFORMATION { - LSA_UNICODE_STRING Name; - PSID Sid; -} -alias LSA_TRUST_INFORMATION TRUSTED_DOMAIN_INFORMATION_BASIC; -alias LSA_TRUST_INFORMATION* PLSA_TRUST_INFORMATION; -/* in MinGW (further down the code): - * typedef PLSA_TRUST_INFORMATION *PTRUSTED_DOMAIN_INFORMATION_BASIC; - * but it doesn't look right.... - */ -alias LSA_TRUST_INFORMATION** PTRUSTED_DOMAIN_INFORMATION_BASIC; - -struct LSA_REFERENCED_DOMAIN_LIST { - ULONG Entries; - PLSA_TRUST_INFORMATION Domains; -} -alias LSA_REFERENCED_DOMAIN_LIST* PLSA_REFERENCED_DOMAIN_LIST; - -struct LSA_TRANSLATED_SID { - SID_NAME_USE Use; - ULONG RelativeId; - LONG DomainIndex; -} -alias LSA_TRANSLATED_SID* PLSA_TRANSLATED_SID; - -struct LSA_TRANSLATED_NAME { - SID_NAME_USE Use; - LSA_UNICODE_STRING Name; - LONG DomainIndex; -} -alias LSA_TRANSLATED_NAME* PLSA_TRANSLATED_NAME; - -struct MSV1_0_INTERACTIVE_LOGON { - MSV1_0_LOGON_SUBMIT_TYPE MessageType; - UNICODE_STRING LogonDomainName; - UNICODE_STRING UserName; - UNICODE_STRING Password; -} -alias MSV1_0_INTERACTIVE_LOGON* PMSV1_0_INTERACTIVE_LOGON; - -struct MSV1_0_INTERACTIVE_PROFILE { - MSV1_0_PROFILE_BUFFER_TYPE MessageType; - USHORT LogonCount; - USHORT BadPasswordCount; - LARGE_INTEGER LogonTime; - LARGE_INTEGER LogoffTime; - LARGE_INTEGER KickOffTime; - LARGE_INTEGER PasswordLastSet; - LARGE_INTEGER PasswordCanChange; - LARGE_INTEGER PasswordMustChange; - UNICODE_STRING LogonScript; - UNICODE_STRING HomeDirectory; - UNICODE_STRING FullName; - UNICODE_STRING ProfilePath; - UNICODE_STRING HomeDirectoryDrive; - UNICODE_STRING LogonServer; - ULONG UserFlags; -} -alias MSV1_0_INTERACTIVE_PROFILE* PMSV1_0_INTERACTIVE_PROFILE; - -struct MSV1_0_LM20_LOGON { - MSV1_0_LOGON_SUBMIT_TYPE MessageType; - UNICODE_STRING LogonDomainName; - UNICODE_STRING UserName; - UNICODE_STRING Workstation; - UCHAR[MSV1_0_CHALLENGE_LENGTH] ChallengeToClient; - STRING CaseSensitiveChallengeResponse; - STRING CaseInsensitiveChallengeResponse; - ULONG ParameterControl; -} -alias MSV1_0_LM20_LOGON* PMSV1_0_LM20_LOGON; - -static if (_WIN32_WINNT >= 0x500) { - struct MSV1_0_SUBAUTH_LOGON { - MSV1_0_LOGON_SUBMIT_TYPE MessageType; - UNICODE_STRING LogonDomainName; - UNICODE_STRING UserName; - UNICODE_STRING Workstation; - UCHAR[MSV1_0_CHALLENGE_LENGTH] ChallengeToClient; - STRING AuthenticationInfo1; - STRING AuthenticationInfo2; - ULONG ParameterControl; - ULONG SubAuthPackageId; - } - alias MSV1_0_SUBAUTH_LOGON* PMSV1_0_SUBAUTH_LOGON; -} - -struct MSV1_0_LM20_LOGON_PROFILE { - MSV1_0_PROFILE_BUFFER_TYPE MessageType; - LARGE_INTEGER KickOffTime; - LARGE_INTEGER LogoffTime; - ULONG UserFlags; - UCHAR[MSV1_0_USER_SESSION_KEY_LENGTH] UserSessionKey; - UNICODE_STRING LogonDomainName; - UCHAR[MSV1_0_LANMAN_SESSION_KEY_LENGTH] LanmanSessionKey; - UNICODE_STRING LogonServer; - UNICODE_STRING UserParameters; -} -alias MSV1_0_LM20_LOGON_PROFILE* PMSV1_0_LM20_LOGON_PROFILE; - -struct MSV1_0_SUPPLEMENTAL_CREDENTIAL { - ULONG Version; - ULONG Flags; - UCHAR[MSV1_0_OWF_PASSWORD_LENGTH] LmPassword; - UCHAR[MSV1_0_OWF_PASSWORD_LENGTH] NtPassword; -} -alias MSV1_0_SUPPLEMENTAL_CREDENTIAL* PMSV1_0_SUPPLEMENTAL_CREDENTIAL; - -struct MSV1_0_NTLM3_RESPONSE { - UCHAR[MSV1_0_NTLM3_RESPONSE_LENGTH] Response; - UCHAR RespType; - UCHAR HiRespType; - USHORT Flags; - ULONG MsgWord; - ULONGLONG TimeStamp; - UCHAR[MSV1_0_CHALLENGE_LENGTH] ChallengeFromClient; - ULONG AvPairsOff; - UCHAR _Buffer; - UCHAR* Buffer() { return &_Buffer; } -} -alias MSV1_0_NTLM3_RESPONSE* PMSV1_0_NTLM3_RESPONSE; - -struct MSV1_0_AV_PAIR { - USHORT AvId; - USHORT AvLen; -} -alias MSV1_0_AV_PAIR* PMSV1_0_AV_PAIR; - -struct MSV1_0_CHANGEPASSWORD_REQUEST { - MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType; - UNICODE_STRING DomainName; - UNICODE_STRING AccountName; - UNICODE_STRING OldPassword; - UNICODE_STRING NewPassword; - BOOLEAN Impersonating; -} -alias MSV1_0_CHANGEPASSWORD_REQUEST* PMSV1_0_CHANGEPASSWORD_REQUEST; - -struct MSV1_0_CHANGEPASSWORD_RESPONSE { - MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType; - BOOLEAN PasswordInfoValid; - DOMAIN_PASSWORD_INFORMATION DomainPasswordInfo; -} -alias MSV1_0_CHANGEPASSWORD_RESPONSE* PMSV1_0_CHANGEPASSWORD_RESPONSE; - -struct MSV1_0_SUBAUTH_REQUEST { - MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType; - ULONG SubAuthPackageId; - ULONG SubAuthInfoLength; - PUCHAR SubAuthSubmitBuffer; -} -alias MSV1_0_SUBAUTH_REQUEST* PMSV1_0_SUBAUTH_REQUEST; - -struct MSV1_0_SUBAUTH_RESPONSE { - MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType; - ULONG SubAuthInfoLength; - PUCHAR SubAuthReturnBuffer; -} -alias MSV1_0_SUBAUTH_RESPONSE* PMSV1_0_SUBAUTH_RESPONSE; - -const MSV1_0_DERIVECRED_TYPE_SHA1 = 0; - -struct MSV1_0_DERIVECRED_REQUEST { - MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType; - LUID LogonId; - ULONG DeriveCredType; - ULONG DeriveCredInfoLength; - UCHAR _DeriveCredSubmitBuffer; - UCHAR* DeriveCredSubmitBuffer() { return &_DeriveCredSubmitBuffer; } -} -alias MSV1_0_DERIVECRED_REQUEST* PMSV1_0_DERIVECRED_REQUEST; - -struct MSV1_0_DERIVECRED_RESPONSE { - MSV1_0_PROTOCOL_MESSAGE_TYPE MessageType; - ULONG DeriveCredInfoLength; - UCHAR _DeriveCredReturnBuffer; - UCHAR* DeriveCredReturnBuffer() { return &_DeriveCredReturnBuffer; } -} -alias MSV1_0_DERIVECRED_RESPONSE* PMSV1_0_DERIVECRED_RESPONSE; - -alias uint LSA_ENUMERATION_HANDLE, LSA_OPERATIONAL_MODE, - POLICY_AUDIT_EVENT_OPTIONS; -alias uint* PLSA_ENUMERATION_HANDLE, PLSA_OPERATIONAL_MODE, - PPOLICY_AUDIT_EVENT_OPTIONS; - -struct POLICY_PRIVILEGE_DEFINITION { - LSA_UNICODE_STRING Name; - LUID LocalValue; -} -alias POLICY_PRIVILEGE_DEFINITION* PPOLICY_PRIVILEGE_DEFINITION; - -struct POLICY_AUDIT_LOG_INFO { - ULONG AuditLogPercentFull; - ULONG MaximumLogSize; - LARGE_INTEGER AuditRetentionPeriod; - BOOLEAN AuditLogFullShutdownInProgress; - LARGE_INTEGER TimeToShutdown; - ULONG NextAuditRecordId; -} -alias POLICY_AUDIT_LOG_INFO* PPOLICY_AUDIT_LOG_INFO; - -struct POLICY_AUDIT_EVENTS_INFO { - BOOLEAN AuditingMode; - PPOLICY_AUDIT_EVENT_OPTIONS EventAuditingOptions; - ULONG MaximumAuditEventCount; -} -alias POLICY_AUDIT_EVENTS_INFO* PPOLICY_AUDIT_EVENTS_INFO; - -struct POLICY_ACCOUNT_DOMAIN_INFO { - LSA_UNICODE_STRING DomainName; - PSID DomainSid; -} -alias POLICY_ACCOUNT_DOMAIN_INFO* PPOLICY_ACCOUNT_DOMAIN_INFO; - -struct POLICY_PRIMARY_DOMAIN_INFO { - LSA_UNICODE_STRING Name; - PSID Sid; -} -alias POLICY_PRIMARY_DOMAIN_INFO* PPOLICY_PRIMARY_DOMAIN_INFO; - -struct POLICY_DNS_DOMAIN_INFO { - LSA_UNICODE_STRING Name; - LSA_UNICODE_STRING DnsDomainName; - LSA_UNICODE_STRING DnsTreeName; - GUID DomainGuid; - PSID Sid; -} -alias POLICY_DNS_DOMAIN_INFO* PPOLICY_DNS_DOMAIN_INFO; - -struct POLICY_PD_ACCOUNT_INFO { - LSA_UNICODE_STRING Name; -} -alias POLICY_PD_ACCOUNT_INFO* PPOLICY_PD_ACCOUNT_INFO; - -struct POLICY_LSA_SERVER_ROLE_INFO { - POLICY_LSA_SERVER_ROLE LsaServerRole; -} -alias POLICY_LSA_SERVER_ROLE_INFO* PPOLICY_LSA_SERVER_ROLE_INFO; - -struct POLICY_REPLICA_SOURCE_INFO { - LSA_UNICODE_STRING ReplicaSource; - LSA_UNICODE_STRING ReplicaAccountName; -} -alias POLICY_REPLICA_SOURCE_INFO* PPOLICY_REPLICA_SOURCE_INFO; - -struct POLICY_DEFAULT_QUOTA_INFO { - QUOTA_LIMITS QuotaLimits; -} -alias POLICY_DEFAULT_QUOTA_INFO* PPOLICY_DEFAULT_QUOTA_INFO; - -struct POLICY_MODIFICATION_INFO { - LARGE_INTEGER ModifiedId; - LARGE_INTEGER DatabaseCreationTime; -} -alias POLICY_MODIFICATION_INFO* PPOLICY_MODIFICATION_INFO; - -struct POLICY_AUDIT_FULL_SET_INFO { - BOOLEAN ShutDownOnFull; -} -alias POLICY_AUDIT_FULL_SET_INFO* PPOLICY_AUDIT_FULL_SET_INFO; - -struct POLICY_AUDIT_FULL_QUERY_INFO { - BOOLEAN ShutDownOnFull; - BOOLEAN LogIsFull; -} -alias POLICY_AUDIT_FULL_QUERY_INFO* PPOLICY_AUDIT_FULL_QUERY_INFO; - -struct POLICY_EFS_INFO { - ULONG InfoLength; - PUCHAR EfsBlob; -} -alias POLICY_EFS_INFO* PPOLICY_EFS_INFO; - -struct POLICY_LOCAL_IPSEC_REFERENCE_INFO { - LSA_UNICODE_STRING ObjectPath; -} -alias POLICY_LOCAL_IPSEC_REFERENCE_INFO* PPOLICY_LOCAL_IPSEC_REFERENCE_INFO; - -struct POLICY_LOCAL_MACHINE_PASSWORD_INFO { - LARGE_INTEGER PasswordChangeInterval; -} -alias POLICY_LOCAL_MACHINE_PASSWORD_INFO* PPOLICY_LOCAL_MACHINE_PASSWORD_INFO; - -struct POLICY_LOCAL_POLICY_LOCATION_INFO { - ULONG PolicyLocation; -} -alias POLICY_LOCAL_POLICY_LOCATION_INFO* PPOLICY_LOCAL_POLICY_LOCATION_INFO; - -struct POLICY_LOCAL_QUALITY_OF_SERVICE_INFO{ - ULONG QualityOfService; -} -alias POLICY_LOCAL_QUALITY_OF_SERVICE_INFO - POLICY_DOMAIN_QUALITY_OF_SERVICE_INFO; -alias POLICY_LOCAL_QUALITY_OF_SERVICE_INFO* - PPOLICY_LOCAL_QUALITY_OF_SERVICE_INFO, - PPOLICY_DOMAIN_QUALITY_OF_SERVICE_INFO; - -struct POLICY_DOMAIN_PUBLIC_KEY_INFO { - ULONG InfoLength; - PUCHAR PublicKeyInfo; -} -alias POLICY_DOMAIN_PUBLIC_KEY_INFO* PPOLICY_DOMAIN_PUBLIC_KEY_INFO; - -struct POLICY_DOMAIN_LOCKOUT_INFO { - LARGE_INTEGER LockoutDuration; - LARGE_INTEGER LockoutObservationWindow; - USHORT LockoutThreshold; -} -alias POLICY_DOMAIN_LOCKOUT_INFO* PPOLICY_DOMAIN_LOCKOUT_INFO; - -struct POLICY_DOMAIN_PASSWORD_INFO { - USHORT MinPasswordLength; - USHORT PasswordHistoryLength; - ULONG PasswordProperties; - LARGE_INTEGER MaxPasswordAge; - LARGE_INTEGER MinPasswordAge; -} -alias POLICY_DOMAIN_PASSWORD_INFO* PPOLICY_DOMAIN_PASSWORD_INFO; - -struct POLICY_DOMAIN_KERBEROS_TICKET_INFO { - ULONG AuthenticationOptions; - LARGE_INTEGER MinTicketAge; - LARGE_INTEGER MaxTicketAge; - LARGE_INTEGER MaxRenewAge; - LARGE_INTEGER ProxyLifetime; - LARGE_INTEGER ForceLogoff; -} -alias POLICY_DOMAIN_KERBEROS_TICKET_INFO* PPOLICY_DOMAIN_KERBEROS_TICKET_INFO; - -mixin DECLARE_HANDLE!("LSA_HANDLE"); -alias LSA_HANDLE* PLSA_HANDLE; - -struct TRUSTED_DOMAIN_NAME_INFO { - LSA_UNICODE_STRING Name; -} -alias TRUSTED_DOMAIN_NAME_INFO* PTRUSTED_DOMAIN_NAME_INFO; - -struct TRUSTED_CONTROLLERS_INFO { - ULONG Entries; - PLSA_UNICODE_STRING Names; -} -alias TRUSTED_CONTROLLERS_INFO* PTRUSTED_CONTROLLERS_INFO; - -struct TRUSTED_POSIX_OFFSET_INFO { - ULONG Offset; -} -alias TRUSTED_POSIX_OFFSET_INFO* PTRUSTED_POSIX_OFFSET_INFO; - -struct TRUSTED_PASSWORD_INFO { - LSA_UNICODE_STRING Password; - LSA_UNICODE_STRING OldPassword; -} -alias TRUSTED_PASSWORD_INFO* PTRUSTED_PASSWORD_INFO; - -struct TRUSTED_DOMAIN_INFORMATION_EX { - LSA_UNICODE_STRING Name; - LSA_UNICODE_STRING FlatName; - PSID Sid; - ULONG TrustDirection; - ULONG TrustType; - ULONG TrustAttributes; -} -alias TRUSTED_DOMAIN_INFORMATION_EX* PTRUSTED_DOMAIN_INFORMATION_EX; - -struct LSA_AUTH_INFORMATION { - LARGE_INTEGER LastUpdateTime; - ULONG AuthType; - ULONG AuthInfoLength; - PUCHAR AuthInfo; -} -alias LSA_AUTH_INFORMATION* PLSA_AUTH_INFORMATION; - -struct TRUSTED_DOMAIN_AUTH_INFORMATION { - ULONG IncomingAuthInfos; - PLSA_AUTH_INFORMATION IncomingAuthenticationInformation; - PLSA_AUTH_INFORMATION IncomingPreviousAuthenticationInformation; - ULONG OutgoingAuthInfos; - PLSA_AUTH_INFORMATION OutgoingAuthenticationInformation; - PLSA_AUTH_INFORMATION OutgoingPreviousAuthenticationInformation; -} -alias TRUSTED_DOMAIN_AUTH_INFORMATION* PTRUSTED_DOMAIN_AUTH_INFORMATION; - -struct TRUSTED_DOMAIN_FULL_INFORMATION { - TRUSTED_DOMAIN_INFORMATION_EX Information; - TRUSTED_POSIX_OFFSET_INFO PosixOffset; - TRUSTED_DOMAIN_AUTH_INFORMATION AuthInformation; -} -alias TRUSTED_DOMAIN_FULL_INFORMATION* PTRUSTED_DOMAIN_FULL_INFORMATION; - -extern (Windows) { - NTSTATUS LsaAddAccountRights(LSA_HANDLE, PSID, PLSA_UNICODE_STRING, - ULONG); - NTSTATUS LsaCallAuthenticationPackage(HANDLE, ULONG, PVOID, ULONG, - PVOID*, PULONG, PNTSTATUS); - NTSTATUS LsaClose(LSA_HANDLE); - NTSTATUS LsaConnectUntrusted(PHANDLE); - NTSTATUS LsaCreateTrustedDomainEx(LSA_HANDLE, - PTRUSTED_DOMAIN_INFORMATION_EX, PTRUSTED_DOMAIN_AUTH_INFORMATION, - ACCESS_MASK, PLSA_HANDLE); - NTSTATUS LsaDeleteTrustedDomain(LSA_HANDLE, PSID); - NTSTATUS LsaDeregisterLogonProcess(HANDLE); - NTSTATUS LsaEnumerateAccountRights(LSA_HANDLE, PSID, PLSA_UNICODE_STRING*, - PULONG); - NTSTATUS LsaEnumerateAccountsWithUserRight(LSA_HANDLE, - PLSA_UNICODE_STRING, PVOID*, PULONG); - NTSTATUS LsaEnumerateTrustedDomains(LSA_HANDLE, PLSA_ENUMERATION_HANDLE, - PVOID*, ULONG, PULONG); - NTSTATUS LsaEnumerateTrustedDomainsEx(LSA_HANDLE, PLSA_ENUMERATION_HANDLE, - TRUSTED_INFORMATION_CLASS, PVOID*, ULONG, PULONG); - NTSTATUS LsaFreeMemory(PVOID); - NTSTATUS LsaFreeReturnBuffer(PVOID); - NTSTATUS LsaLogonUser(HANDLE, PLSA_STRING, SECURITY_LOGON_TYPE, ULONG, - PVOID, ULONG, PTOKEN_GROUPS, PTOKEN_SOURCE, PVOID*, PULONG, PLUID, - PHANDLE, PQUOTA_LIMITS, PNTSTATUS); - NTSTATUS LsaLookupAuthenticationPackage(HANDLE, PLSA_STRING, PULONG); - NTSTATUS LsaLookupNames(LSA_HANDLE, ULONG, PLSA_UNICODE_STRING, - PLSA_REFERENCED_DOMAIN_LIST*, PLSA_TRANSLATED_SID*); - NTSTATUS LsaLookupSids(LSA_HANDLE, ULONG, PSID*, - PLSA_REFERENCED_DOMAIN_LIST*, PLSA_TRANSLATED_NAME*); - ULONG LsaNtStatusToWinError(NTSTATUS); - NTSTATUS LsaOpenPolicy(PLSA_UNICODE_STRING, PLSA_OBJECT_ATTRIBUTES, - ACCESS_MASK, PLSA_HANDLE); - NTSTATUS LsaQueryDomainInformationPolicy(LSA_HANDLE, - POLICY_DOMAIN_INFORMATION_CLASS, PVOID*); - NTSTATUS LsaQueryInformationPolicy(LSA_HANDLE, POLICY_INFORMATION_CLASS, - PVOID*); - NTSTATUS LsaQueryLocalInformationPolicy(LSA_HANDLE, - POLICY_LOCAL_INFORMATION_CLASS, PVOID*); - NTSTATUS LsaQueryTrustedDomainInfo(LSA_HANDLE, PSID, - TRUSTED_INFORMATION_CLASS, PVOID*); - NTSTATUS LsaQueryTrustedDomainInfoByName(LSA_HANDLE, PLSA_UNICODE_STRING, - TRUSTED_INFORMATION_CLASS, PVOID*); - NTSTATUS LsaRegisterLogonProcess(PLSA_STRING, PHANDLE, - PLSA_OPERATIONAL_MODE); - NTSTATUS LsaRemoveAccountRights(LSA_HANDLE, PSID, BOOLEAN, - PLSA_UNICODE_STRING, ULONG); - NTSTATUS LsaRetrievePrivateData(LSA_HANDLE, PLSA_UNICODE_STRING, - PLSA_UNICODE_STRING*); - NTSTATUS LsaSetDomainInformationPolicy(LSA_HANDLE, - POLICY_DOMAIN_INFORMATION_CLASS, PVOID); - NTSTATUS LsaSetInformationPolicy(LSA_HANDLE, POLICY_INFORMATION_CLASS, - PVOID); - NTSTATUS LsaSetLocalInformationPolicy(LSA_HANDLE, - POLICY_LOCAL_INFORMATION_CLASS, PVOID); - NTSTATUS LsaSetTrustedDomainInformation(LSA_HANDLE, PSID, - TRUSTED_INFORMATION_CLASS, PVOID); - NTSTATUS LsaSetTrustedDomainInfoByName(LSA_HANDLE, PLSA_UNICODE_STRING, - TRUSTED_INFORMATION_CLASS, PVOID); - NTSTATUS LsaStorePrivateData(LSA_HANDLE, PLSA_UNICODE_STRING, - PLSA_UNICODE_STRING); -} - -alias NTSTATUS function(PUNICODE_STRING, ULONG, PUNICODE_STRING) - PSAM_PASSWORD_NOTIFICATION_ROUTINE; -alias BOOLEAN function() PSAM_INIT_NOTIFICATION_ROUTINE; -alias BOOLEAN function(PUNICODE_STRING, PUNICODE_STRING, - PUNICODE_STRING, BOOLEAN) PSAM_PASSWORD_FILTER_ROUTINE; diff --git a/3rdparty-extra/win32/ntsecpkg.d b/3rdparty-extra/win32/ntsecpkg.d deleted file mode 100644 index 8db3fd72e..000000000 --- a/3rdparty-extra/win32/ntsecpkg.d +++ /dev/null @@ -1,447 +0,0 @@ -/***********************************************************************\ -* ntsecpkg.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Ellery Newcomer * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ntsecpkg; -version(Windows): - -import win32.windef, win32.ntsecapi, win32.security, win32.ntdef, win32.sspi; -import win32.winnt: GUID; -import win32.winbase; - -extern(Windows): - -enum :ULONG{ - ISC_REQ_DELEGATE = 1, - ISC_REQ_MUTUAL_AUTH = 2, - ISC_REQ_REPLAY_DETECT = 4, - ISC_REQ_SEQUENCE_DETECT = 8, - ISC_REQ_CONFIDENTIALITY = 16, - ISC_REQ_USE_SESSION_KEY = 32, - ISC_REQ_PROMPT_FOR_CREDS = 64, - ISC_REQ_USE_SUPPLIED_CREDS = 128, - ISC_REQ_ALLOCATE_MEMORY = 256, - ISC_REQ_USE_DCE_STYLE = 512, - ISC_REQ_DATAGRAM = 1024, - ISC_REQ_CONNECTION = 2048, - ISC_REQ_EXTENDED_ERROR = 16384, - ISC_REQ_STREAM = 32768, - ISC_REQ_INTEGRITY = 65536, - ISC_REQ_MANUAL_CRED_VALIDATION = 524288, - ISC_REQ_HTTP = 268435456, -} - -enum ISC_RET_EXTENDED_ERROR = 16384; - -enum :ULONG{ - ASC_REQ_DELEGATE = 1, - ASC_REQ_MUTUAL_AUTH = 2, - ASC_REQ_REPLAY_DETECT = 4, - ASC_REQ_SEQUENCE_DETECT = 8, - ASC_REQ_CONFIDENTIALITY = 16, - ASC_REQ_USE_SESSION_KEY = 32, - ASC_REQ_ALLOCATE_MEMORY = 256, - ASC_REQ_USE_DCE_STYLE = 512, - ASC_REQ_DATAGRAM = 1024, - ASC_REQ_CONNECTION = 2048, - ASC_REQ_EXTENDED_ERROR = 32768, - ASC_REQ_STREAM = 65536, - ASC_REQ_INTEGRITY = 131072, -} - -enum SECURITY_NATIVE_DREP = 16; -enum SECURITY_NETWORK_DREP = 0; - -enum :ULONG{ - SECPKG_STATE_ENCRYPTION_PERMITTED = 0x01, - SECPKG_STATE_STRONG_ENCRYPTION_PERMITTED = 0x02, - SECPKG_STATE_DOMAIN_CONTROLLER = 0x04, - SECPKG_STATE_WORKSTATION = 0x08, - SECPKG_STATE_STANDALONE = 0x10, -} - -/* enum definitions for Secure Service Provider/Authentication Packages */ -enum LSA_TOKEN_INFORMATION_TYPE { - LsaTokenInformationNull, - LsaTokenInformationV1 -} -alias LSA_TOKEN_INFORMATION_TYPE* PLSA_TOKEN_INFORMATION_TYPE; -enum SECPKG_EXTENDED_INFORMATION_CLASS -{ - SecpkgGssInfo = 1, - SecpkgContextThunks, - SecpkgMutualAuthLevel, - SecpkgMaxInfo -} -enum SECPKG_NAME_TYPE { - SecNameSamCompatible, - SecNameAlternateId, - SecNameFlat, - SecNameDN -} - -/* struct definitions for SSP/AP */ -struct SECPKG_PRIMARY_CRED { - LUID LogonId; - UNICODE_STRING DownlevelName; - UNICODE_STRING DomainName; - UNICODE_STRING Password; - UNICODE_STRING OldPassword; - PSID UserSid; - ULONG Flags; - UNICODE_STRING DnsDomainName; - UNICODE_STRING Upn; - UNICODE_STRING LogonServer; - UNICODE_STRING Spare1; - UNICODE_STRING Spare2; - UNICODE_STRING Spare3; - UNICODE_STRING Spare4; -} -alias SECPKG_PRIMARY_CRED* PSECPKG_PRIMARY_CRED; -struct SECPKG_SUPPLEMENTAL_CRED { - UNICODE_STRING PackageName; - ULONG CredentialSize; - PUCHAR Credentials; -} -alias SECPKG_SUPPLEMENTAL_CRED* PSECPKG_SUPPLEMENTAL_CRED; -struct SECPKG_SUPPLEMENTAL_CRED_ARRAY { - ULONG CredentialCount; - SECPKG_SUPPLEMENTAL_CRED[1] Credentials; -} -alias SECPKG_SUPPLEMENTAL_CRED_ARRAY* PSECPKG_SUPPLEMENTAL_CRED_ARRAY; -struct SECPKG_PARAMETERS { - ULONG Version; - ULONG MachineState; - ULONG SetupMode; - PSID DomainSid; - UNICODE_STRING DomainName; - UNICODE_STRING DnsDomainName; - GUID DomainGuid; -} -alias SECPKG_PARAMETERS* PSECPKG_PARAMETERS,PSECPKG_EVENT_DOMAIN_CHANGE; -alias SECPKG_PARAMETERS SECPKG_EVENT_DOMAIN_CHANGE; -struct SECPKG_CLIENT_INFO { - LUID LogonId; - ULONG ProcessID; - ULONG ThreadID; - BOOLEAN HasTcbPrivilege; - BOOLEAN Impersonating; - BOOLEAN Restricted; -} -alias SECPKG_CLIENT_INFO* PSECPKG_CLIENT_INFO; -struct SECURITY_USER_DATA { - SECURITY_STRING UserName; - SECURITY_STRING LogonDomainName; - SECURITY_STRING LogonServer; - PSID pSid; -} -alias SECURITY_USER_DATA* PSECURITY_USER_DATA,PSecurityUserData; -alias SECURITY_USER_DATA SecurityUserData; -struct SECPKG_GSS_INFO { - ULONG EncodedIdLength; - UCHAR[4] EncodedId; -} -alias SECPKG_GSS_INFO* PSECPKG_GSS_INFO; -struct SECPKG_CONTEXT_THUNKS { - ULONG InfoLevelCount; - ULONG[1] Levels; -} -alias SECPKG_CONTEXT_THUNKS* PSECPKG_CONTEXT_THUNKS; -struct SECPKG_MUTUAL_AUTH_LEVEL { - ULONG MutualAuthLevel; -} -alias SECPKG_MUTUAL_AUTH_LEVEL* PSECPKG_MUTUAL_AUTH_LEVEL; -struct SECPKG_CALL_INFO { - ULONG ProcessId; - ULONG ThreadId; - ULONG Attributes; - ULONG CallCount; -} -alias SECPKG_CALL_INFO* PSECPKG_CALL_INFO; -struct SECPKG_EXTENDED_INFORMATION { - SECPKG_EXTENDED_INFORMATION_CLASS Class; - union _Info{ - SECPKG_GSS_INFO GssInfo; - SECPKG_CONTEXT_THUNKS ContextThunks; - SECPKG_MUTUAL_AUTH_LEVEL MutualAuthLevel; - } - _Info Info; -} -alias SECPKG_EXTENDED_INFORMATION* PSECPKG_EXTENDED_INFORMATION; - -/* callbacks implemented by SSP/AP dlls and called by the LSA */ -alias void function(ULONG_PTR, ULONG_PTR, PSecBuffer, - PSecBuffer) PLSA_CALLBACK_FUNCTION; - -/* misc typedefs used in the below prototypes */ -alias PVOID* PLSA_CLIENT_REQUEST; -alias ULONG LSA_SEC_HANDLE; -alias ULONG* PLSA_SEC_HANDLE; -alias LPTHREAD_START_ROUTINE SEC_THREAD_START; -alias PSECURITY_ATTRIBUTES SEC_ATTRS; - -/* functions used by SSP/AP obtainable by dispatch tables */ -alias NTSTATUS function(ULONG, PLSA_CALLBACK_FUNCTION) PLSA_REGISTER_CALLBACK; -alias NTSTATUS function(PLUID) PLSA_CREATE_LOGON_SESSION; -alias NTSTATUS function(PLUID) PLSA_DELETE_LOGON_SESSION; -alias NTSTATUS function(PLUID, ULONG, PLSA_STRING, - PLSA_STRING) PLSA_ADD_CREDENTIAL; -alias NTSTATUS function(PLUID, ULONG, PULONG, BOOLEAN, - PLSA_STRING, PULONG, PLSA_STRING) PLSA_GET_CREDENTIALS; -alias NTSTATUS function(PLUID, ULONG, PLSA_STRING) PLSA_DELETE_CREDENTIAL; -alias PVOID function(ULONG) PLSA_ALLOCATE_LSA_HEAP; -alias void function(PVOID) PLSA_FREE_LSA_HEAP; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, - ULONG, PVOID*) PLSA_ALLOCATE_CLIENT_BUFFER; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, PVOID) PLSA_FREE_CLIENT_BUFFER; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, ULONG, - PVOID, PVOID) PLSA_COPY_TO_CLIENT_BUFFER; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, - ULONG, PVOID, PVOID) PLSA_COPY_FROM_CLIENT_BUFFER; -alias NTSTATUS function() PLSA_IMPERSONATE_CLIENT; -alias NTSTATUS function() PLSA_UNLOAD_PACKAGE; -alias NTSTATUS function(HANDLE, PHANDLE) PLSA_DUPLICATE_HANDLE; -alias NTSTATUS function(PLUID, ULONG, - PVOID, BOOLEAN) PLSA_SAVE_SUPPLEMENTAL_CREDENTIALS; -alias HANDLE function(SEC_ATTRS, ULONG, SEC_THREAD_START, - PVOID, ULONG, PULONG) PLSA_CREATE_THREAD; -alias NTSTATUS function(PSECPKG_CLIENT_INFO) PLSA_GET_CLIENT_INFO; -alias HANDLE function(SEC_THREAD_START, PVOID, - ULONG, ULONG, ULONG, ULONG, HANDLE) PLSA_REGISTER_NOTIFICATION; -alias NTSTATUS function(HANDLE) PLSA_CANCEL_NOTIFICATION; -alias NTSTATUS function(PSecBuffer, PSecBuffer) PLSA_MAP_BUFFER; -alias NTSTATUS function(PLUID, PTOKEN_SOURCE, - SECURITY_LOGON_TYPE, SECURITY_IMPERSONATION_LEVEL, LSA_TOKEN_INFORMATION_TYPE, - PVOID, PTOKEN_GROUPS, PUNICODE_STRING, PUNICODE_STRING, PUNICODE_STRING, - PUNICODE_STRING, PHANDLE, PNTSTATUS) PLSA_CREATE_TOKEN; -alias void function(NTSTATUS, NTSTATUS, PUNICODE_STRING, - PUNICODE_STRING, PUNICODE_STRING, PSID, SECURITY_LOGON_TYPE, - PTOKEN_SOURCE, PLUID) PLSA_AUDIT_LOGON; -alias NTSTATUS function(PUNICODE_STRING, PVOID, ULONG, - PVOID*, PULONG, PNTSTATUS) PLSA_CALL_PACKAGE; -alias BOOLEAN function(PSECPKG_CALL_INFO) PLSA_GET_CALL_INFO; -alias NTSTATUS function(PUNICODE_STRING, PVOID, PVOID, - ULONG, PVOID*, PULONG, PNTSTATUS) PLSA_CALL_PACKAGEEX; -alias PVOID function(ULONG, ULONG) PLSA_CREATE_SHARED_MEMORY; -alias PVOID function(PVOID, ULONG) PLSA_ALLOCATE_SHARED_MEMORY; -alias void function(PVOID, PVOID) PLSA_FREE_SHARED_MEMORY; -alias BOOLEAN function(PVOID) PLSA_DELETE_SHARED_MEMORY; -alias NTSTATUS function(PSECURITY_STRING, SECPKG_NAME_TYPE, - PSECURITY_STRING, BOOLEAN, ULONG, PVOID*) PLSA_OPEN_SAM_USER; -alias NTSTATUS function(PVOID, PVOID *, PULONG, - PVOID *, PULONG) PLSA_GET_USER_CREDENTIALS; -alias NTSTATUS function(PVOID, PUCHAR *, PULONG) PLSA_GET_USER_AUTH_DATA; -alias NTSTATUS function(PVOID) PLSA_CLOSE_SAM_USER; -alias NTSTATUS function(PVOID, ULONG, - SECURITY_IMPERSONATION_LEVEL, PTOKEN_SOURCE, SECURITY_LOGON_TYPE, - PUNICODE_STRING, PHANDLE, PLUID, PUNICODE_STRING, PNTSTATUS) PLSA_CONVERT_AUTH_DATA_TO_TOKEN; -alias NTSTATUS function(PCHAR, ULONG_PTR, ULONG_PTR, - PSecBuffer, PSecBuffer) PLSA_CLIENT_CALLBACK; -alias NTSTATUS function(PSECPKG_PRIMARY_CRED, PSECPKG_SUPPLEMENTAL_CRED_ARRAY) PLSA_UPDATE_PRIMARY_CREDENTIALS; -alias NTSTATUS function(PSECURITY_STRING, - SECPKG_NAME_TYPE, PSECURITY_STRING, PUCHAR *, PULONG, PUNICODE_STRING) PLSA_GET_AUTH_DATA_FOR_USER; -alias NTSTATUS function(ULONG, BOOLEAN, - PUNICODE_STRING, PUNICODE_STRING, ULONG, PUNICODE_STRING, PUNICODE_STRING, - PULONG) PLSA_CRACK_SINGLE_NAME; -alias NTSTATUS function(ULONG, BOOLEAN, - PUNICODE_STRING, PUNICODE_STRING, PUNICODE_STRING, NTSTATUS) PLSA_AUDIT_ACCOUNT_LOGON; -alias NTSTATUS function(PUNICODE_STRING, PVOID, - PVOID, ULONG, PVOID*, PULONG, PNTSTATUS) PLSA_CALL_PACKAGE_PASSTHROUGH; - -/* Dispatch tables of functions used by SSP/AP */ -struct SECPKG_DLL_FUNCTIONS { - PLSA_ALLOCATE_LSA_HEAP AllocateHeap; - PLSA_FREE_LSA_HEAP FreeHeap; - PLSA_REGISTER_CALLBACK RegisterCallback; -} -alias SECPKG_DLL_FUNCTIONS* PSECPKG_DLL_FUNCTIONS; -struct LSA_DISPATCH_TABLE { - PLSA_CREATE_LOGON_SESSION CreateLogonSession; - PLSA_DELETE_LOGON_SESSION DeleteLogonSession; - PLSA_ADD_CREDENTIAL AddCredential; - PLSA_GET_CREDENTIALS GetCredentials; - PLSA_DELETE_CREDENTIAL DeleteCredential; - PLSA_ALLOCATE_LSA_HEAP AllocateLsaHeap; - PLSA_FREE_LSA_HEAP FreeLsaHeap; - PLSA_ALLOCATE_CLIENT_BUFFER AllocateClientBuffer; - PLSA_FREE_CLIENT_BUFFER FreeClientBuffer; - PLSA_COPY_TO_CLIENT_BUFFER CopyToClientBuffer; - PLSA_COPY_FROM_CLIENT_BUFFER CopyFromClientBuffer; -} -alias LSA_DISPATCH_TABLE* PLSA_DISPATCH_TABLE; -struct LSA_SECPKG_FUNCTION_TABLE { - PLSA_CREATE_LOGON_SESSION CreateLogonSession; - PLSA_DELETE_LOGON_SESSION DeleteLogonSession; - PLSA_ADD_CREDENTIAL AddCredential; - PLSA_GET_CREDENTIALS GetCredentials; - PLSA_DELETE_CREDENTIAL DeleteCredential; - PLSA_ALLOCATE_LSA_HEAP AllocateLsaHeap; - PLSA_FREE_LSA_HEAP FreeLsaHeap; - PLSA_ALLOCATE_CLIENT_BUFFER AllocateClientBuffer; - PLSA_FREE_CLIENT_BUFFER FreeClientBuffer; - PLSA_COPY_TO_CLIENT_BUFFER CopyToClientBuffer; - PLSA_COPY_FROM_CLIENT_BUFFER CopyFromClientBuffer; - PLSA_IMPERSONATE_CLIENT ImpersonateClient; - PLSA_UNLOAD_PACKAGE UnloadPackage; - PLSA_DUPLICATE_HANDLE DuplicateHandle; - PLSA_SAVE_SUPPLEMENTAL_CREDENTIALS SaveSupplementalCredentials; - PLSA_CREATE_THREAD CreateThread; - PLSA_GET_CLIENT_INFO GetClientInfo; - PLSA_REGISTER_NOTIFICATION RegisterNotification; - PLSA_CANCEL_NOTIFICATION CancelNotification; - PLSA_MAP_BUFFER MapBuffer; - PLSA_CREATE_TOKEN CreateToken; - PLSA_AUDIT_LOGON AuditLogon; - PLSA_CALL_PACKAGE CallPackage; - PLSA_FREE_LSA_HEAP FreeReturnBuffer; - PLSA_GET_CALL_INFO GetCallInfo; - PLSA_CALL_PACKAGEEX CallPackageEx; - PLSA_CREATE_SHARED_MEMORY CreateSharedMemory; - PLSA_ALLOCATE_SHARED_MEMORY AllocateSharedMemory; - PLSA_FREE_SHARED_MEMORY FreeSharedMemory; - PLSA_DELETE_SHARED_MEMORY DeleteSharedMemory; - PLSA_OPEN_SAM_USER OpenSamUser; - PLSA_GET_USER_CREDENTIALS GetUserCredentials; - PLSA_GET_USER_AUTH_DATA GetUserAuthData; - PLSA_CLOSE_SAM_USER CloseSamUser; - PLSA_CONVERT_AUTH_DATA_TO_TOKEN ConvertAuthDataToToken; - PLSA_CLIENT_CALLBACK ClientCallback; - PLSA_UPDATE_PRIMARY_CREDENTIALS UpdateCredentials; - PLSA_GET_AUTH_DATA_FOR_USER GetAuthDataForUser; - PLSA_CRACK_SINGLE_NAME CrackSingleName; - PLSA_AUDIT_ACCOUNT_LOGON AuditAccountLogon; - PLSA_CALL_PACKAGE_PASSTHROUGH CallPackagePassthrough; -} -alias LSA_SECPKG_FUNCTION_TABLE* PLSA_SECPKG_FUNCTION_TABLE; - -/* functions implemented by SSP/AP obtainable by dispatch tables */ -alias NTSTATUS function(ULONG, PLSA_DISPATCH_TABLE, - PLSA_STRING, PLSA_STRING, PLSA_STRING *) PLSA_AP_INITIALIZE_PACKAGE; -alias NTSTATUS function(LPWSTR, LPWSTR, LPWSTR, LPWSTR, - DWORD, DWORD, PHANDLE) PLSA_AP_LOGON_USER; -alias NTSTATUS function(PUNICODE_STRING, PVOID, ULONG, - PVOID *, PULONG, PNTSTATUS) PLSA_AP_CALL_PACKAGE; -alias void function(PLUID) PLSA_AP_LOGON_TERMINATED; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, - PVOID, PVOID, ULONG, PVOID *, PULONG, PNTSTATUS) PLSA_AP_CALL_PACKAGE_UNTRUSTED; -alias NTSTATUS function(PUNICODE_STRING, - PVOID, PVOID, ULONG, PVOID *, PULONG, PNTSTATUS) PLSA_AP_CALL_PACKAGE_PASSTHROUGH; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, - SECURITY_LOGON_TYPE, PVOID, PVOID, ULONG, PVOID *, PULONG, PLUID, PNTSTATUS, - PLSA_TOKEN_INFORMATION_TYPE, PVOID *, PUNICODE_STRING *, PUNICODE_STRING *, - PUNICODE_STRING *) PLSA_AP_LOGON_USER_EX; -alias NTSTATUS function(PLSA_CLIENT_REQUEST, - SECURITY_LOGON_TYPE, PVOID, PVOID, ULONG, PVOID *, PULONG, PLUID, PNTSTATUS, - PLSA_TOKEN_INFORMATION_TYPE, PVOID *, PUNICODE_STRING *, PUNICODE_STRING *, - PUNICODE_STRING *, PSECPKG_PRIMARY_CRED, PSECPKG_SUPPLEMENTAL_CRED_ARRAY *) PLSA_AP_LOGON_USER_EX2; -alias NTSTATUS function(ULONG_PTR, PSECPKG_PARAMETERS, - PLSA_SECPKG_FUNCTION_TABLE) SpInitializeFn; -alias NTSTATUS function() SpShutDownFn; -alias NTSTATUS function(PSecPkgInfoW) SpGetInfoFn; -alias NTSTATUS function(SECURITY_LOGON_TYPE, - PUNICODE_STRING, PSECPKG_PRIMARY_CRED, PSECPKG_SUPPLEMENTAL_CRED) SpAcceptCredentialsFn; -alias NTSTATUS function(PUNICODE_STRING, ULONG, - PLUID, PVOID, PVOID, PVOID, PLSA_SEC_HANDLE, PTimeStamp) SpAcquireCredentialsHandleFn; -alias NTSTATUS function(LSA_SEC_HANDLE, ULONG, PVOID) SpQueryCredentialsAttributesFn; -alias NTSTATUS function(LSA_SEC_HANDLE) SpFreeCredentialsHandleFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBuffer) SpSaveCredentialsFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBuffer) SpGetCredentialsFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBuffer) SpDeleteCredentialsFn; -alias NTSTATUS function(LSA_SEC_HANDLE, LSA_SEC_HANDLE, - PUNICODE_STRING, ULONG, ULONG, PSecBufferDesc, PLSA_SEC_HANDLE, PSecBufferDesc, - PULONG, PTimeStamp, PBOOLEAN, PSecBuffer) SpInitLsaModeContextFn; -alias NTSTATUS function(LSA_SEC_HANDLE, - LSA_SEC_HANDLE, PSecBufferDesc, ULONG, ULONG, PLSA_SEC_HANDLE, PSecBufferDesc, - PULONG, PTimeStamp, PBOOLEAN, PSecBuffer) SpAcceptLsaModeContextFn; -alias NTSTATUS function(LSA_SEC_HANDLE) SpDeleteContextFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBufferDesc) SpApplyControlTokenFn; -alias NTSTATUS function(PLUID, ULONG, PSecurityUserData *) SpGetUserInfoFn; -alias NTSTATUS function(SECPKG_EXTENDED_INFORMATION_CLASS, PSECPKG_EXTENDED_INFORMATION *) SpGetExtendedInformationFn; -alias NTSTATUS function(LSA_SEC_HANDLE, ULONG, PVOID) SpQueryContextAttributesFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PUNICODE_STRING, - PUNICODE_STRING, ULONG, PVOID, PVOID, PVOID, PTimeStamp) SpAddCredentialsFn; -alias NTSTATUS function( - SECPKG_EXTENDED_INFORMATION_CLASS, PSECPKG_EXTENDED_INFORMATION) SpSetExtendedInformationFn; -alias NTSTATUS function(ULONG, PSECPKG_DLL_FUNCTIONS, - PVOID *) SpInstanceInitFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBuffer) SpInitUserModeContextFn; -alias NTSTATUS function(LSA_SEC_HANDLE, ULONG, - PSecBufferDesc, ULONG) SpMakeSignatureFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBufferDesc, - ULONG, PULONG) SpVerifySignatureFn; -alias NTSTATUS function(LSA_SEC_HANDLE, ULONG, PSecBufferDesc, - ULONG) SpSealMessageFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBufferDesc, - ULONG, PULONG) SpUnsealMessageFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PHANDLE) SpGetContextTokenFn; -alias NTSTATUS function(LSA_SEC_HANDLE, PSecBufferDesc) SpCompleteAuthTokenFn; -alias NTSTATUS function(PSecBuffer, PSecBuffer) SpFormatCredentialsFn; -alias NTSTATUS function(ULONG, PUCHAR, PULONG, - PVOID *) SpMarshallSupplementalCredsFn; -alias NTSTATUS function(LSA_SEC_HANDLE, ULONG, - PSecBuffer, PHANDLE) SpExportSecurityContextFn; -alias NTSTATUS function(PSecBuffer, HANDLE, - PLSA_SEC_HANDLE) SpImportSecurityContextFn; - -/* Dispatch tables of functions implemented by SSP/AP */ -struct SECPKG_FUNCTION_TABLE { - PLSA_AP_INITIALIZE_PACKAGE InitializePackage; - PLSA_AP_LOGON_USER LogonUser; - PLSA_AP_CALL_PACKAGE CallPackage; - PLSA_AP_LOGON_TERMINATED LogonTerminated; - PLSA_AP_CALL_PACKAGE_UNTRUSTED CallPackageUntrusted; - PLSA_AP_CALL_PACKAGE_PASSTHROUGH CallPackagePassthrough; - PLSA_AP_LOGON_USER_EX LogonUserEx; - PLSA_AP_LOGON_USER_EX2 LogonUserEx2; - SpInitializeFn *Initialize; - SpShutDownFn *Shutdown; - SpGetInfoFn *GetInfo; - SpAcceptCredentialsFn *AcceptCredentials; - SpAcquireCredentialsHandleFn *AcquireCredentialsHandle; - SpQueryCredentialsAttributesFn *QueryCredentialsAttributes; - SpFreeCredentialsHandleFn *FreeCredentialsHandle; - SpSaveCredentialsFn *SaveCredentials; - SpGetCredentialsFn *GetCredentials; - SpDeleteCredentialsFn *DeleteCredentials; - SpInitLsaModeContextFn *InitLsaModeContext; - SpAcceptLsaModeContextFn *AcceptLsaModeContext; - SpDeleteContextFn *DeleteContext; - SpApplyControlTokenFn *ApplyControlToken; - SpGetUserInfoFn *GetUserInfo; - SpGetExtendedInformationFn *GetExtendedInformation; - SpQueryContextAttributesFn *QueryContextAttributes; - SpAddCredentialsFn *AddCredentials; - SpSetExtendedInformationFn *SetExtendedInformation; -} -alias SECPKG_FUNCTION_TABLE* PSECPKG_FUNCTION_TABLE; - -struct SECPKG_USER_FUNCTION_TABLE { - SpInstanceInitFn *InstanceInit; - SpInitUserModeContextFn *InitUserModeContext; - SpMakeSignatureFn *MakeSignature; - SpVerifySignatureFn *VerifySignature; - SpSealMessageFn *SealMessage; - SpUnsealMessageFn *UnsealMessage; - SpGetContextTokenFn *GetContextToken; - SpQueryContextAttributesFn *QueryContextAttributes; - SpCompleteAuthTokenFn *CompleteAuthToken; - SpDeleteContextFn *DeleteUserModeContext; - SpFormatCredentialsFn *FormatCredentials; - SpMarshallSupplementalCredsFn *MarshallSupplementalCreds; - SpExportSecurityContextFn *ExportContext; - SpImportSecurityContextFn *ImportContext; -} -alias SECPKG_USER_FUNCTION_TABLE* PSECPKG_USER_FUNCTION_TABLE; - -/* Entry points to SSP/AP */ -alias NTSTATUS function(ULONG, PULONG, - PSECPKG_FUNCTION_TABLE *, PULONG) SpLsaModeInitializeFn; -alias NTSTATUS function(ULONG, PULONG, - PSECPKG_USER_FUNCTION_TABLE *, PULONG) SpUserModeInitializeFn; - diff --git a/3rdparty-extra/win32/objsafe.d b/3rdparty-extra/win32/objsafe.d deleted file mode 100644 index 95986e4aa..000000000 --- a/3rdparty-extra/win32/objsafe.d +++ /dev/null @@ -1,24 +0,0 @@ -/***********************************************************************\ -* objsafe.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.objsafe; -version(Windows): - -private import win32.basetyps, win32.unknwn, win32.windef; - -enum { - INTERFACESAFE_FOR_UNTRUSTED_CALLER = 1, - INTERFACESAFE_FOR_UNTRUSTED_DATA -} - -interface IObjectSafety : IUnknown { - HRESULT GetInterfaceSafetyOptions(REFIID, DWORD*, DWORD*); - HRESULT SetInterfaceSafetyOptions(REFIID, DWORD, DWORD); -} diff --git a/3rdparty-extra/win32/odbcinst.d b/3rdparty-extra/win32/odbcinst.d deleted file mode 100644 index 3222fe3a1..000000000 --- a/3rdparty-extra/win32/odbcinst.d +++ /dev/null @@ -1,167 +0,0 @@ -/***********************************************************************\ -* odbcinst.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.odbcinst; -version(Windows): - -import win32.sql; -private import win32.windef; - -/* FIXME: The Unicode/Ansi functions situation is a mess. How do the xxxA - * versions of these functions fit into the scheme? - */ - -// SQLConfigDataSource() -enum : WORD { - ODBC_ADD_DSN = 1, - ODBC_CONFIG_DSN = 2, - ODBC_REMOVE_DSN = 3, - ODBC_ADD_SYS_DSN = 4, - ODBC_CONFIG_SYS_DSN = 5, - ODBC_REMOVE_SYS_DSN = 6, - ODBC_REMOVE_DEFAULT_DSN = 7 -} - -// ODBC 3.0+ -enum : WORD { - ODBC_INSTALL_INQUIRY = 1, - ODBC_INSTALL_COMPLETE = 2 -} - -// ODBC 2.5+ -enum : WORD { - ODBC_INSTALL_DRIVER = 1, - ODBC_REMOVE_DRIVER = 2, - ODBC_CONFIG_DRIVER = 3, - ODBC_CONFIG_DRIVER_MAX = 100 -} - -// ODBC 3.0+ -// SQLSetConfigMode() -enum : UWORD { - ODBC_BOTH_DSN = 0, - ODBC_USER_DSN = 1, - ODBC_SYSTEM_DSN = 2 -} - -enum : DWORD { - ODBC_ERROR_GENERAL_ERR = 1, - ODBC_ERROR_INVALID_BUFF_LEN = 2, - ODBC_ERROR_INVALID_HWND = 3, - ODBC_ERROR_INVALID_STR = 4, - ODBC_ERROR_INVALID_REQUEST_TYPE = 5, - ODBC_ERROR_COMPONENT_NOT_FOUND = 6, - ODBC_ERROR_INVALID_NAME = 7, - ODBC_ERROR_INVALID_KEYWORD_VALUE = 8, - ODBC_ERROR_INVALID_DSN = 9, - ODBC_ERROR_INVALID_INF = 10, - ODBC_ERROR_REQUEST_FAILED = 11, - ODBC_ERROR_INVALID_PATH = 12, - ODBC_ERROR_LOAD_LIB_FAILED = 13, - ODBC_ERROR_INVALID_PARAM_SEQUENCE = 14, - ODBC_ERROR_INVALID_LOG_FILE = 15, - ODBC_ERROR_USER_CANCELED = 16, - ODBC_ERROR_USAGE_UPDATE_FAILED = 17, - ODBC_ERROR_CREATE_DSN_FAILED = 18, - ODBC_ERROR_WRITING_SYSINFO_FAILED = 19, - ODBC_ERROR_REMOVE_DSN_FAILED = 20, - ODBC_ERROR_OUT_OF_MEM = 21, - ODBC_ERROR_OUTPUT_STRING_TRUNCATED = 22 -} - -extern (Windows): -BOOL ConfigDSN(HWND,WORD,LPCSTR,LPCSTR); -BOOL ConfigDSNW(HWND,WORD,LPCWSTR,LPCWSTR); -BOOL ConfigTranslator(HWND,DWORD*); -BOOL SQLConfigDataSource(HWND,WORD,LPCSTR,LPCSTR); -BOOL SQLConfigDataSourceW(HWND,WORD,LPCWSTR,LPCWSTR); -BOOL SQLCreateDataSource(HWND,LPCSTR); -BOOL SQLCreateDataSourceW(HWND,LPCWSTR); -BOOL SQLGetAvailableDrivers(LPCSTR,LPSTR,WORD,WORD*); -BOOL SQLGetAvailableDriversW(LPCWSTR,LPWSTR,WORD,WORD*); -BOOL SQLGetInstalledDrivers(LPSTR,WORD,WORD*); -BOOL SQLGetInstalledDriversW(LPWSTR,WORD,WORD*); -int SQLGetPrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPSTR,int,LPCSTR); -int SQLGetPrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,int,LPCWSTR); -BOOL SQLGetTranslator(HWND,LPSTR,WORD,WORD*,LPSTR,WORD,WORD*,DWORD*); -BOOL SQLGetTranslatorW(HWND,LPWSTR,WORD,WORD*,LPWSTR,WORD,WORD*,DWORD*); -BOOL SQLInstallDriver(LPCSTR,LPCSTR,LPSTR,WORD,WORD*); -BOOL SQLInstallDriverManager(LPSTR,WORD,WORD*); -BOOL SQLInstallDriverManagerW(LPWSTR,WORD,WORD*); -BOOL SQLInstallDriverW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*); -BOOL SQLInstallODBC(HWND,LPCSTR,LPCSTR,LPCSTR); -BOOL SQLInstallODBCW(HWND,LPCWSTR,LPCWSTR,LPCWSTR); -BOOL SQLManageDataSources(HWND); -BOOL SQLRemoveDefaultDataSource(); -BOOL SQLRemoveDSNFromIni(LPCSTR); -BOOL SQLRemoveDSNFromIniW(LPCWSTR); -BOOL SQLValidDSN(LPCSTR); -BOOL SQLValidDSNW(LPCWSTR); -BOOL SQLWriteDSNToIni(LPCSTR,LPCSTR); -BOOL SQLWriteDSNToIniW(LPCWSTR,LPCWSTR); -BOOL SQLWritePrivateProfileString(LPCSTR,LPCSTR,LPCSTR,LPCSTR); -BOOL SQLWritePrivateProfileStringW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); - -static if (ODBCVER >= 0x0250) { - BOOL ConfigDriver(HWND,WORD,LPCSTR,LPCSTR,LPSTR,WORD,WORD*); - BOOL ConfigDriverW(HWND,WORD,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*); - BOOL SQLConfigDriver(HWND,WORD,LPCSTR,LPCSTR,LPSTR,WORD,WORD*); - BOOL SQLConfigDriverW(HWND,WORD,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*); - deprecated { - BOOL SQLInstallTranslator(LPCSTR,LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD); - BOOL SQLInstallTranslatorW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD); - } - BOOL SQLRemoveDriver(LPCSTR,BOOL,LPDWORD); - BOOL SQLRemoveDriverManager(LPDWORD); - BOOL SQLRemoveDriverW(LPCWSTR,BOOL,LPDWORD); - BOOL SQLRemoveTranslator(LPCSTR,LPDWORD); - BOOL SQLRemoveTranslatorW(LPCWSTR,LPDWORD); -} -static if (ODBCVER >= 0x0300) { - BOOL SQLGetConfigMode(UWORD*); - BOOL SQLInstallDriverEx(LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD); - BOOL SQLInstallDriverExW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD); - SQLRETURN SQLInstallerError(WORD,DWORD*,LPSTR,WORD,WORD*); - SQLRETURN SQLInstallerErrorW(WORD,DWORD*,LPWSTR,WORD,WORD*); - BOOL SQLInstallTranslatorEx(LPCSTR,LPCSTR,LPSTR,WORD,WORD*,WORD,LPDWORD); - BOOL SQLInstallTranslatorExW(LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*,WORD,LPDWORD); - SQLRETURN SQLPostInstallerError(DWORD,LPCSTR); - SQLRETURN SQLPostInstallerErrorW(DWORD,LPCWSTR); - BOOL SQLReadFileDSN(LPCSTR,LPCSTR,LPCSTR,LPSTR,WORD,WORD*); - BOOL SQLReadFileDSNW(LPCWSTR,LPCWSTR,LPCWSTR,LPWSTR,WORD,WORD*); - BOOL SQLSetConfigMode(UWORD); - BOOL SQLWriteFileDSN(LPCSTR,LPCSTR,LPCSTR,LPCSTR); - BOOL SQLWriteFileDSNW(LPCWSTR,LPCWSTR,LPCWSTR,LPCWSTR); -} - -version (Unicode) { - alias SQLConfigDataSourceW SQLConfigDataSource; - alias SQLConfigDriverW SQLConfigDriver; - alias SQLCreateDataSourceW SQLCreateDataSource; - alias SQLGetAvailableDriversW SQLGetAvailableDrivers; - alias SQLGetInstalledDriversW SQLGetInstalledDrivers; - alias SQLGetPrivateProfileStringW SQLGetPrivateProfileString; - alias SQLGetTranslatorW SQLGetTranslator; - alias SQLInstallDriverW SQLInstallDriver; - alias SQLInstallDriverExW SQLInstallDriverEx; - alias SQLInstallDriverManagerW SQLInstallDriverManager; - alias SQLInstallerErrorW SQLInstallerError; - alias SQLInstallODBCW SQLInstallODBC; - deprecated alias SQLInstallTranslatorW SQLInstallTranslator; - alias SQLInstallTranslatorExW SQLInstallTranslatorEx; - alias SQLPostInstallerErrorW SQLPostInstallerError; - alias SQLReadFileDSNW SQLReadFileDSN; - alias SQLRemoveDriverW SQLRemoveDriver; - alias SQLRemoveDSNFromIniW SQLRemoveDSNFromIni; - alias SQLRemoveTranslatorW SQLRemoveTranslator; - alias SQLValidDSNW SQLValidDSN; - alias SQLWriteDSNToIniW SQLWriteDSNToIni; - alias SQLWriteFileDSNW SQLWriteFileDSN; - alias SQLWritePrivateProfileStringW SQLWritePrivateProfileString; -} diff --git a/3rdparty-extra/win32/ole2ver.d b/3rdparty-extra/win32/ole2ver.d deleted file mode 100644 index 380d4512b..000000000 --- a/3rdparty-extra/win32/ole2ver.d +++ /dev/null @@ -1,15 +0,0 @@ -/***********************************************************************\ -* ole2ver.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ole2ver; -version(Windows): - -// These are apparently not documented on the MSDN site -const rmm = 23; -const rup = 639; diff --git a/3rdparty-extra/win32/oleacc.d b/3rdparty-extra/win32/oleacc.d deleted file mode 100644 index 1bedc8d16..000000000 --- a/3rdparty-extra/win32/oleacc.d +++ /dev/null @@ -1,215 +0,0 @@ -/***********************************************************************\ -* oleacc.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.oleacc; -version(Windows): -pragma(lib, "oleacc"); - -private import win32.basetyps, win32.oaidl, win32.unknwn, win32.wtypes, - win32.windef; - -enum { - DISPID_ACC_PARENT = -5000, - DISPID_ACC_CHILDCOUNT = -5001, - DISPID_ACC_CHILD = -5002, - DISPID_ACC_NAME = -5003, - DISPID_ACC_VALUE = -5004, - DISPID_ACC_DESCRIPTION = -5005, - DISPID_ACC_ROLE = -5006, - DISPID_ACC_STATE = -5007, - DISPID_ACC_HELP = -5008, - DISPID_ACC_HELPTOPIC = -5009, - DISPID_ACC_KEYBOARDSHORTCUT = -5010, - DISPID_ACC_FOCUS = -5011, - DISPID_ACC_SELECTION = -5012, - DISPID_ACC_DEFAULTACTION = -5013, - DISPID_ACC_SELECT = -5014, - DISPID_ACC_LOCATION = -5015, - DISPID_ACC_NAVIGATE = -5016, - DISPID_ACC_HITTEST = -5017, - DISPID_ACC_DODEFAULTACTION = -5018 -} - -enum { - NAVDIR_UP = 1, - NAVDIR_DOWN, - NAVDIR_LEFT, - NAVDIR_RIGHT, - NAVDIR_NEXT, - NAVDIR_PREVIOUS, - NAVDIR_FIRSTCHILD, - NAVDIR_LASTCHILD // = 8 -} - -enum { - ROLE_SYSTEM_TITLEBAR = 1, - ROLE_SYSTEM_MENUBAR, - ROLE_SYSTEM_SCROLLBAR, - ROLE_SYSTEM_GRIP, - ROLE_SYSTEM_SOUND, - ROLE_SYSTEM_CURSOR, - ROLE_SYSTEM_CARET, - ROLE_SYSTEM_ALERT, - ROLE_SYSTEM_WINDOW, - ROLE_SYSTEM_CLIENT, - ROLE_SYSTEM_MENUPOPUP, - ROLE_SYSTEM_MENUITEM, - ROLE_SYSTEM_TOOLTIP, - ROLE_SYSTEM_APPLICATION, - ROLE_SYSTEM_DOCUMENT, - ROLE_SYSTEM_PANE, - ROLE_SYSTEM_CHART, - ROLE_SYSTEM_DIALOG, - ROLE_SYSTEM_BORDER, - ROLE_SYSTEM_GROUPING, - ROLE_SYSTEM_SEPARATOR, - ROLE_SYSTEM_TOOLBAR, - ROLE_SYSTEM_STATUSBAR, - ROLE_SYSTEM_TABLE, - ROLE_SYSTEM_COLUMNHEADER, - ROLE_SYSTEM_ROWHEADER, - ROLE_SYSTEM_COLUMN, - ROLE_SYSTEM_ROW, - ROLE_SYSTEM_CELL, - ROLE_SYSTEM_LINK, - ROLE_SYSTEM_HELPBALLOON, - ROLE_SYSTEM_CHARACTER, - ROLE_SYSTEM_LIST, - ROLE_SYSTEM_LISTITEM, - ROLE_SYSTEM_OUTLINE, - ROLE_SYSTEM_OUTLINEITEM, - ROLE_SYSTEM_PAGETAB, - ROLE_SYSTEM_PROPERTYPAGE, - ROLE_SYSTEM_INDICATOR, - ROLE_SYSTEM_GRAPHIC, - ROLE_SYSTEM_STATICTEXT, - ROLE_SYSTEM_TEXT, - ROLE_SYSTEM_PUSHBUTTON, - ROLE_SYSTEM_CHECKBUTTON, - ROLE_SYSTEM_RADIOBUTTON, - ROLE_SYSTEM_COMBOBOX, - ROLE_SYSTEM_DROPLIST, - ROLE_SYSTEM_PROGRESSBAR, - ROLE_SYSTEM_DIAL, - ROLE_SYSTEM_HOTKEYFIELD, - ROLE_SYSTEM_SLIDER, - ROLE_SYSTEM_SPINBUTTON, - ROLE_SYSTEM_DIAGRAM, - ROLE_SYSTEM_ANIMATION, - ROLE_SYSTEM_EQUATION, - ROLE_SYSTEM_BUTTONDROPDOWN, - ROLE_SYSTEM_BUTTONMENU, - ROLE_SYSTEM_BUTTONDROPDOWNGRID, - ROLE_SYSTEM_WHITESPACE, - ROLE_SYSTEM_PAGETABLIST, - ROLE_SYSTEM_CLOCK // = 61 -} - -enum { - STATE_SYSTEM_UNAVAILABLE = 0x00000001, - STATE_SYSTEM_SELECTED = 0x00000002, - STATE_SYSTEM_FOCUSED = 0x00000004, - STATE_SYSTEM_PRESSED = 0x00000008, - STATE_SYSTEM_CHECKED = 0x00000010, - STATE_SYSTEM_MIXED = 0x00000020, - STATE_SYSTEM_READONLY = 0x00000040, - STATE_SYSTEM_HOTTRACKED = 0x00000080, - STATE_SYSTEM_DEFAULT = 0x00000100, - STATE_SYSTEM_EXPANDED = 0x00000200, - STATE_SYSTEM_COLLAPSED = 0x00000400, - STATE_SYSTEM_BUSY = 0x00000800, - STATE_SYSTEM_FLOATING = 0x00001000, - STATE_SYSTEM_MARQUEED = 0x00002000, - STATE_SYSTEM_ANIMATED = 0x00004000, - STATE_SYSTEM_INVISIBLE = 0x00008000, - STATE_SYSTEM_OFFSCREEN = 0x00010000, - STATE_SYSTEM_SIZEABLE = 0x00020000, - STATE_SYSTEM_MOVEABLE = 0x00040000, - STATE_SYSTEM_SELFVOICING = 0x00080000, - STATE_SYSTEM_FOCUSABLE = 0x00100000, - STATE_SYSTEM_SELECTABLE = 0x00200000, - STATE_SYSTEM_LINKED = 0x00400000, - STATE_SYSTEM_TRAVERSED = 0x00800000, - STATE_SYSTEM_MULTISELECTABLE = 0x01000000, - STATE_SYSTEM_EXTSELECTABLE = 0x02000000, - STATE_SYSTEM_ALERT_LOW = 0x04000000, - STATE_SYSTEM_ALERT_MEDIUM = 0x08000000, - STATE_SYSTEM_ALERT_HIGH = 0x10000000, - STATE_SYSTEM_VALID = 0x1fffffff -} - -enum SELFLAG -{ - SELFLAG_NONE = 0, - SELFLAG_TAKEFOCUS = 1, - SELFLAG_TAKESELECTION = 2, - SELFLAG_EXTENDSELECTION = 4, - SELFLAG_ADDSELECTION = 8, - SELFLAG_REMOVESELECTION = 16 -} - -const SELFLAG_VALID = 0x0000001F; - - -interface IAccessible : IDispatch { - HRESULT get_accParent(IDispatch*); - HRESULT get_accChildCount(int*); - HRESULT get_accChild(VARIANT, IDispatch*); - HRESULT get_accName(VARIANT, BSTR*); - HRESULT get_accValue(VARIANT, BSTR*); - HRESULT get_accDescription(VARIANT, BSTR*); - HRESULT get_accRole(VARIANT, VARIANT*); - HRESULT get_accState(VARIANT, VARIANT*); - HRESULT get_accHelp(VARIANT, BSTR*); - HRESULT get_accHelpTopic(BSTR*, VARIANT, int*); - HRESULT get_accKeyboardShortcut(VARIANT, BSTR*); - HRESULT get_accFocus(VARIANT*); - HRESULT get_accSelection(VARIANT*); - HRESULT get_accDefaultAction(VARIANT, BSTR*); - - HRESULT accSelect(int, VARIANT); - HRESULT accLocation(int*, int*, int*, int*, VARIANT); - HRESULT accNavigate(int, VARIANT, VARIANT*); - HRESULT accHitTest(int, int, VARIANT*); - HRESULT accDoDefaultAction(VARIANT); - - HRESULT put_accName(VARIANT, BSTR); - HRESULT put_accValue(VARIANT, BSTR); -} - -alias IAccessible LPACCESSIBLE; - -extern (Windows) { - HRESULT AccessibleChildren(IAccessible, LONG, LONG, VARIANT*, LONG*); - HRESULT AccessibleObjectFromEvent(HWND, DWORD, DWORD, IAccessible, VARIANT*); - HRESULT AccessibleObjectFromPoint(POINT, IAccessible*, VARIANT*); - HRESULT AccessibleObjectFromWindow(HWND, DWORD, REFIID, void**); - HRESULT CreateStdAccessibleObject(HWND, LONG, REFIID, void**); - HRESULT CreateStdAccessibleProxyA(HWND, LPCSTR, LONG, REFIID, void**); - HRESULT CreateStdAccessibleProxyW(HWND, LPCWSTR, LONG, REFIID, void**); - - void GetOleaccVersionInfo(DWORD*, DWORD*); - UINT GetRoleTextA(DWORD, LPSTR, UINT); - UINT GetRoleTextW(DWORD, LPWSTR, UINT); - UINT GetStateTextA(DWORD, LPSTR, UINT); - UINT GetStateTextW(DWORD, LPWSTR, UINT); - LRESULT LresultFromObject(REFIID, WPARAM, LPUNKNOWN); - HRESULT ObjectFromLresult(LRESULT, REFIID, WPARAM, void**); - HRESULT WindowFromAccessibleObject(IAccessible, HWND*); -} - -version(Unicode) { - alias CreateStdAccessibleProxyW CreateStdAccessibleProxy; - alias GetRoleTextW GetRoleText; - alias GetStateTextW GetStateText; -} else { - alias CreateStdAccessibleProxyA CreateStdAccessibleProxy; - alias GetRoleTextA GetRoleText; - alias GetStateTextA GetStateText; -} diff --git a/3rdparty-extra/win32/olectl.d b/3rdparty-extra/win32/olectl.d deleted file mode 100644 index edf79e0c8..000000000 --- a/3rdparty-extra/win32/olectl.d +++ /dev/null @@ -1,399 +0,0 @@ -/***********************************************************************\ -* olectl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.olectl; -version(Windows): - -// In conversion from MinGW, the following was deleted: -//#define FONTSIZE(n) {n##0000, 0} - -import win32.ocidl, win32.olectlid; -private import win32.basetyps, win32.oaidl, win32.oleauto, win32.unknwn, - win32.windef, win32.wingdi, win32.winuser, win32.wtypes; -private import win32.ntdef; // for NTSTATUS -private import win32.objfwd; // for LPSTREAM -private import win32.winerror; // for SCODE - - -private { - // These replace C macros. - template ITF_ERROR_SCODE_FOR_D(int c) - { - const SCODE ITF_ERROR_SCODE_FOR_D - = (SEVERITY_ERROR << 31) | (FACILITY_ITF << 16) | c; - } - - template ITF_SUCCESS_SCODE_FOR_D(int c) - { - const SCODE ITF_SUCCESS_SCODE_FOR_D - = (SEVERITY_SUCCESS << 31) | (FACILITY_ITF << 16) | c; - } - - template STD_CTL_SCODE(int c) - { - const SCODE STD_CTL_SCODE - = (SEVERITY_ERROR << 31) | (FACILITY_CONTROL << 16) | c; - } -} - -enum : SCODE { - CTL_E_ILLEGALFUNCTIONCALL = STD_CTL_SCODE!(5), - CTL_E_OVERFLOW = STD_CTL_SCODE!(6), - CTL_E_OUTOFMEMORY = STD_CTL_SCODE!(7), - CTL_E_DIVISIONBYZERO = STD_CTL_SCODE!(11), - CTL_E_OUTOFSTRINGSPACE = STD_CTL_SCODE!(14), - CTL_E_OUTOFSTACKSPACE = STD_CTL_SCODE!(28), - CTL_E_BADFILENAMEORNUMBER = STD_CTL_SCODE!(52), - CTL_E_FILENOTFOUND = STD_CTL_SCODE!(53), - CTL_E_BADFILEMODE = STD_CTL_SCODE!(54), - CTL_E_FILEALREADYOPEN = STD_CTL_SCODE!(55), - CTL_E_DEVICEIOERROR = STD_CTL_SCODE!(57), - CTL_E_FILEALREADYEXISTS = STD_CTL_SCODE!(58), - CTL_E_BADRECORDLENGTH = STD_CTL_SCODE!(59), - CTL_E_DISKFULL = STD_CTL_SCODE!(61), - CTL_E_BADRECORDNUMBER = STD_CTL_SCODE!(63), - CTL_E_BADFILENAME = STD_CTL_SCODE!(64), - CTL_E_TOOMANYFILES = STD_CTL_SCODE!(67), - CTL_E_DEVICEUNAVAILABLE = STD_CTL_SCODE!(68), - CTL_E_PERMISSIONDENIED = STD_CTL_SCODE!(70), - CTL_E_DISKNOTREADY = STD_CTL_SCODE!(71), - CTL_E_PATHFILEACCESSERROR = STD_CTL_SCODE!(75), - CTL_E_PATHNOTFOUND = STD_CTL_SCODE!(76), - CTL_E_INVALIDPATTERNSTRING = STD_CTL_SCODE!(93), - CTL_E_INVALIDUSEOFNULL = STD_CTL_SCODE!(94), - CTL_E_INVALIDFILEFORMAT = STD_CTL_SCODE!(321), - CTL_E_INVALIDPROPERTYVALUE = STD_CTL_SCODE!(380), - CTL_E_INVALIDPROPERTYARRAYINDEX = STD_CTL_SCODE!(381), - CTL_E_SETNOTSUPPORTEDATRUNTIME = STD_CTL_SCODE!(382), - CTL_E_SETNOTSUPPORTED = STD_CTL_SCODE!(383), - CTL_E_NEEDPROPERTYARRAYINDEX = STD_CTL_SCODE!(385), - CTL_E_SETNOTPERMITTED = STD_CTL_SCODE!(387), - CTL_E_GETNOTSUPPORTEDATRUNTIME = STD_CTL_SCODE!(393), - CTL_E_GETNOTSUPPORTED = STD_CTL_SCODE!(394), - CTL_E_PROPERTYNOTFOUND = STD_CTL_SCODE!(422), - CTL_E_INVALIDCLIPBOARDFORMAT = STD_CTL_SCODE!(460), - CTL_E_INVALIDPICTURE = STD_CTL_SCODE!(481), - CTL_E_PRINTERERROR = STD_CTL_SCODE!(482), - CTL_E_CANTSAVEFILETOTEMP = STD_CTL_SCODE!(735), - CTL_E_SEARCHTEXTNOTFOUND = STD_CTL_SCODE!(744), - CTL_E_REPLACEMENTSTOOLONG = STD_CTL_SCODE!(746), - CTL_E_CUSTOM_FIRST = STD_CTL_SCODE!(600) -} - -const SCODE CLASS_E_NOTLICENSED = CLASSFACTORY_E_FIRST+2; - -enum : SCODE { - CONNECT_E_FIRST = ITF_ERROR_SCODE_FOR_D!(0x200), - CONNECT_E_LAST = ITF_ERROR_SCODE_FOR_D!(0x20F), - CONNECT_S_FIRST = ITF_SUCCESS_SCODE_FOR_D!(0x200), - CONNECT_S_LAST = ITF_SUCCESS_SCODE_FOR_D!(0x20F), - CONNECT_E_NOCONNECTION = CONNECT_E_FIRST + 0, - CONNECT_E_ADVISELIMIT = CONNECT_E_FIRST + 1, - CONNECT_E_CANNOTCONNECT = CONNECT_E_FIRST + 2, - CONNECT_E_OVERRIDDEN = CONNECT_E_FIRST + 3, - - SELFREG_E_FIRST = ITF_ERROR_SCODE_FOR_D!(0x200), - SELFREG_E_LAST = ITF_ERROR_SCODE_FOR_D!(0x20F), - SELFREG_S_FIRST = ITF_SUCCESS_SCODE_FOR_D!(0x200), - SELFREG_S_LAST = ITF_SUCCESS_SCODE_FOR_D!(0x20F), - SELFREG_E_TYPELIB = SELFREG_E_FIRST + 0, - SELFREG_E_CLASS = SELFREG_E_FIRST + 1, - - PERPROP_E_FIRST = ITF_ERROR_SCODE_FOR_D!(0x200), - PERPROP_E_LAST = ITF_ERROR_SCODE_FOR_D!(0x20F), - PERPROP_S_FIRST = ITF_SUCCESS_SCODE_FOR_D!(0x200), - PERPROP_S_LAST = ITF_SUCCESS_SCODE_FOR_D!(0x20F), - PERPROP_E_NOPAGEAVAILABLE = PERPROP_E_FIRST -} - -enum { - OLEMISC_RECOMPOSEONRESIZE = 0x1, - OLEMISC_ONLYICONIC = 0x2, - OLEMISC_INSERTNOTREPLACE = 0x4, - OLEMISC_STATIC = 0x8, - OLEMISC_CANTLINKINSIDE = 0x10, - OLEMISC_CANLINKBYOLE1 = 0x20, - OLEMISC_ISLINKOBJECT = 0x40, - OLEMISC_INSIDEOUT = 0x80, - OLEMISC_ACTIVATEWHENVISIBLE = 0x100, - OLEMISC_RENDERINGISDEVICEINDEPENDENT = 0x200, - OLEMISC_INVISIBLEATRUNTIME = 0x400, - OLEMISC_ALWAYSRUN = 0x800, - OLEMISC_ACTSLIKEBUTTON = 0x1000, - OLEMISC_ACTSLIKELABEL = 0x2000, - OLEMISC_NOUIACTIVATE = 0x4000, - OLEMISC_ALIGNABLE = 0x8000, - OLEMISC_SIMPLEFRAME = 0x10000, - OLEMISC_SETCLIENTSITEFIRST = 0x20000, - OLEMISC_IMEMODE = 0x40000, - OLEMISC_IGNOREACTIVATEWHENVISIBLE = 0x80000, - OLEMISC_WANTSTOMENUMERGE = 0x100000, - OLEMISC_SUPPORTSMULTILEVELUNDO = 0x200000 -} -const OLEIVERB_PROPERTIES = -7; - -const VT_STREAMED_PROPSET = 73; -const VT_STORED_PROPSET = 74; -const VT_BLOB_PROPSET = 75; -const VT_VERBOSE_ENUM = 76; -const VT_COLOR = VARENUM.VT_I4; -const VT_XPOS_PIXELS = VARENUM.VT_I4; -const VT_YPOS_PIXELS = VARENUM.VT_I4; -const VT_XSIZE_PIXELS = VARENUM.VT_I4; -const VT_YSIZE_PIXELS = VARENUM.VT_I4; -const VT_XPOS_HIMETRIC = VARENUM.VT_I4; -const VT_YPOS_HIMETRIC = VARENUM.VT_I4; -const VT_XSIZE_HIMETRIC = VARENUM.VT_I4; -const VT_YSIZE_HIMETRIC = VARENUM.VT_I4; -const VT_TRISTATE = VARENUM.VT_I2; -const VT_OPTEXCLUSIVE = VARENUM.VT_BOOL; -const VT_FONT = VARENUM.VT_DISPATCH; -const VT_PICTURE = VARENUM.VT_DISPATCH; -const VT_HANDLE = VARENUM.VT_I4; - -enum { - OCM__BASE = WM_USER + 0x1c00, - OCM_COMMAND = OCM__BASE + WM_COMMAND, - OCM_CTLCOLORBTN = OCM__BASE + WM_CTLCOLORBTN, - OCM_CTLCOLOREDIT = OCM__BASE + WM_CTLCOLOREDIT, - OCM_CTLCOLORDLG = OCM__BASE + WM_CTLCOLORDLG, - OCM_CTLCOLORLISTBOX = OCM__BASE + WM_CTLCOLORLISTBOX, - OCM_CTLCOLORMSGBOX = OCM__BASE + WM_CTLCOLORMSGBOX, - OCM_CTLCOLORSCROLLBAR = OCM__BASE + WM_CTLCOLORSCROLLBAR, - OCM_CTLCOLORSTATIC = OCM__BASE + WM_CTLCOLORSTATIC, - OCM_DRAWITEM = OCM__BASE + WM_DRAWITEM, - OCM_MEASUREITEM = OCM__BASE + WM_MEASUREITEM, - OCM_DELETEITEM = OCM__BASE + WM_DELETEITEM, - OCM_VKEYTOITEM = OCM__BASE + WM_VKEYTOITEM, - OCM_CHARTOITEM = OCM__BASE + WM_CHARTOITEM, - OCM_COMPAREITEM = OCM__BASE + WM_COMPAREITEM, - OCM_HSCROLL = OCM__BASE + WM_HSCROLL, - OCM_VSCROLL = OCM__BASE + WM_VSCROLL, - OCM_PARENTNOTIFY = OCM__BASE + WM_PARENTNOTIFY, - OCM_NOTIFY = OCM__BASE + WM_NOTIFY -} - -enum { - CTRLINFO_EATS_RETURN = 1, - CTRLINFO_EATS_ESCAPE -} - -enum { - XFORMCOORDS_POSITION = 1, - XFORMCOORDS_SIZE = 2, - XFORMCOORDS_HIMETRICTOCONTAINER = 4, - XFORMCOORDS_CONTAINERTOHIMETRIC = 8 -} - -const GUIDKIND_DEFAULT_SOURCE_DISP_IID = 1; - -enum { - PROPPAGESTATUS_DIRTY = 1, - PROPPAGESTATUS_VALIDATE = 2 -} - -enum { - PICTURE_SCALABLE = 1, - PICTURE_TRANSPARENT = 2 -} - -enum { - PICTYPE_UNINITIALIZED = -1, - PICTYPE_NONE, // = 0 - PICTYPE_BITMAP, - PICTYPE_METAFILE, - PICTYPE_ICON, - PICTYPE_ENHMETAFILE // = 4 -} - -enum { - DISPID_AUTOSIZE = -500, - DISPID_BACKCOLOR = -501, - DISPID_BACKSTYLE = -502, - DISPID_BORDERCOLOR = -503, - DISPID_BORDERSTYLE = -504, - DISPID_BORDERWIDTH = -505, - DISPID_DRAWMODE = -507, - DISPID_DRAWSTYLE = -508, - DISPID_DRAWWIDTH = -509, - DISPID_FILLCOLOR = -510, - DISPID_FILLSTYLE = -511, - DISPID_FONT = -512, - DISPID_FORECOLOR = -513, - DISPID_ENABLED = -514, - DISPID_HWND = -515, - DISPID_TABSTOP = -516, - DISPID_TEXT = -517, - DISPID_CAPTION = -518, - DISPID_BORDERVISIBLE = -519, - DISPID_APPEARANCE = -520, - DISPID_MOUSEPOINTER = -521, - DISPID_MOUSEICON = -522, - DISPID_PICTURE = -523, - DISPID_VALID = -524, - DISPID_REFRESH = -550, - DISPID_DOCLICK = -551, - DISPID_ABOUTBOX = -552, - DISPID_CLICK = -600, - DISPID_DBLCLICK = -601, - DISPID_KEYDOWN = -602, - DISPID_KEYPRESS = -603, - DISPID_KEYUP = -604, - DISPID_MOUSEDOWN = -605, - DISPID_MOUSEMOVE = -606, - DISPID_MOUSEUP = -607, - DISPID_ERROREVENT = -608, - DISPID_AMBIENT_BACKCOLOR = -701, - DISPID_AMBIENT_DISPLAYNAME = -702, - DISPID_AMBIENT_FONT = -703, - DISPID_AMBIENT_FORECOLOR = -704, - DISPID_AMBIENT_LOCALEID = -705, - DISPID_AMBIENT_MESSAGEREFLECT = -706, - DISPID_AMBIENT_SCALEUNITS = -707, - DISPID_AMBIENT_TEXTALIGN = -708, - DISPID_AMBIENT_USERMODE = -709, - DISPID_AMBIENT_UIDEAD = -710, - DISPID_AMBIENT_SHOWGRABHANDLES = -711, - DISPID_AMBIENT_SHOWHATCHING = -712, - DISPID_AMBIENT_DISPLAYASDEFAULT = -713, - DISPID_AMBIENT_SUPPORTSMNEMONICS = -714, - DISPID_AMBIENT_AUTOCLIP = -715, - DISPID_AMBIENT_APPEARANCE = -716, - DISPID_AMBIENT_CODEPAGE = -725, - DISPID_AMBIENT_PALETTE = -726, - DISPID_AMBIENT_CHARSET = -727, - DISPID_AMBIENT_RIGHTTOLEFT = -732, - DISPID_AMBIENT_TOPTOBOTTOM = -733 -} - -enum { - DISPID_FONT_NAME = 0, - DISPID_FONT_SIZE = 2, - DISPID_FONT_BOLD, - DISPID_FONT_ITALIC, - DISPID_FONT_UNDER, - DISPID_FONT_STRIKE, - DISPID_FONT_WEIGHT, - DISPID_FONT_CHARSET // = 8 -} - -enum { - DISPID_PICT_HANDLE = 0, - DISPID_PICT_HPAL = 2, - DISPID_PICT_TYPE, - DISPID_PICT_WIDTH, - DISPID_PICT_HEIGHT, - DISPID_PICT_RENDER // = 6 -} - -alias IOleControl LPOLECONTROL; -alias IOleControlSite LPOLECONTROLSITE; -alias ISimpleFrameSite LPSIMPLEFRAMESITE; -alias IPersistPropertyBag LPPERSISTPROPERTYBAG; -alias IPersistStreamInit LPPERSISTSTREAMINIT; -alias IPersistMemory LPPERSISTMEMORY; -alias IPropertyNotifySink LPPROPERTYNOTIFYSINK; -alias IProvideClassInfo LPPROVIDECLASSINFO; -alias IProvideClassInfo2 LPPROVIDECLASSINFO2; -alias IConnectionPointContainer LPCONNECTIONPOINTCONTAINER; -alias IClassFactory2 LPCLASSFACTORY2; -alias ISpecifyPropertyPages LPSPECIFYPROPERTYPAGES; -alias IPerPropertyBrowsing LPPERPROPERTYBROWSING; -alias IPropertyPage LPPROPERTYPAGE; -alias IPropertyPage2 LPPROPERTYPAGE2; - -alias IPicture LPPICTURE; -alias IPictureDisp LPPICTUREDISP; -alias int OLE_XPOS_PIXELS; -alias int OLE_YPOS_PIXELS; -alias int OLE_XSIZE_PIXELS; -alias int OLE_YSIZE_PIXELS; -alias float OLE_XPOS_CONTAINER; -alias float OLE_YPOS_CONTAINER; -alias float OLE_XSIZE_CONTAINER; - -alias VARIANT_BOOL OLE_OPTEXCLUSIVE; -alias VARIANT_BOOL OLE_CANCELBOOL; -alias VARIANT_BOOL OLE_ENABLEDEFAULTBOOL; - -align(8): - -enum OLE_TRISTATE { - triUnchecked, - triChecked1, - triGray -} - -struct OCPFIPARAMS { - ULONG cbStructSize; - HWND hWndOwner; - int x; - int y; - LPCOLESTR lpszCaption; - ULONG cObjects; - LPUNKNOWN *lplpUnk; - ULONG cPages; - CLSID *lpPages; - LCID lcid; - DISPID dispidInitialProperty; -} -alias OCPFIPARAMS* LPOCPFIPARAMS; - -struct FONTDESC { - UINT cbSizeofstruct; - LPOLESTR lpstrName; - CY cySize; - SHORT sWeight; - SHORT sCharset; - BOOL fItalic; - BOOL fUnderline; - BOOL fStrikethrough; -} -alias FONTDESC* LPFONTDESC; - -struct PICTDESC -{ - UINT cbSizeofstruct; - UINT picType; - union { - struct bmp { - HBITMAP hbitmap; - HPALETTE hpal; - } - struct wmf { - HMETAFILE hmeta; - int xExt; - int yExt; - } - struct icon { - HICON hicon; - } - struct emf { - HENHMETAFILE hemf; - } - } -} -alias PICTDESC* LPPICTDESC; - -extern(Windows) { - HRESULT DllRegisterServer(); - HRESULT DllUnregisterServer(); - HRESULT OleCreateFontIndirect(LPFONTDESC, REFIID, PVOID*); - HRESULT OleCreatePictureIndirect(LPPICTDESC, REFIID, BOOL, PVOID*); - HRESULT OleCreatePropertyFrame(HWND, UINT, UINT, LPCOLESTR, ULONG, LPUNKNOWN*, ULONG, LPCLSID, LCID, DWORD, PVOID); - HRESULT OleCreatePropertyFrameIndirect(LPOCPFIPARAMS); - HCURSOR OleIconToCursor(HINSTANCE, HICON); - HRESULT OleLoadPicture(LPSTREAM, LONG, BOOL, REFIID, PVOID*); - HRESULT OleLoadPictureEx(LPSTREAM, LONG, BOOL, REFIID, DWORD, DWORD, DWORD, LPVOID*); - HRESULT OleLoadPicturePath(LPOLESTR, LPUNKNOWN, DWORD, OLE_COLOR, REFIID, LPVOID*); - HRESULT OleLoadPictureFile(VARIANT, LPDISPATCH*); - HRESULT OleLoadPictureFileEx(VARIANT, DWORD, DWORD, DWORD, LPDISPATCH*); - HRESULT OleSavePictureFile(LPDISPATCH, BSTR); - HRESULT OleTranslateColor(OLE_COLOR, HPALETTE, COLORREF*); -} diff --git a/3rdparty-extra/win32/oledlg.d b/3rdparty-extra/win32/oledlg.d deleted file mode 100644 index f959120c2..000000000 --- a/3rdparty-extra/win32/oledlg.d +++ /dev/null @@ -1,991 +0,0 @@ -/***********************************************************************\ -* oledlg.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.oledlg; -version(Windows): - -import win32.commdlg, win32.dlgs, win32.ole2, win32.prsht, win32.shellapi, - win32.windows; -private import win32.winbase, win32.objidl, win32.objfwd, win32.winnt; - -// FIXME: remove inherited methods from interface definitions - -const PS_MAXLINKTYPES=8; - -const TCHAR[] OLESTDDELIM = "\\"; -const TCHAR[] SZOLEUI_MSG_HELP = "OLEUI_MSG_HELP"; -const TCHAR[] SZOLEUI_MSG_ENDDIALOG = "OLEUI_MSG_ENDDIALOG"; -const TCHAR[] SZOLEUI_MSG_BROWSE = "OLEUI_MSG_BROWSE"; -const TCHAR[] SZOLEUI_MSG_CHANGEICON = "OLEUI_MSG_CHANGEICON"; -const TCHAR[] SZOLEUI_MSG_CLOSEBUSYDIALOG = "OLEUI_MSG_CLOSEBUSYDIALOG"; -const TCHAR[] SZOLEUI_MSG_CONVERT = "OLEUI_MSG_CONVERT"; -const TCHAR[] SZOLEUI_MSG_CHANGESOURCE = "OLEUI_MSG_CHANGESOURCE"; -const TCHAR[] SZOLEUI_MSG_ADDCONTROL = "OLEUI_MSG_ADDCONTROL"; -const TCHAR[] SZOLEUI_MSG_BROWSE_OFN = "OLEUI_MSG_BROWSE_OFN"; - -const TCHAR[] PROP_HWND_CHGICONDLG = "HWND_CIDLG"; - -const IDC_OLEUIHELP=99; - -enum { - IDC_IO_CREATENEW = 2100, - IDC_IO_CREATEFROMFILE, - IDC_IO_LINKFILE, - IDC_IO_OBJECTTYPELIST, - IDC_IO_DISPLAYASICON, - IDC_IO_CHANGEICON, - IDC_IO_FILE, - IDC_IO_FILEDISPLAY, - IDC_IO_RESULTIMAGE, - IDC_IO_RESULTTEXT, - IDC_IO_ICONDISPLAY, - IDC_IO_OBJECTTYPETEXT, - IDC_IO_FILETEXT, - IDC_IO_FILETYPE, - IDC_IO_INSERTCONTROL, - IDC_IO_ADDCONTROL, - IDC_IO_CONTROLTYPELIST // = 2116 -} - -const IDC_PS_PASTE=500; -const IDC_PS_PASTELINK=501; -const IDC_PS_SOURCETEXT=502; -const IDC_PS_PASTELIST=503; -const IDC_PS_PASTELINKLIST=504; -const IDC_PS_DISPLAYLIST=505; -const IDC_PS_DISPLAYASICON=506; -const IDC_PS_ICONDISPLAY=507; -const IDC_PS_CHANGEICON=508; -const IDC_PS_RESULTIMAGE=509; -const IDC_PS_RESULTTEXT=510; - -const IDC_CI_GROUP=120; -const IDC_CI_CURRENT=121; -const IDC_CI_CURRENTICON=122; -const IDC_CI_DEFAULT=123; -const IDC_CI_DEFAULTICON=124; -const IDC_CI_FROMFILE=125; -const IDC_CI_FROMFILEEDIT=126; -const IDC_CI_ICONLIST=127; -const IDC_CI_LABEL=128; -const IDC_CI_LABELEDIT=129; -const IDC_CI_BROWSE=130; -const IDC_CI_ICONDISPLAY=131; - -const IDC_CV_OBJECTTYPE=150; -const IDC_CV_DISPLAYASICON=152; -const IDC_CV_CHANGEICON=153; -const IDC_CV_ACTIVATELIST=154; -const IDC_CV_CONVERTTO=155; -const IDC_CV_ACTIVATEAS=156; -const IDC_CV_RESULTTEXT=157; -const IDC_CV_CONVERTLIST=158; -const IDC_CV_ICONDISPLAY=165; - -const IDC_EL_CHANGESOURCE=201; -const IDC_EL_AUTOMATIC=202; -const IDC_EL_CANCELLINK=209; -const IDC_EL_UPDATENOW=210; -const IDC_EL_OPENSOURCE=211; -const IDC_EL_MANUAL=212; -const IDC_EL_LINKSOURCE=216; -const IDC_EL_LINKTYPE=217; -const IDC_EL_LINKSLISTBOX=206; -const IDC_EL_COL1=220; -const IDC_EL_COL2=221; -const IDC_EL_COL3=222; - -const IDC_BZ_RETRY=600; -const IDC_BZ_ICON=601; -const IDC_BZ_MESSAGE1=602; -const IDC_BZ_SWITCHTO=604; - -const IDC_UL_METER=1029; -const IDC_UL_STOP=1030; -const IDC_UL_PERCENT=1031; -const IDC_UL_PROGRESS=1032; - -const IDC_PU_LINKS=900; -const IDC_PU_TEXT=901; -const IDC_PU_CONVERT=902; -const IDC_PU_ICON=908; - -const IDC_GP_OBJECTNAME=1009; -const IDC_GP_OBJECTTYPE=1010; -const IDC_GP_OBJECTSIZE=1011; -const IDC_GP_CONVERT=1013; -const IDC_GP_OBJECTICON=1014; -const IDC_GP_OBJECTLOCATION=1022; - -const IDC_VP_PERCENT=1000; -const IDC_VP_CHANGEICON=1001; -const IDC_VP_EDITABLE=1002; -const IDC_VP_ASICON=1003; -const IDC_VP_RELATIVE=1005; -const IDC_VP_SPIN=1006; -const IDC_VP_SCALETXT=1034; -const IDC_VP_ICONDISPLAY=1021; -const IDC_VP_RESULTIMAGE=1033; - -const IDC_LP_OPENSOURCE=1006; -const IDC_LP_UPDATENOW=1007; -const IDC_LP_BREAKLINK=1008; -const IDC_LP_LINKSOURCE=1012; -const IDC_LP_CHANGESOURCE=1015; -const IDC_LP_AUTOMATIC=1016; -const IDC_LP_MANUAL=1017; -const IDC_LP_DATE=1018; -const IDC_LP_TIME=1019; - -const IDD_INSERTOBJECT=1000; -const IDD_CHANGEICON=1001; -const IDD_CONVERT=1002; -const IDD_PASTESPECIAL=1003; -const IDD_EDITLINKS=1004; -const IDD_BUSY=1006; -const IDD_UPDATELINKS=1007; -const IDD_CHANGESOURCE=1009; -const IDD_INSERTFILEBROWSE=1010; -const IDD_CHANGEICONBROWSE=1011; -const IDD_CONVERTONLY=1012; -const IDD_CHANGESOURCE4=1013; -const IDD_GNRLPROPS=1100; -const IDD_VIEWPROPS=1101; -const IDD_LINKPROPS=1102; -const IDD_CANNOTUPDATELINK=1008; -const IDD_LINKSOURCEUNAVAILABLE=1020; -const IDD_SERVERNOTFOUND=1023; -const IDD_OUTOFMEMORY=1024; -const IDD_SERVERNOTREGW=1021; -const IDD_LINKTYPECHANGEDW=1022; -const IDD_SERVERNOTREGA=1025; -const IDD_LINKTYPECHANGEDA=1026; - -const ID_BROWSE_CHANGEICON=1; -const ID_BROWSE_INSERTFILE=2; -const ID_BROWSE_ADDCONTROL=3; -const ID_BROWSE_CHANGESOURCE=4; - -const OLEUI_FALSE=0; -const OLEUI_SUCCESS=1; -const OLEUI_OK=1; -const OLEUI_CANCEL=2; - -const OLEUI_ERR_STANDARDMIN=100; -const OLEUI_ERR_STRUCTURENULL=101; -const OLEUI_ERR_STRUCTUREINVALID=102; -const OLEUI_ERR_CBSTRUCTINCORRECT=103; -const OLEUI_ERR_HWNDOWNERINVALID=104; -const OLEUI_ERR_LPSZCAPTIONINVALID=105; -const OLEUI_ERR_LPFNHOOKINVALID=106; -const OLEUI_ERR_HINSTANCEINVALID=107; -const OLEUI_ERR_LPSZTEMPLATEINVALID=108; -const OLEUI_ERR_HRESOURCEINVALID=109; -const OLEUI_ERR_FINDTEMPLATEFAILURE=110; -const OLEUI_ERR_LOADTEMPLATEFAILURE=111; -const OLEUI_ERR_DIALOGFAILURE=112; -const OLEUI_ERR_LOCALMEMALLOC=113; -const OLEUI_ERR_GLOBALMEMALLOC=114; -const OLEUI_ERR_LOADSTRING=115; -const OLEUI_ERR_OLEMEMALLOC=116; -const OLEUI_ERR_STANDARDMAX=116; - -const OPF_OBJECTISLINK=1; -const OPF_NOFILLDEFAULT=2; -const OPF_SHOWHELP=4; -const OPF_DISABLECONVERT=8; - -const OLEUI_OPERR_SUBPROPNULL=OLEUI_ERR_STANDARDMAX; -const OLEUI_OPERR_SUBPROPINVALID=(OLEUI_ERR_STANDARDMAX+1); -const OLEUI_OPERR_PROPSHEETNULL=(OLEUI_ERR_STANDARDMAX+2); -const OLEUI_OPERR_PROPSHEETINVALID=(OLEUI_ERR_STANDARDMAX+3); -const OLEUI_OPERR_SUPPROP=(OLEUI_ERR_STANDARDMAX+4); -const OLEUI_OPERR_PROPSINVALID=(OLEUI_ERR_STANDARDMAX+5); -const OLEUI_OPERR_PAGESINCORRECT=(OLEUI_ERR_STANDARDMAX+6); -const OLEUI_OPERR_INVALIDPAGES=(OLEUI_ERR_STANDARDMAX+7); -const OLEUI_OPERR_NOTSUPPORTED=(OLEUI_ERR_STANDARDMAX+8); -const OLEUI_OPERR_DLGPROCNOTNULL=(OLEUI_ERR_STANDARDMAX+9); -const OLEUI_OPERR_LPARAMNOTZERO=(OLEUI_ERR_STANDARDMAX+10); -const OLEUI_GPERR_STRINGINVALID=(OLEUI_ERR_STANDARDMAX+11); -const OLEUI_GPERR_CLASSIDINVALID=(OLEUI_ERR_STANDARDMAX+12); -const OLEUI_GPERR_LPCLSIDEXCLUDEINVALID=(OLEUI_ERR_STANDARDMAX+13); -const OLEUI_GPERR_CBFORMATINVALID=(OLEUI_ERR_STANDARDMAX+14); -const OLEUI_VPERR_METAPICTINVALID=(OLEUI_ERR_STANDARDMAX+15); -const OLEUI_VPERR_DVASPECTINVALID=(OLEUI_ERR_STANDARDMAX+16); -const OLEUI_LPERR_LINKCNTRNULL=(OLEUI_ERR_STANDARDMAX+17); -const OLEUI_LPERR_LINKCNTRINVALID=(OLEUI_ERR_STANDARDMAX+18); -const OLEUI_OPERR_PROPERTYSHEET=(OLEUI_ERR_STANDARDMAX+19); -const OLEUI_OPERR_OBJINFOINVALID=(OLEUI_ERR_STANDARDMAX+20); -const OLEUI_OPERR_LINKINFOINVALID=(OLEUI_ERR_STANDARDMAX+21); - -const OLEUI_QUERY_GETCLASSID=65280; -const OLEUI_QUERY_LINKBROKEN=65281; - -const IOF_SHOWHELP=1; -const IOF_SELECTCREATENEW=2; -const IOF_SELECTCREATEFROMFILE=4; -const IOF_CHECKLINK=8; -const IOF_CHECKDISPLAYASICON=16; -const IOF_CREATENEWOBJECT=32; -const IOF_CREATEFILEOBJECT=64; -const IOF_CREATELINKOBJECT=128; -const IOF_DISABLELINK=256; -const IOF_VERIFYSERVERSEXIST=512; -const IOF_DISABLEDISPLAYASICON=1024; -const IOF_HIDECHANGEICON=2048; -const IOF_SHOWINSERTCONTROL=4096; -const IOF_SELECTCREATECONTROL=8192; - -const OLEUI_IOERR_LPSZFILEINVALID=OLEUI_ERR_STANDARDMAX; -const OLEUI_IOERR_LPSZLABELINVALID=(OLEUI_ERR_STANDARDMAX+1); -const OLEUI_IOERR_HICONINVALID=(OLEUI_ERR_STANDARDMAX+2); -const OLEUI_IOERR_LPFORMATETCINVALID=(OLEUI_ERR_STANDARDMAX+3); -const OLEUI_IOERR_PPVOBJINVALID=(OLEUI_ERR_STANDARDMAX+4); -const OLEUI_IOERR_LPIOLECLIENTSITEINVALID=(OLEUI_ERR_STANDARDMAX+5); -const OLEUI_IOERR_LPISTORAGEINVALID=(OLEUI_ERR_STANDARDMAX+6); -const OLEUI_IOERR_SCODEHASERROR=(OLEUI_ERR_STANDARDMAX+7); -const OLEUI_IOERR_LPCLSIDEXCLUDEINVALID=(OLEUI_ERR_STANDARDMAX+8); -const OLEUI_IOERR_CCHFILEINVALID=(OLEUI_ERR_STANDARDMAX+9); - -const PSF_SHOWHELP=1; -const PSF_SELECTPASTE=2; -const PSF_SELECTPASTELINK=4; -const PSF_CHECKDISPLAYASICON=8; -const PSF_DISABLEDISPLAYASICON=16; -const PSF_HIDECHANGEICON=32; -const PSF_STAYONCLIPBOARDCHANGE=64; -const PSF_NOREFRESHDATAOBJECT=128; - -const OLEUI_IOERR_SRCDATAOBJECTINVALID=OLEUI_ERR_STANDARDMAX; -const OLEUI_IOERR_ARRPASTEENTRIESINVALID=(OLEUI_ERR_STANDARDMAX+1); -const OLEUI_IOERR_ARRLINKTYPESINVALID=(OLEUI_ERR_STANDARDMAX+2); -const OLEUI_PSERR_CLIPBOARDCHANGED=(OLEUI_ERR_STANDARDMAX+3); -const OLEUI_PSERR_GETCLIPBOARDFAILED=(OLEUI_ERR_STANDARDMAX+4); -const OLEUI_ELERR_LINKCNTRNULL=OLEUI_ERR_STANDARDMAX; -const OLEUI_ELERR_LINKCNTRINVALID=(OLEUI_ERR_STANDARDMAX+1); - -const ELF_SHOWHELP=1; -const ELF_DISABLEUPDATENOW=2; -const ELF_DISABLEOPENSOURCE=4; -const ELF_DISABLECHANGESOURCE=8; -const ELF_DISABLECANCELLINK=16; - -const CIF_SHOWHELP=1; -const CIF_SELECTCURRENT=2; -const CIF_SELECTDEFAULT=4; -const CIF_SELECTFROMFILE=8; -const CIF_USEICONEXE=16; - -const OLEUI_CIERR_MUSTHAVECLSID=OLEUI_ERR_STANDARDMAX; -const OLEUI_CIERR_MUSTHAVECURRENTMETAFILE=OLEUI_ERR_STANDARDMAX+1; -const OLEUI_CIERR_SZICONEXEINVALID=OLEUI_ERR_STANDARDMAX+2; - -const CF_SHOWHELPBUTTON=1; -const CF_SETCONVERTDEFAULT=2; -const CF_SETACTIVATEDEFAULT=4; -const CF_SELECTCONVERTTO=8; -const CF_SELECTACTIVATEAS=16; -const CF_DISABLEDISPLAYASICON=32; -const CF_DISABLEACTIVATEAS=64; -const CF_HIDECHANGEICON=128; -const CF_CONVERTONLY=256; - -const OLEUI_CTERR_CLASSIDINVALID = OLEUI_ERR_STANDARDMAX+1; -const OLEUI_CTERR_DVASPECTINVALID = OLEUI_ERR_STANDARDMAX+2; -const OLEUI_CTERR_CBFORMATINVALID = OLEUI_ERR_STANDARDMAX+3; -const OLEUI_CTERR_HMETAPICTINVALID = OLEUI_ERR_STANDARDMAX+4; -const OLEUI_CTERR_STRINGINVALID = OLEUI_ERR_STANDARDMAX+5; - -const BZ_DISABLECANCELBUTTON = 1; -const BZ_DISABLESWITCHTOBUTTON = 2; -const BZ_DISABLERETRYBUTTON = 4; -const BZ_NOTRESPONDINGDIALOG = 8; - -const OLEUI_BZERR_HTASKINVALID = OLEUI_ERR_STANDARDMAX; -const OLEUI_BZ_SWITCHTOSELECTED = OLEUI_ERR_STANDARDMAX+1; -const OLEUI_BZ_RETRYSELECTED = OLEUI_ERR_STANDARDMAX+2; -const OLEUI_BZ_CALLUNBLOCKED = OLEUI_ERR_STANDARDMAX+3; - -const CSF_SHOWHELP = 1; -const CSF_VALIDSOURCE = 2; -const CSF_ONLYGETSOURCE = 4; -const CSF_EXPLORER = 8; - -const OLEUI_CSERR_LINKCNTRNULL = OLEUI_ERR_STANDARDMAX; -const OLEUI_CSERR_LINKCNTRINVALID = OLEUI_ERR_STANDARDMAX+1; -const OLEUI_CSERR_FROMNOTNULL = OLEUI_ERR_STANDARDMAX+2; -const OLEUI_CSERR_TONOTNULL = OLEUI_ERR_STANDARDMAX+3; -const OLEUI_CSERR_SOURCENULL = OLEUI_ERR_STANDARDMAX+4; -const OLEUI_CSERR_SOURCEINVALID = OLEUI_ERR_STANDARDMAX+5; -const OLEUI_CSERR_SOURCEPARSERROR = OLEUI_ERR_STANDARDMAX+6; -const OLEUI_CSERR_SOURCEPARSEERROR = OLEUI_ERR_STANDARDMAX+7; - -const VPF_SELECTRELATIVE=1; -const VPF_DISABLERELATIVE=2; -const VPF_DISABLESCALE=4; - -align(8): -extern (Windows) { - alias UINT function(HWND, UINT, WPARAM, LPARAM) LPFNOLEUIHOOK; -} - -struct OLEUIINSERTOBJECTW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - CLSID clsid; - LPWSTR lpszFile; - UINT cchFile; - UINT cClsidExclude; - LPCLSID lpClsidExclude; - IID iid; - DWORD oleRender; - LPFORMATETC lpFormatEtc; - LPOLECLIENTSITE lpIOleClientSite; - LPSTORAGE lpIStorage; - PVOID *ppvObj; - SCODE sc; - HGLOBAL hMetaPict; -} -alias OLEUIINSERTOBJECTW* POLEUIINSERTOBJECTW, LPOLEUIINSERTOBJECTW; - -struct OLEUIINSERTOBJECTA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - CLSID clsid; - LPSTR lpszFile; - UINT cchFile; - UINT cClsidExclude; - LPCLSID lpClsidExclude; - IID iid; - DWORD oleRender; - LPFORMATETC lpFormatEtc; - LPOLECLIENTSITE lpIOleClientSite; - LPSTORAGE lpIStorage; - PVOID *ppvObj; - SCODE sc; - HGLOBAL hMetaPict; -} -alias OLEUIINSERTOBJECTA* POLEUIINSERTOBJECTA, LPOLEUIINSERTOBJECTA; - -UINT OleUIInsertObjectW(LPOLEUIINSERTOBJECTW); -UINT OleUIInsertObjectA(LPOLEUIINSERTOBJECTA); - -enum OLEUIPASTEFLAG { - OLEUIPASTE_PASTEONLY, - OLEUIPASTE_LINKTYPE1, - OLEUIPASTE_LINKTYPE2, - OLEUIPASTE_LINKTYPE3 = 4, - OLEUIPASTE_LINKTYPE4 = 8, - OLEUIPASTE_LINKTYPE5 = 16, - OLEUIPASTE_LINKTYPE6 = 32, - OLEUIPASTE_LINKTYPE7 = 64, - OLEUIPASTE_LINKTYPE8 = 128, - OLEUIPASTE_PASTE = 512, - OLEUIPASTE_LINKANYTYPE = 1024, - OLEUIPASTE_ENABLEICON = 2048 -} - -struct OLEUIPASTEENTRYW { - FORMATETC fmtetc; - LPCWSTR lpstrFormatName; - LPCWSTR lpstrResultText; - DWORD dwFlags; - DWORD dwScratchSpace; -} -alias OLEUIPASTEENTRYW* POLEUIPASTEENTRYW, LPOLEUIPASTEENTRYW; - -struct OLEUIPASTEENTRYA { - FORMATETC fmtetc; - LPCSTR lpstrFormatName; - LPCSTR lpstrResultText; - DWORD dwFlags; - DWORD dwScratchSpace; -} -alias OLEUIPASTEENTRYA* POLEUIPASTEENTRYA, LPOLEUIPASTEENTRYA; - -struct OLEUIPASTESPECIALW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - LPDATAOBJECT lpSrcDataObj; - LPOLEUIPASTEENTRYW arrPasteEntries; - int cPasteEntries; - UINT *arrLinkTypes; - int cLinkTypes; - UINT cClsidExclude; - LPCLSID lpClsidExclude; - int nSelectedIndex; - BOOL fLink; - HGLOBAL hMetaPict; - SIZEL sizel; -} -alias OLEUIPASTESPECIALW* POLEUIPASTESPECIALW, LPOLEUIPASTESPECIALW; - -struct OLEUIPASTESPECIALA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - LPDATAOBJECT lpSrcDataObj; - LPOLEUIPASTEENTRYA arrPasteEntries; - int cPasteEntries; - UINT* arrLinkTypes; - int cLinkTypes; - UINT cClsidExclude; - LPCLSID lpClsidExclude; - int nSelectedIndex; - BOOL fLink; - HGLOBAL hMetaPict; - SIZEL sizel; -} -alias OLEUIPASTESPECIALA* POLEUIPASTESPECIALA, LPOLEUIPASTESPECIALA; - -interface IOleUILinkContainerW : IUnknown -{ - HRESULT QueryInterface(REFIID, PVOID*); - ULONG AddRef(); - ULONG Release(); - DWORD GetNextLink(DWORD dwLink); - HRESULT SetLinkUpdateOptions(DWORD, DWORD); - HRESULT GetLinkUpdateOptions(DWORD, PDWORD); - HRESULT SetLinkSource(DWORD, LPWSTR, ULONG, PULONG, BOOL); - HRESULT GetLinkSource(DWORD, LPWSTR*, PULONG, LPWSTR*, LPWSTR*, BOOL*, BOOL*); - HRESULT OpenLinkSource(DWORD); - HRESULT UpdateLink(DWORD, BOOL, BOOL); - HRESULT CancelLink(DWORD); -} -alias IOleUILinkContainerW LPOLEUILINKCONTAINERW; - -interface IOleUILinkContainerA : IUnknown -{ - HRESULT QueryInterface(REFIID, PVOID*); - ULONG AddRef(); - ULONG Release(); - DWORD GetNextLink(DWORD); - HRESULT SetLinkUpdateOptions(DWORD, DWORD); - HRESULT GetLinkUpdateOptions(DWORD, PDWORD); - HRESULT SetLinkSource(DWORD, LPSTR, ULONG, PULONG, BOOL); - HRESULT GetLinkSource(DWORD, LPSTR*, PULONG, LPSTR*, LPSTR*, BOOL*, BOOL*); - HRESULT OpenLinkSource(DWORD); - HRESULT UpdateLink(DWORD, BOOL, BOOL); - HRESULT CancelLink(DWORD); -} -alias IOleUILinkContainerA LPOLEUILINKCONTAINERA; - -struct OLEUIEDITLINKSW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - LPOLEUILINKCONTAINERW lpOleUILinkContainer; -} -alias OLEUIEDITLINKSW* POLEUIEDITLINKSW, LPOLEUIEDITLINKSW; - -struct OLEUIEDITLINKSA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - LPOLEUILINKCONTAINERA lpOleUILinkContainer; -} -alias OLEUIEDITLINKSA* POLEUIEDITLINKSA, LPOLEUIEDITLINKSA; - -struct OLEUICHANGEICONW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - HGLOBAL hMetaPict; - CLSID clsid; - WCHAR[MAX_PATH] szIconExe; - int cchIconExe; -} -alias OLEUICHANGEICONW* POLEUICHANGEICONW, LPOLEUICHANGEICONW; - -struct OLEUICHANGEICONA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - HGLOBAL hMetaPict; - CLSID clsid; - CHAR[MAX_PATH] szIconExe; - int cchIconExe; -} -alias OLEUICHANGEICONA* POLEUICHANGEICONA, LPOLEUICHANGEICONA; - -struct OLEUICONVERTW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - CLSID clsid; - CLSID clsidConvertDefault; - CLSID clsidActivateDefault; - CLSID clsidNew; - DWORD dvAspect; - WORD wFormat; - BOOL fIsLinkedObject; - HGLOBAL hMetaPict; - LPWSTR lpszUserType; - BOOL fObjectsIconChanged; - LPWSTR lpszDefLabel; - UINT cClsidExclude; - LPCLSID lpClsidExclude; -} -alias OLEUICONVERTW* POLEUICONVERTW, LPOLEUICONVERTW; - -struct OLEUICONVERTA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - CLSID clsid; - CLSID clsidConvertDefault; - CLSID clsidActivateDefault; - CLSID clsidNew; - DWORD dvAspect; - WORD wFormat; - BOOL fIsLinkedObject; - HGLOBAL hMetaPict; - LPSTR lpszUserType; - BOOL fObjectsIconChanged; - LPSTR lpszDefLabel; - UINT cClsidExclude; - LPCLSID lpClsidExclude; -} -alias OLEUICONVERTA* POLEUICONVERTA, LPOLEUICONVERTA; - -struct OLEUIBUSYW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - HTASK hTask; - HWND *lphWndDialog; -} -alias OLEUIBUSYW* POLEUIBUSYW, LPOLEUIBUSYW; - -struct OLEUIBUSYA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - HTASK hTask; - HWND *lphWndDialog; -} -alias OLEUIBUSYA* POLEUIBUSYA, LPOLEUIBUSYA; - -struct OLEUICHANGESOURCEW { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCWSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCWSTR lpszTemplate; - HRSRC hResource; - OPENFILENAMEW* lpOFN; - DWORD[4] dwReserved1; - LPOLEUILINKCONTAINERW lpOleUILinkContainer; - DWORD dwLink; - LPWSTR lpszDisplayName; - ULONG nFileLength; - LPWSTR lpszFrom; - LPWSTR lpszTo; -} -alias OLEUICHANGESOURCEW* POLEUICHANGESOURCEW, LPOLEUICHANGESOURCEW; - -struct OLEUICHANGESOURCEA { - DWORD cbStruct; - DWORD dwFlags; - HWND hWndOwner; - LPCSTR lpszCaption; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - HINSTANCE hInstance; - LPCSTR lpszTemplate; - HRSRC hResource; - OPENFILENAMEA *lpOFN; - DWORD[4] dwReserved1; - LPOLEUILINKCONTAINERA lpOleUILinkContainer; - DWORD dwLink; - LPSTR lpszDisplayName; - ULONG nFileLength; - LPSTR lpszFrom; - LPSTR lpszTo; -} -alias OLEUICHANGESOURCEA* POLEUICHANGESOURCEA, LPOLEUICHANGESOURCEA; - -interface IOleUIObjInfoW : IUnknown -{ - HRESULT QueryInterface(REFIID, PVOID*); - ULONG AddRef(); - ULONG Release(); - HRESULT GetObjectInfo(DWORD, PDWORD, LPWSTR*, LPWSTR*, LPWSTR*, LPWSTR*); - HRESULT GetConvertInfo(DWORD, CLSID*, PWORD, CLSID*, LPCLSID*, UINT*); - HRESULT ConvertObject(DWORD, REFCLSID); - HRESULT GetViewInfo(DWORD, HGLOBAL*, PDWORD, int*); - HRESULT SetViewInfo(DWORD, HGLOBAL, DWORD, int, BOOL); -} -alias IOleUIObjInfoW LPOLEUIOBJINFOW; - -interface IOleUIObjInfoA : IUnknown -{ - HRESULT QueryInterface(REFIID, PVOID*); - ULONG AddRef(); - ULONG Release(); - HRESULT GetObjectInfo(DWORD, PDWORD, LPSTR*, LPSTR*, LPSTR*, LPSTR*); - HRESULT GetConvertInfo(DWORD, CLSID*, PWORD, CLSID*, LPCLSID*, UINT*); - HRESULT ConvertObject(DWORD, REFCLSID); - HRESULT GetViewInfo(DWORD, HGLOBAL*, PDWORD, int*); - HRESULT SetViewInfo(DWORD, HGLOBAL, DWORD, int, BOOL); -} -alias IOleUIObjInfoA LPOLEUIOBJINFOA; - -interface IOleUILinkInfoW : IOleUILinkContainerW -{ - HRESULT QueryInterface(REFIID, PVOID*); - ULONG AddRef(); - ULONG Release(); - DWORD GetNextLink(DWORD); - HRESULT SetLinkUpdateOptions(DWORD, DWORD); - HRESULT GetLinkUpdateOptions(DWORD, DWORD*); - HRESULT SetLinkSource(DWORD, LPWSTR, ULONG, PULONG, BOOL); - HRESULT GetLinkSource(DWORD, LPWSTR*, PULONG, LPWSTR*, LPWSTR*, BOOL*, BOOL*); - HRESULT OpenLinkSource(DWORD); - HRESULT UpdateLink(DWORD, BOOL, BOOL); - HRESULT CancelLink(DWORD); - HRESULT GetLastUpdate(DWORD, FILETIME*); -} -alias IOleUILinkInfoW LPOLEUILINKINFOW; - -interface IOleUILinkInfoA : IOleUILinkContainerA -{ - HRESULT QueryInterface(REFIID, PVOID*); - ULONG AddRef(); - ULONG Release(); - DWORD GetNextLink(DWORD); - HRESULT SetLinkUpdateOptions(DWORD, DWORD); - HRESULT GetLinkUpdateOptions(DWORD, DWORD*); - HRESULT SetLinkSource(DWORD, LPSTR, ULONG, PULONG, BOOL); - HRESULT GetLinkSource(DWORD, LPSTR*, PULONG, LPSTR*, LPSTR*, BOOL*, BOOL*); - HRESULT OpenLinkSource(DWORD); - HRESULT UpdateLink(DWORD, BOOL, BOOL); - HRESULT CancelLink(DWORD); - HRESULT GetLastUpdate(DWORD, FILETIME*); -} -alias IOleUILinkInfoA LPOLEUILINKINFOA; - -struct OLEUIGNRLPROPSW { - DWORD cbStruct; - DWORD dwFlags; - DWORD[2] dwReserved1; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - DWORD[3] dwReserved2; - OLEUIOBJECTPROPSW* lpOP; -} -alias OLEUIGNRLPROPSW* POLEUIGNRLPROPSW, LPOLEUIGNRLPROPSW; - -struct OLEUIGNRLPROPSA { - DWORD cbStruct; - DWORD dwFlags; - DWORD[2] dwReserved1; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - DWORD[3] dwReserved2; - OLEUIOBJECTPROPSA* lpOP; -} -alias OLEUIGNRLPROPSA* POLEUIGNRLPROPSA, LPOLEUIGNRLPROPSA; - -struct OLEUIVIEWPROPSW { - DWORD cbStruct; - DWORD dwFlags; - DWORD[2] dwReserved1; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - DWORD[3] dwReserved2; - OLEUIOBJECTPROPSW* lpOP; - int nScaleMin; - int nScaleMax; -} -alias OLEUIVIEWPROPSW* POLEUIVIEWPROPSW, LPOLEUIVIEWPROPSW; - -struct OLEUIVIEWPROPSA { - DWORD cbStruct; - DWORD dwFlags; - DWORD[2] dwReserved1; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - DWORD[3] dwReserved2; - OLEUIOBJECTPROPSA *lpOP; - int nScaleMin; - int nScaleMax; -} -alias OLEUIVIEWPROPSA* POLEUIVIEWPROPSA, LPOLEUIVIEWPROPSA; - -struct OLEUILINKPROPSW { - DWORD cbStruct; - DWORD dwFlags; - DWORD[2] dwReserved1; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - DWORD[3] dwReserved2; - OLEUIOBJECTPROPSW *lpOP; -} -alias OLEUILINKPROPSW* POLEUILINKPROPSW, LPOLEUILINKPROPSW; - -struct OLEUILINKPROPSA { - DWORD cbStruct; - DWORD dwFlags; - DWORD[2] dwReserved1; - LPFNOLEUIHOOK lpfnHook; - LPARAM lCustData; - DWORD[3] dwReserved2; - OLEUIOBJECTPROPSA* lpOP; -} -alias OLEUILINKPROPSA* POLEUILINKPROPSA, LPOLEUILINKPROPSA; - -struct OLEUIOBJECTPROPSW { - DWORD cbStruct; - DWORD dwFlags; - LPPROPSHEETHEADERW lpPS; - DWORD dwObject; - LPOLEUIOBJINFOW lpObjInfo; - DWORD dwLink; - LPOLEUILINKINFOW lpLinkInfo; - LPOLEUIGNRLPROPSW lpGP; - LPOLEUIVIEWPROPSW lpVP; - LPOLEUILINKPROPSW lpLP; -} -alias OLEUIOBJECTPROPSW* POLEUIOBJECTPROPSW, LPOLEUIOBJECTPROPSW; - -struct OLEUIOBJECTPROPSA { - DWORD cbStruct; - DWORD dwFlags; - LPPROPSHEETHEADERA lpPS; - DWORD dwObject; - LPOLEUIOBJINFOA lpObjInfo; - DWORD dwLink; - LPOLEUILINKINFOA lpLinkInfo; - LPOLEUIGNRLPROPSA lpGP; - LPOLEUIVIEWPROPSA lpVP; - LPOLEUILINKPROPSA lpLP; -} -alias OLEUIOBJECTPROPSA* POLEUIOBJECTPROPSA, LPOLEUIOBJECTPROPSA; - -extern (Windows) { - BOOL OleUIAddVerbMenuW(LPOLEOBJECT, LPCWSTR, HMENU, UINT, UINT, UINT, BOOL, UINT, HMENU*); - BOOL OleUIAddVerbMenuA(LPOLEOBJECT, LPCSTR, HMENU, UINT, UINT, UINT, BOOL, UINT, HMENU*); - UINT OleUIBusyW(LPOLEUIBUSYW); - UINT OleUIBusyA(LPOLEUIBUSYA); - BOOL OleUICanConvertOrActivateAs(REFCLSID, BOOL, WORD); - UINT OleUIChangeIconW(LPOLEUICHANGEICONW); - UINT OleUIChangeIconA(LPOLEUICHANGEICONA); - UINT OleUIChangeSourceW(LPOLEUICHANGESOURCEW); - UINT OleUIChangeSourceA(LPOLEUICHANGESOURCEA); - UINT OleUIConvertW(LPOLEUICONVERTW); - UINT OleUIConvertA(LPOLEUICONVERTA); - UINT OleUIEditLinksW(LPOLEUIEDITLINKSW); - UINT OleUIEditLinksA(LPOLEUIEDITLINKSA); - UINT OleUIObjectPropertiesW(LPOLEUIOBJECTPROPSW); - UINT OleUIObjectPropertiesA(LPOLEUIOBJECTPROPSA); - UINT OleUIPasteSpecialW(LPOLEUIPASTESPECIALW); - UINT OleUIPasteSpecialA(LPOLEUIPASTESPECIALA); - BOOL OleUIUpdateLinksW(LPOLEUILINKCONTAINERW, HWND, LPWSTR, int); - BOOL OleUIUpdateLinksA(LPOLEUILINKCONTAINERA, HWND, LPSTR, int); -} - -extern (C) { - int OleUIPromptUserW(int, HWND, ...); - int OleUIPromptUserA(int, HWND, ...); -} - -version(Unicode) { - alias IDD_SERVERNOTREGW IDD_SERVERNOTREG; - alias IDD_LINKTYPECHANGEDW IDD_LINKTYPECHANGED; - alias OleUIUpdateLinksW OleUIUpdateLinks; - alias OleUIAddVerbMenuW OleUIAddVerbMenu; - alias OLEUIOBJECTPROPSW OLEUIOBJECTPROPS; - alias POLEUIOBJECTPROPSW POLEUIOBJECTPROPS; - alias LPOLEUIOBJECTPROPSW LPOLEUIOBJECTPROPS; - alias OleUIObjectPropertiesW OleUIObjectProperties; - alias OLEUIINSERTOBJECTW OLEUIINSERTOBJECT; - alias POLEUIINSERTOBJECTW POLEUIINSERTOBJECT; - alias LPOLEUIINSERTOBJECTW LPOLEUIINSERTOBJECT; - alias OleUIInsertObjectW OleUIInsertObject; - alias OleUIPromptUserW OleUIPromptUser; - alias OLEUIPASTEENTRYW OLEUIPASTEENTRY; - alias POLEUIPASTEENTRYW POLEUIPASTEENTRY; - alias LPOLEUIPASTEENTRYW LPOLEUIPASTEENTRY; - alias OLEUIPASTESPECIALW OLEUIPASTESPECIAL; - alias POLEUIPASTESPECIALW POLEUIPASTESPECIAL; - alias LPOLEUIPASTESPECIALW LPOLEUIPASTESPECIAL; - alias OleUIPasteSpecialW OleUIPasteSpecial; - alias IOleUILinkContainerW IOleUILinkContainer; - alias LPOLEUILINKCONTAINERW LPOLEUILINKCONTAINER; - alias OLEUIEDITLINKSW OLEUIEDITLINKS; - alias POLEUIEDITLINKSW POLEUIEDITLINKS; - alias LPOLEUIEDITLINKSW LPOLEUIEDITLINKS; - alias OleUIEditLinksW OleUIEditLinks; - alias OLEUICHANGEICONW OLEUICHANGEICON; - alias POLEUICHANGEICONW POLEUICHANGEICON; - alias LPOLEUICHANGEICONW LPOLEUICHANGEICON; - alias OleUIChangeIconW OleUIChangeIcon; - alias OLEUICONVERTW OLEUICONVERT; - alias POLEUICONVERTW POLEUICONVERT; - alias LPOLEUICONVERTW LPOLEUICONVERT; - alias OleUIConvertW OleUIConvert; - alias OLEUIBUSYW OLEUIBUSY; - alias POLEUIBUSYW POLEUIBUSY; - alias LPOLEUIBUSYW LPOLEUIBUSY; - alias OleUIBusyW OleUIBusy; - alias OLEUICHANGESOURCEW OLEUICHANGESOURCE; - alias POLEUICHANGESOURCEW POLEUICHANGESOURCE; - alias LPOLEUICHANGESOURCEW LPOLEUICHANGESOURCE; - alias OleUIChangeSourceW OleUIChangeSource; - alias IOleUIObjInfoW IOleUIObjInfo; - alias LPOLEUIOBJINFOW LPOLEUIOBJINFO; - alias IOleUILinkInfoW IOleUILinkInfo; - //alias IOleUILinkInfoWVtbl IOleUILinkInfoVtbl; - alias LPOLEUILINKINFOW LPOLEUILINKINFO; - alias OLEUIGNRLPROPSW OLEUIGNRLPROPS; - alias POLEUIGNRLPROPSW POLEUIGNRLPROPS; - alias LPOLEUIGNRLPROPSW LPOLEUIGNRLPROPS; - alias OLEUIVIEWPROPSW OLEUIVIEWPROPS; - alias POLEUIVIEWPROPSW POLEUIVIEWPROPS; - alias LPOLEUIVIEWPROPSW LPOLEUIVIEWPROPS; - alias OLEUILINKPROPSW OLEUILINKPROPS; - alias POLEUILINKPROPSW POLEUILINKPROPS; - alias LPOLEUILINKPROPSW LPOLEUILINKPROPS; -} else { - alias IDD_SERVERNOTREGA IDD_SERVERNOTREG; - alias IDD_LINKTYPECHANGEDA IDD_LINKTYPECHANGED; - alias OleUIUpdateLinksA OleUIUpdateLinks; - alias OleUIAddVerbMenuA OleUIAddVerbMenu; - alias OLEUIOBJECTPROPSA OLEUIOBJECTPROPS; - alias POLEUIOBJECTPROPSA POLEUIOBJECTPROPS; - alias LPOLEUIOBJECTPROPSA LPOLEUIOBJECTPROPS; - alias OleUIObjectPropertiesA OleUIObjectProperties; - alias OLEUIINSERTOBJECTA OLEUIINSERTOBJECT; - alias POLEUIINSERTOBJECTA POLEUIINSERTOBJECT; - alias LPOLEUIINSERTOBJECTA LPOLEUIINSERTOBJECT; - alias OleUIInsertObjectA OleUIInsertObject; - alias OleUIPromptUserA OleUIPromptUser; - alias OLEUIPASTEENTRYA OLEUIPASTEENTRY; - alias POLEUIPASTEENTRYA POLEUIPASTEENTRY; - alias LPOLEUIPASTEENTRYA LPOLEUIPASTEENTRY; - alias OLEUIPASTESPECIALA OLEUIPASTESPECIAL; - alias POLEUIPASTESPECIALA POLEUIPASTESPECIAL; - alias LPOLEUIPASTESPECIALA LPOLEUIPASTESPECIAL; - alias OleUIPasteSpecialA OleUIPasteSpecial; - alias IOleUILinkContainerA IOleUILinkContainer; - alias LPOLEUILINKCONTAINERA LPOLEUILINKCONTAINER; - alias OLEUIEDITLINKSA OLEUIEDITLINKS; - alias POLEUIEDITLINKSA POLEUIEDITLINKS; - alias LPOLEUIEDITLINKSA LPOLEUIEDITLINKS; - alias OleUIEditLinksA OleUIEditLinks; - alias OLEUICHANGEICONA OLEUICHANGEICON; - alias POLEUICHANGEICONA POLEUICHANGEICON; - alias LPOLEUICHANGEICONA LPOLEUICHANGEICON; - alias OleUIChangeIconA OleUIChangeIcon; - alias OLEUICONVERTA OLEUICONVERT; - alias POLEUICONVERTA POLEUICONVERT; - alias LPOLEUICONVERTA LPOLEUICONVERT; - alias OleUIConvertA OleUIConvert; - alias OLEUIBUSYA OLEUIBUSY; - alias POLEUIBUSYA POLEUIBUSY; - alias LPOLEUIBUSYA LPOLEUIBUSY; - alias OleUIBusyA OleUIBusy; - alias OLEUICHANGESOURCEA OLEUICHANGESOURCE; - alias POLEUICHANGESOURCEA POLEUICHANGESOURCE; - alias LPOLEUICHANGESOURCEA LPOLEUICHANGESOURCE; - alias OleUIChangeSourceA OleUIChangeSource; - alias IOleUIObjInfoA IOleUIObjInfo; - alias LPOLEUIOBJINFOA LPOLEUIOBJINFO; - alias IOleUILinkInfoA IOleUILinkInfo; - //alias IOleUILinkInfoAVtbl IOleUILinkInfoVtbl; - alias LPOLEUILINKINFOA LPOLEUILINKINFO; - alias OLEUIGNRLPROPSA OLEUIGNRLPROPS; - alias POLEUIGNRLPROPSA POLEUIGNRLPROPS; - alias LPOLEUIGNRLPROPSA LPOLEUIGNRLPROPS; - alias OLEUIVIEWPROPSA OLEUIVIEWPROPS; - alias POLEUIVIEWPROPSA POLEUIVIEWPROPS; - alias LPOLEUIVIEWPROPSA LPOLEUIVIEWPROPS; - alias OLEUILINKPROPSA OLEUILINKPROPS; - alias POLEUILINKPROPSA POLEUILINKPROPS; - alias LPOLEUILINKPROPSA LPOLEUILINKPROPS; -} diff --git a/3rdparty-extra/win32/pbt.d b/3rdparty-extra/win32/pbt.d deleted file mode 100644 index 147ef0989..000000000 --- a/3rdparty-extra/win32/pbt.d +++ /dev/null @@ -1,31 +0,0 @@ -/***********************************************************************\ -* pbt.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.pbt; -version(Windows): - -private import win32.windef; - -enum : WPARAM { - PBT_APMQUERYSUSPEND, - PBT_APMQUERYSTANDBY, - PBT_APMQUERYSUSPENDFAILED, - PBT_APMQUERYSTANDBYFAILED, - PBT_APMSUSPEND, - PBT_APMSTANDBY, - PBT_APMRESUMECRITICAL, - PBT_APMRESUMESUSPEND, - PBT_APMRESUMESTANDBY, - PBT_APMBATTERYLOW, - PBT_APMPOWERSTATUSCHANGE, - PBT_APMOEMEVENT // = 11 -} - -const LPARAM PBTF_APMRESUMEFROMFAILURE = 1; diff --git a/3rdparty-extra/win32/powrprof.d b/3rdparty-extra/win32/powrprof.d deleted file mode 100644 index 81ef92828..000000000 --- a/3rdparty-extra/win32/powrprof.d +++ /dev/null @@ -1,141 +0,0 @@ -/***********************************************************************\ -* powrprof.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.powrprof; -version(Windows): -pragma(lib, "powrprof"); - -private import win32.windef; -private import win32.ntdef; - -// FIXME: look up Windows version support - -const ULONG - EnableSysTrayBatteryMeter = 1, - EnableMultiBatteryDisplay = 2, - EnablePasswordLogon = 4, - EnableWakeOnRing = 8, - EnableVideoDimDisplay = 16; - -const UINT NEWSCHEME = -1; - -struct GLOBAL_MACHINE_POWER_POLICY { - ULONG Revision; - SYSTEM_POWER_STATE LidOpenWakeAc; - SYSTEM_POWER_STATE LidOpenWakeDc; - ULONG BroadcastCapacityResolution; -} -alias GLOBAL_MACHINE_POWER_POLICY* PGLOBAL_MACHINE_POWER_POLICY; - -struct GLOBAL_USER_POWER_POLICY { - ULONG Revision; - POWER_ACTION_POLICY PowerButtonAc; - POWER_ACTION_POLICY PowerButtonDc; - POWER_ACTION_POLICY SleepButtonAc; - POWER_ACTION_POLICY SleepButtonDc; - POWER_ACTION_POLICY LidCloseAc; - POWER_ACTION_POLICY LidCloseDc; - SYSTEM_POWER_LEVEL[NUM_DISCHARGE_POLICIES] DischargePolicy; - ULONG GlobalFlags; -} -alias GLOBAL_USER_POWER_POLICY* PGLOBAL_USER_POWER_POLICY; - -struct GLOBAL_POWER_POLICY { - GLOBAL_USER_POWER_POLICY user; - GLOBAL_MACHINE_POWER_POLICY mach; -} -alias GLOBAL_POWER_POLICY* PGLOBAL_POWER_POLICY; - -struct MACHINE_POWER_POLICY { - ULONG Revision; - SYSTEM_POWER_STATE MinSleepAc; - SYSTEM_POWER_STATE MinSleepDc; - SYSTEM_POWER_STATE ReducedLatencySleepAc; - SYSTEM_POWER_STATE ReducedLatencySleepDc; - ULONG DozeTimeoutAc; - ULONG DozeTimeoutDc; - ULONG DozeS4TimeoutAc; - ULONG DozeS4TimeoutDc; - UCHAR MinThrottleAc; - UCHAR MinThrottleDc; - UCHAR[2] pad1; - POWER_ACTION_POLICY OverThrottledAc; - POWER_ACTION_POLICY OverThrottledDc; -} -alias MACHINE_POWER_POLICY* PMACHINE_POWER_POLICY; - -struct MACHINE_PROCESSOR_POWER_POLICY { - ULONG Revision; - PROCESSOR_POWER_POLICY ProcessorPolicyAc; - PROCESSOR_POWER_POLICY ProcessorPolicyDc; -} -alias MACHINE_PROCESSOR_POWER_POLICY* PMACHINE_PROCESSOR_POWER_POLICY; - -struct USER_POWER_POLICY { - ULONG Revision; - POWER_ACTION_POLICY IdleAc; - POWER_ACTION_POLICY IdleDc; - ULONG IdleTimeoutAc; - ULONG IdleTimeoutDc; - UCHAR IdleSensitivityAc; - UCHAR IdleSensitivityDc; - UCHAR ThrottlePolicyAc; - UCHAR ThrottlePolicyDc; - SYSTEM_POWER_STATE MaxSleepAc; - SYSTEM_POWER_STATE MaxSleepDc; - ULONG[2] Reserved; - ULONG VideoTimeoutAc; - ULONG VideoTimeoutDc; - ULONG SpindownTimeoutAc; - ULONG SpindownTimeoutDc; - BOOLEAN OptimizeForPowerAc; - BOOLEAN OptimizeForPowerDc; - UCHAR FanThrottleToleranceAc; - UCHAR FanThrottleToleranceDc; - UCHAR ForcedThrottleAc; - UCHAR ForcedThrottleDc; -} -alias USER_POWER_POLICY* PUSER_POWER_POLICY; - -struct POWER_POLICY { - USER_POWER_POLICY user; - MACHINE_POWER_POLICY mach; -} -alias POWER_POLICY* PPOWER_POLICY; - -extern (Windows) { - alias BOOLEAN function(UINT, DWORD, LPTSTR, DWORD, LPTSTR, PPOWER_POLICY, - LPARAM) PWRSCHEMESENUMPROC; - alias BOOLEAN function(POWER_ACTION, SYSTEM_POWER_STATE, ULONG, BOOLEAN) - PFNNTINITIATEPWRACTION; - - NTSTATUS CallNtPowerInformation(POWER_INFORMATION_LEVEL, PVOID, ULONG, - PVOID, ULONG); - BOOLEAN CanUserWritePwrScheme(); - BOOLEAN DeletePwrScheme(UINT); - BOOLEAN EnumPwrSchemes(PWRSCHEMESENUMPROC, LPARAM); - BOOLEAN GetActivePwrScheme(PUINT); - BOOLEAN GetCurrentPowerPolicies(PGLOBAL_POWER_POLICY, PPOWER_POLICY); - BOOLEAN GetPwrCapabilities(PSYSTEM_POWER_CAPABILITIES); - BOOLEAN GetPwrDiskSpindownRange(PUINT, PUINT); - BOOLEAN IsAdminOverrideActive(PADMINISTRATOR_POWER_POLICY); - BOOLEAN IsPwrHibernateAllowed(); - BOOLEAN IsPwrShutdownAllowed(); - BOOLEAN IsPwrSuspendAllowed(); - BOOLEAN ReadGlobalPwrPolicy(PGLOBAL_POWER_POLICY); - BOOLEAN ReadProcessorPwrScheme(UINT, PMACHINE_PROCESSOR_POWER_POLICY); - BOOLEAN ReadPwrScheme(UINT, PPOWER_POLICY); - BOOLEAN SetActivePwrScheme(UINT, PGLOBAL_POWER_POLICY, PPOWER_POLICY); - BOOLEAN SetSuspendState(BOOLEAN, BOOLEAN, BOOLEAN); - BOOLEAN WriteGlobalPwrPolicy(PGLOBAL_POWER_POLICY); - BOOLEAN WriteProcessorPwrScheme(UINT, PMACHINE_PROCESSOR_POWER_POLICY); - BOOLEAN ValidatePowerPolicies(PGLOBAL_POWER_POLICY, PPOWER_POLICY); - BOOLEAN WritePwrScheme(PUINT, LPTSTR, LPTSTR, PPOWER_POLICY); -} diff --git a/3rdparty-extra/win32/psapi.d b/3rdparty-extra/win32/psapi.d deleted file mode 100644 index f84175a00..000000000 --- a/3rdparty-extra/win32/psapi.d +++ /dev/null @@ -1,159 +0,0 @@ -/***********************************************************************\ -* psapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -/* Comment from MinGW - * Process status API (PSAPI) - * http://windowssdk.msdn.microsoft.com/library/ms684884.aspx - */ - -module win32.psapi; -version(Windows): - -private import win32.w32api; -private import win32.winbase; -private import win32.windef; - -struct MODULEINFO { - LPVOID lpBaseOfDll; - DWORD SizeOfImage; - LPVOID EntryPoint; -} -alias MODULEINFO* LPMODULEINFO; - -struct PSAPI_WS_WATCH_INFORMATION { - LPVOID FaultingPc; - LPVOID FaultingVa; -} -alias PSAPI_WS_WATCH_INFORMATION* PPSAPI_WS_WATCH_INFORMATION; - -struct PSAPI_WS_WATCH_INFORMATION_EX { - PSAPI_WS_WATCH_INFORMATION BasicInfo; - ULONG_PTR FaultingThreadId; - ULONG_PTR Flags; -} -alias PSAPI_WS_WATCH_INFORMATION_EX* PPSAPI_WS_WATCH_INFORMATION_EX; - -struct PROCESS_MEMORY_COUNTERS { - DWORD cb; - DWORD PageFaultCount; - DWORD PeakWorkingSetSize; - DWORD WorkingSetSize; - DWORD QuotaPeakPagedPoolUsage; - DWORD QuotaPagedPoolUsage; - DWORD QuotaPeakNonPagedPoolUsage; - DWORD QuotaNonPagedPoolUsage; - DWORD PagefileUsage; - DWORD PeakPagefileUsage; -} -alias PROCESS_MEMORY_COUNTERS* PPROCESS_MEMORY_COUNTERS; - -struct PERFORMANCE_INFORMATION { - DWORD cb; - SIZE_T CommitTotal; - SIZE_T CommitLimit; - SIZE_T CommitPeak; - SIZE_T PhysicalTotal; - SIZE_T PhysicalAvailable; - SIZE_T SystemCache; - SIZE_T KernelTotal; - SIZE_T KernelPaged; - SIZE_T KernelNonpaged; - SIZE_T PageSize; - DWORD HandleCount; - DWORD ProcessCount; - DWORD ThreadCount; -} -alias PERFORMANCE_INFORMATION* PPERFORMANCE_INFORMATION; - -struct ENUM_PAGE_FILE_INFORMATION { - DWORD cb; - DWORD Reserved; - SIZE_T TotalSize; - SIZE_T TotalInUse; - SIZE_T PeakUsage; -} -alias ENUM_PAGE_FILE_INFORMATION* PENUM_PAGE_FILE_INFORMATION; - -/* application-defined callback function used with the EnumPageFiles() - * http://windowssdk.msdn.microsoft.com/library/ms682627.aspx */ -version (Unicode) { - alias BOOL function(LPVOID, PENUM_PAGE_FILE_INFORMATION, LPCWSTR) - PENUM_PAGE_FILE_CALLBACK; -} else { - alias BOOL function(LPVOID, PENUM_PAGE_FILE_INFORMATION, LPCSTR) - PENUM_PAGE_FILE_CALLBACK; -} - -// Grouped by application, not in alphabetical order. -extern (Windows) { - /* Process Information - * http://windowssdk.msdn.microsoft.com/library/ms684870.aspx */ - BOOL EnumProcesses(DWORD*, DWORD, DWORD*); /* NT/2000/XP/Server2003/Vista/Longhorn */ - DWORD GetProcessImageFileNameA(HANDLE, LPSTR, DWORD); /* XP/Server2003/Vista/Longhorn */ - DWORD GetProcessImageFileNameW(HANDLE, LPWSTR, DWORD); /* XP/Server2003/Vista/Longhorn */ - - /* Module Information - * http://windowssdk.msdn.microsoft.com/library/ms684232.aspx */ - BOOL EnumProcessModules(HANDLE, HMODULE*, DWORD, LPDWORD); - BOOL EnumProcessModulesEx(HANDLE, HMODULE*, DWORD, LPDWORD, DWORD); /* Vista/Longhorn */ - DWORD GetModuleBaseNameA(HANDLE, HMODULE, LPSTR, DWORD); - DWORD GetModuleBaseNameW(HANDLE, HMODULE, LPWSTR, DWORD); - DWORD GetModuleFileNameExA(HANDLE, HMODULE, LPSTR, DWORD); - DWORD GetModuleFileNameExW(HANDLE, HMODULE, LPWSTR, DWORD); - BOOL GetModuleInformation(HANDLE, HMODULE, LPMODULEINFO, DWORD); - - /* Device Driver Information - * http://windowssdk.msdn.microsoft.com/library/ms682578.aspx */ - BOOL EnumDeviceDrivers(LPVOID*, DWORD, LPDWORD); - DWORD GetDeviceDriverBaseNameA(LPVOID, LPSTR, DWORD); - DWORD GetDeviceDriverBaseNameW(LPVOID, LPWSTR, DWORD); - DWORD GetDeviceDriverFileNameA(LPVOID, LPSTR, DWORD); - DWORD GetDeviceDriverFileNameW(LPVOID, LPWSTR, DWORD); - - /* Process Memory Usage Information - * http://windowssdk.msdn.microsoft.com/library/ms684879.aspx */ - BOOL GetProcessMemoryInfo(HANDLE, PPROCESS_MEMORY_COUNTERS, DWORD); - - /* Working Set Information - * http://windowssdk.msdn.microsoft.com/library/ms687398.aspx */ - BOOL EmptyWorkingSet(HANDLE); - BOOL GetWsChanges(HANDLE, PPSAPI_WS_WATCH_INFORMATION, DWORD); - BOOL GetWsChangesEx(HANDLE, PPSAPI_WS_WATCH_INFORMATION_EX, DWORD); /* Vista/Longhorn */ - BOOL InitializeProcessForWsWatch(HANDLE); - BOOL QueryWorkingSet(HANDLE, PVOID, DWORD); - BOOL QueryWorkingSetEx(HANDLE, PVOID, DWORD); - - /* Memory-Mapped File Information - * http://windowssdk.msdn.microsoft.com/library/ms684212.aspx */ - DWORD GetMappedFileNameW(HANDLE, LPVOID, LPWSTR, DWORD); - DWORD GetMappedFileNameA(HANDLE, LPVOID, LPSTR, DWORD); - - /* Resources Information */ - BOOL GetPerformanceInfo(PPERFORMANCE_INFORMATION, DWORD); /* XP/Server2003/Vista/Longhorn */ - BOOL EnumPageFilesW(PENUM_PAGE_FILE_CALLBACK, LPVOID); /* 2000/XP/Server2003/Vista/Longhorn */ - BOOL EnumPageFilesA(PENUM_PAGE_FILE_CALLBACK, LPVOID); /* 2000/XP/Server2003/Vista/Longhorn */ -} - -version (Unicode) { - alias GetModuleBaseNameW GetModuleBaseName; - alias GetModuleFileNameExW GetModuleFileNameEx; - alias GetMappedFileNameW GetMappedFileName; - alias GetDeviceDriverBaseNameW GetDeviceDriverBaseName; - alias GetDeviceDriverFileNameW GetDeviceDriverFileName; - alias EnumPageFilesW EnumPageFiles; - alias GetProcessImageFileNameW GetProcessImageFileName; -} else { - alias GetModuleBaseNameA GetModuleBaseName; - alias GetModuleFileNameExA GetModuleFileNameEx; - alias GetMappedFileNameA GetMappedFileName; - alias GetDeviceDriverBaseNameA GetDeviceDriverBaseName; - alias GetDeviceDriverFileNameA GetDeviceDriverFileName; - alias EnumPageFilesA EnumPageFiles; - alias GetProcessImageFileNameA GetProcessImageFileName; -} diff --git a/3rdparty-extra/win32/rapi.d b/3rdparty-extra/win32/rapi.d deleted file mode 100644 index ec0aadde1..000000000 --- a/3rdparty-extra/win32/rapi.d +++ /dev/null @@ -1,55 +0,0 @@ -/***********************************************************************\ -* rapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.rapi; -version(Windows): - -/* Comment from MinGW - NOTE: This strictly does not belong in the Win32 API since it's - really part of Platform SDK. - */ - -private import win32.winbase, win32.windef; - -extern (Windows): - -enum RAPISTREAMFLAG -{ - STREAM_TIMEOUT_READ -} - -interface IRAPIStream -{ - HRESULT SetRapiStat(RAPISTREAMFLAG, DWORD); - HRESULT GetRapiStat(RAPISTREAMFLAG, DWORD*); -} - -alias HRESULT function(DWORD, BYTE, DWORD, BYTE, IRAPIStream) RAPIEXT; - -struct RAPIINIT -{ - DWORD cbSize = this.sizeof; - HANDLE heRapiInit; - HRESULT hrRapiInit; -} - -HRESULT CeRapiInit(); -HRESULT CeRapiInitEx(RAPIINIT*); -BOOL CeCreateProcess(LPCWSTR, LPCWSTR, LPSECURITY_ATTRIBUTES, - LPSECURITY_ATTRIBUTES, BOOL, DWORD, LPVOID, LPWSTR, LPSTARTUPINFO, - LPPROCESS_INFORMATION); -HRESULT CeRapiUninit(); -BOOL CeWriteFile(HANDLE, LPCVOID, DWORD, LPDWORD, LPOVERLAPPED); -HANDLE CeCreateFile(LPCWSTR, DWORD, DWORD, LPSECURITY_ATTRIBUTES, DWORD, - DWORD, HANDLE); -BOOL CeCreateDirectory(LPCWSTR, LPSECURITY_ATTRIBUTES); -DWORD CeGetLastError(); -BOOL CeGetFileTime(HANDLE, LPFILETIME, LPFILETIME, LPFILETIME); -BOOL CeCloseHandle(HANDLE); diff --git a/3rdparty-extra/win32/ras.d b/3rdparty-extra/win32/ras.d deleted file mode 100644 index c08d9e3b2..000000000 --- a/3rdparty-extra/win32/ras.d +++ /dev/null @@ -1,1027 +0,0 @@ -/***********************************************************************\ -* ras.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.ras; -version(Windows): - -pragma(lib, "rasapi32"); - -private import win32.basetyps, win32.lmcons, win32.w32api, win32.windef; - -align(4): - -const RAS_MaxDeviceType = 16; -const RAS_MaxPhoneNumber = 128; -const RAS_MaxIpAddress = 15; -const RAS_MaxIpxAddress = 21; -const RAS_MaxEntryName = 256; -const RAS_MaxDeviceName = 128; -const RAS_MaxCallbackNumber = RAS_MaxPhoneNumber; -const RAS_MaxAreaCode = 10; -const RAS_MaxPadType = 32; -const RAS_MaxX25Address = 200; -const RAS_MaxFacilities = 200; -const RAS_MaxUserData = 200; -const RAS_MaxReplyMessage = 1024; - -const RDEOPT_UsePrefixSuffix = 0x00000001; -const RDEOPT_PausedStates = 0x00000002; -const RDEOPT_IgnoreModemSpeaker = 0x00000004; -const RDEOPT_SetModemSpeaker = 0x00000008; -const RDEOPT_IgnoreSoftwareCompression = 0x00000010; -const RDEOPT_SetSoftwareCompression = 0x00000020; -const RDEOPT_DisableConnectedUI = 0x00000040; -const RDEOPT_DisableReconnectUI = 0x00000080; -const RDEOPT_DisableReconnect = 0x00000100; -const RDEOPT_NoUser = 0x00000200; -const RDEOPT_PauseOnScript = 0x00000400; -const RDEOPT_Router = 0x00000800; - -const REN_User = 0x00000000; -const REN_AllUsers = 0x00000001; -const VS_Default = 0; -const VS_PptpOnly = 1; -const VS_PptpFirst = 2; -const VS_L2tpOnly = 3; -const VS_L2tpFirst = 4; - -const RASDIALEVENT = "RasDialEvent"; -const WM_RASDIALEVENT = 0xCCCD; - -const RASEO_UseCountryAndAreaCodes = 0x00000001; -const RASEO_SpecificIpAddr = 0x00000002; -const RASEO_SpecificNameServers = 0x00000004; -const RASEO_IpHeaderCompression = 0x00000008; -const RASEO_RemoteDefaultGateway = 0x00000010; -const RASEO_DisableLcpExtensions = 0x00000020; -const RASEO_TerminalBeforeDial = 0x00000040; -const RASEO_TerminalAfterDial = 0x00000080; -const RASEO_ModemLights = 0x00000100; -const RASEO_SwCompression = 0x00000200; -const RASEO_RequireEncryptedPw = 0x00000400; -const RASEO_RequireMsEncryptedPw = 0x00000800; -const RASEO_RequireDataEncryption = 0x00001000; -const RASEO_NetworkLogon = 0x00002000; -const RASEO_UseLogonCredentials = 0x00004000; -const RASEO_PromoteAlternates = 0x00008000; -const RASNP_NetBEUI = 0x00000001; -const RASNP_Ipx = 0x00000002; -const RASNP_Ip = 0x00000004; -const RASFP_Ppp = 0x00000001; -const RASFP_Slip = 0x00000002; -const RASFP_Ras = 0x00000004; - -const TCHAR[] - RASDT_Modem = "modem", - RASDT_Isdn = "isdn", - RASDT_X25 = "x25", - RASDT_Vpn = "vpn", - RASDT_Pad = "pad", - RASDT_Generic = "GENERIC", - RASDT_Serial = "SERIAL", - RASDT_FrameRelay = "FRAMERELAY", - RASDT_Atm = "ATM", - RASDT_Sonet = "SONET", - RASDT_SW56 = "SW56", - RASDT_Irda = "IRDA", - RASDT_Parallel = "PARALLEL"; - -const RASET_Phone = 1; -const RASET_Vpn = 2; -const RASET_Direct = 3; -const RASET_Internet = 4; - -static if (_WIN32_WINNT >= 0x401) { - const RASEO_SecureLocalFiles = 0x00010000; - const RASCN_Connection = 0x00000001; - const RASCN_Disconnection = 0x00000002; - const RASCN_BandwidthAdded = 0x00000004; - const RASCN_BandwidthRemoved = 0x00000008; - const RASEDM_DialAll = 1; - const RASEDM_DialAsNeeded = 2; - const RASIDS_Disabled = 0xffffffff; - const RASIDS_UseGlobalValue = 0; - const RASADFLG_PositionDlg = 0x00000001; - const RASCM_UserName = 0x00000001; - const RASCM_Password = 0x00000002; - const RASCM_Domain = 0x00000004; - const RASADP_DisableConnectionQuery = 0; - const RASADP_LoginSessionDisable = 1; - const RASADP_SavedAddressesLimit = 2; - const RASADP_FailedConnectionTimeout = 3; - const RASADP_ConnectionQueryTimeout = 4; -} -static if (_WIN32_WINNT >= 0x500) { - const RDEOPT_CustomDial = 0x00001000; - const RASLCPAP_PAP = 0xC023; - const RASLCPAP_SPAP = 0xC027; - const RASLCPAP_CHAP = 0xC223; - const RASLCPAP_EAP = 0xC227; - const RASLCPAD_CHAP_MD5 = 0x05; - const RASLCPAD_CHAP_MS = 0x80; - const RASLCPAD_CHAP_MSV2 = 0x81; - const RASLCPO_PFC = 0x00000001; - const RASLCPO_ACFC = 0x00000002; - const RASLCPO_SSHF = 0x00000004; - const RASLCPO_DES_56 = 0x00000008; - const RASLCPO_3_DES = 0x00000010; - - const RASCCPCA_MPPC = 0x00000006; - const RASCCPCA_STAC = 0x00000005; - - const RASCCPO_Compression = 0x00000001; - const RASCCPO_HistoryLess = 0x00000002; - const RASCCPO_Encryption56bit = 0x00000010; - const RASCCPO_Encryption40bit = 0x00000020; - const RASCCPO_Encryption128bit = 0x00000040; - - const RASEO_RequireEAP = 0x00020000; - const RASEO_RequirePAP = 0x00040000; - const RASEO_RequireSPAP = 0x00080000; - const RASEO_Custom = 0x00100000; - const RASEO_PreviewPhoneNumber = 0x00200000; - const RASEO_SharedPhoneNumbers = 0x00800000; - const RASEO_PreviewUserPw = 0x01000000; - const RASEO_PreviewDomain = 0x02000000; - const RASEO_ShowDialingProgress = 0x04000000; - const RASEO_RequireCHAP = 0x08000000; - const RASEO_RequireMsCHAP = 0x10000000; - const RASEO_RequireMsCHAP2 = 0x20000000; - const RASEO_RequireW95MSCHAP = 0x40000000; - const RASEO_CustomScript = 0x80000000; - - const RASIPO_VJ = 0x00000001; - const RCD_SingleUser = 0; - const RCD_AllUsers = 0x00000001; - const RCD_Eap = 0x00000002; - const RASEAPF_NonInteractive = 0x00000002; - const RASEAPF_Logon = 0x00000004; - const RASEAPF_Preview = 0x00000008; - const ET_40Bit = 1; - const ET_128Bit = 2; - const ET_None = 0; - const ET_Require = 1; - const ET_RequireMax = 2; - const ET_Optional = 3; -} - -const RASCS_PAUSED = 0x1000; -const RASCS_DONE = 0x2000; -enum RASCONNSTATE { - RASCS_OpenPort = 0, - RASCS_PortOpened, - RASCS_ConnectDevice, - RASCS_DeviceConnected, - RASCS_AllDevicesConnected, - RASCS_Authenticate, - RASCS_AuthNotify, - RASCS_AuthRetry, - RASCS_AuthCallback, - RASCS_AuthChangePassword, - RASCS_AuthProject, - RASCS_AuthLinkSpeed, - RASCS_AuthAck, - RASCS_ReAuthenticate, - RASCS_Authenticated, - RASCS_PrepareForCallback, - RASCS_WaitForModemReset, - RASCS_WaitForCallback, - RASCS_Projected, - RASCS_StartAuthentication, - RASCS_CallbackComplete, - RASCS_LogonNetwork, - RASCS_SubEntryConnected, - RASCS_SubEntryDisconnected, - RASCS_Interactive = RASCS_PAUSED, - RASCS_RetryAuthentication, - RASCS_CallbackSetByCaller, - RASCS_PasswordExpired, -// static if (_WIN32_WINNT >= 0x500) { - RASCS_InvokeEapUI, -// } - RASCS_Connected = RASCS_DONE, - RASCS_Disconnected -} -alias RASCONNSTATE* LPRASCONNSTATE; - -enum RASPROJECTION { - RASP_Amb = 0x10000, - RASP_PppNbf = 0x803F, - RASP_PppIpx = 0x802B, - RASP_PppIp = 0x8021, -// static if (_WIN32_WINNT >= 0x500) { - RASP_PppCcp = 0x80FD, -// } - RASP_PppLcp = 0xC021, - RASP_Slip = 0x20000 -} -alias RASPROJECTION* LPRASPROJECTION; - -alias TypeDef!(HANDLE) HRASCONN; -alias HRASCONN* LPHRASCONN; - -struct RASCONNW { - DWORD dwSize; - HRASCONN hrasconn; - WCHAR szEntryName[RAS_MaxEntryName + 1]; - WCHAR szDeviceType[RAS_MaxDeviceType + 1]; - WCHAR szDeviceName[RAS_MaxDeviceName + 1]; - static if (_WIN32_WINNT >= 0x401) { - WCHAR[MAX_PATH] szPhonebook; - DWORD dwSubEntry; - } - static if (_WIN32_WINNT >= 0x500) { - GUID guidEntry; - } - static if (_WIN32_WINNT >= 0x501) { - DWORD dwFlags; - LUID luid; - } -} -alias RASCONNW* LPRASCONNW; - -struct RASCONNA { - DWORD dwSize; - HRASCONN hrasconn; - CHAR szEntryName[RAS_MaxEntryName + 1]; - CHAR szDeviceType[RAS_MaxDeviceType + 1]; - CHAR szDeviceName[RAS_MaxDeviceName + 1]; - static if (_WIN32_WINNT >= 0x401) { - CHAR[MAX_PATH] szPhonebook; - DWORD dwSubEntry; - } - static if (_WIN32_WINNT >= 0x500) { - GUID guidEntry; - } - static if (_WIN32_WINNT >= 0x501) { - DWORD dwFlags; - LUID luid; - } -} -alias RASCONNA* LPRASCONNA; - -struct RASCONNSTATUSW { - DWORD dwSize; - RASCONNSTATE rasconnstate; - DWORD dwError; - WCHAR szDeviceType[RAS_MaxDeviceType + 1]; - WCHAR szDeviceName[RAS_MaxDeviceName + 1]; - static if (_WIN32_WINNT >= 0x401) { - WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; - } -} -alias RASCONNSTATUSW* LPRASCONNSTATUSW; - -struct RASCONNSTATUSA { - DWORD dwSize; - RASCONNSTATE rasconnstate; - DWORD dwError; - CHAR szDeviceType[RAS_MaxDeviceType + 1]; - CHAR szDeviceName[RAS_MaxDeviceName + 1]; - static if (_WIN32_WINNT >= 0x401) { - CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; - } -} -alias RASCONNSTATUSA* LPRASCONNSTATUSA; - -struct RASDIALPARAMSW { - DWORD dwSize; - WCHAR szEntryName[RAS_MaxEntryName + 1]; - WCHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; - WCHAR szCallbackNumber[RAS_MaxCallbackNumber + 1]; - WCHAR szUserName[UNLEN + 1]; - WCHAR szPassword[PWLEN + 1]; - WCHAR szDomain[DNLEN + 1]; - static if (_WIN32_WINNT >= 0x401) { - DWORD dwSubEntry; - ULONG_PTR dwCallbackId; - } -} -alias RASDIALPARAMSW* LPRASDIALPARAMSW; - -struct RASDIALPARAMSA{ - DWORD dwSize; - CHAR szEntryName[RAS_MaxEntryName + 1]; - CHAR szPhoneNumber[RAS_MaxPhoneNumber + 1]; - CHAR szCallbackNumber[RAS_MaxCallbackNumber + 1]; - CHAR szUserName[UNLEN + 1]; - CHAR szPassword[PWLEN + 1]; - CHAR szDomain[DNLEN + 1]; - static if (_WIN32_WINNT >= 0x401) { - DWORD dwSubEntry; - ULONG_PTR dwCallbackId; - } -} -alias RASDIALPARAMSA* LPRASDIALPARAMSA; - -static if (_WIN32_WINNT >= 0x500) { - struct RASEAPINFO { - DWORD dwSizeofEapInfo; - BYTE *pbEapInfo; - } -} - -struct RASDIALEXTENSIONS { - DWORD dwSize; - DWORD dwfOptions; - HWND hwndParent; - ULONG_PTR reserved; - static if (_WIN32_WINNT >= 0x500) { - ULONG_PTR reserved1; - RASEAPINFO RasEapInfo; - } -} -alias RASDIALEXTENSIONS* LPRASDIALEXTENSIONS; - -struct RASENTRYNAMEW { - DWORD dwSize; - WCHAR szEntryName[RAS_MaxEntryName + 1]; - static if (_WIN32_WINNT >= 0x500) { - DWORD dwFlags; - WCHAR szPhonebookPath[MAX_PATH + 1]; - } -} -alias RASENTRYNAMEW* LPRASENTRYNAMEW; - -struct RASENTRYNAMEA{ - DWORD dwSize; - CHAR szEntryName[RAS_MaxEntryName + 1]; - static if (_WIN32_WINNT >= 0x500) { - DWORD dwFlags; - CHAR szPhonebookPath[MAX_PATH + 1]; - } -} -alias RASENTRYNAMEA* LPRASENTRYNAMEA; - -struct RASAMBW{ - DWORD dwSize; - DWORD dwError; - WCHAR szNetBiosError[NETBIOS_NAME_LEN + 1]; - BYTE bLana; -} -alias RASAMBW* LPRASAMBW; - -struct RASAMBA{ - DWORD dwSize; - DWORD dwError; - CHAR szNetBiosError[NETBIOS_NAME_LEN + 1]; - BYTE bLana; -} -alias RASAMBA* LPRASAMBA; - -struct RASPPPNBFW{ - DWORD dwSize; - DWORD dwError; - DWORD dwNetBiosError; - WCHAR szNetBiosError[NETBIOS_NAME_LEN + 1]; - WCHAR szWorkstationName[NETBIOS_NAME_LEN + 1]; - BYTE bLana; -} -alias RASPPPNBFW* LPRASPPPNBFW; - -struct RASPPPNBFA{ - DWORD dwSize; - DWORD dwError; - DWORD dwNetBiosError; - CHAR szNetBiosError[NETBIOS_NAME_LEN + 1]; - CHAR szWorkstationName[NETBIOS_NAME_LEN + 1]; - BYTE bLana; -} -alias RASPPPNBFA* LPRASPPPNBFA; - -struct RASPPPIPXW { - DWORD dwSize; - DWORD dwError; - WCHAR szIpxAddress[RAS_MaxIpxAddress + 1]; -} -alias RASPPPIPXW* LPRASPPPIPXW; - -struct RASPPPIPXA { - DWORD dwSize; - DWORD dwError; - CHAR szIpxAddress[RAS_MaxIpxAddress + 1]; -} -alias RASPPPIPXA* LPRASPPPIPXA; - -struct RASPPPIPW{ - DWORD dwSize; - DWORD dwError; - WCHAR szIpAddress[RAS_MaxIpAddress + 1]; - //#ifndef WINNT35COMPATIBLE - WCHAR szServerIpAddress[RAS_MaxIpAddress + 1]; - //#endif - static if (_WIN32_WINNT >= 0x500) { - DWORD dwOptions; - DWORD dwServerOptions; - } -} -alias RASPPPIPW* LPRASPPPIPW; - -struct RASPPPIPA{ - DWORD dwSize; - DWORD dwError; - CHAR szIpAddress[RAS_MaxIpAddress + 1]; - //#ifndef WINNT35COMPATIBLE - CHAR szServerIpAddress[RAS_MaxIpAddress + 1]; - //#endif - static if (_WIN32_WINNT >= 0x500) { - DWORD dwOptions; - DWORD dwServerOptions; - } -} -alias RASPPPIPA* LPRASPPPIPA; - -struct RASPPPLCPW{ - DWORD dwSize; - BOOL fBundled; - static if (_WIN32_WINNT >= 0x500) { - DWORD dwError; - DWORD dwAuthenticationProtocol; - DWORD dwAuthenticationData; - DWORD dwEapTypeId; - DWORD dwServerAuthenticationProtocol; - DWORD dwServerAuthenticationData; - DWORD dwServerEapTypeId; - BOOL fMultilink; - DWORD dwTerminateReason; - DWORD dwServerTerminateReason; - WCHAR[RAS_MaxReplyMessage] szReplyMessage; - DWORD dwOptions; - DWORD dwServerOptions; - } -} -alias RASPPPLCPW* LPRASPPPLCPW; - -struct RASPPPLCPA{ - DWORD dwSize; - BOOL fBundled; - static if (_WIN32_WINNT >= 0x500) { - DWORD dwError; - DWORD dwAuthenticationProtocol; - DWORD dwAuthenticationData; - DWORD dwEapTypeId; - DWORD dwServerAuthenticationProtocol; - DWORD dwServerAuthenticationData; - DWORD dwServerEapTypeId; - BOOL fMultilink; - DWORD dwTerminateReason; - DWORD dwServerTerminateReason; - CHAR[RAS_MaxReplyMessage] szReplyMessage; - DWORD dwOptions; - DWORD dwServerOptions; - } -} -alias RASPPPLCPA* LPRASPPPLCPA; - -struct RASSLIPW{ - DWORD dwSize; - DWORD dwError; - WCHAR szIpAddress[RAS_MaxIpAddress + 1]; -} -alias RASSLIPW* LPRASSLIPW; - -struct RASSLIPA{ - DWORD dwSize; - DWORD dwError; - CHAR szIpAddress[RAS_MaxIpAddress + 1]; -} -alias RASSLIPA* LPRASSLIPA; - -struct RASDEVINFOW{ - DWORD dwSize; - WCHAR szDeviceType[RAS_MaxDeviceType + 1]; - WCHAR szDeviceName[RAS_MaxDeviceName + 1]; -} -alias RASDEVINFOW* LPRASDEVINFOW; - -struct RASDEVINFOA{ - DWORD dwSize; - CHAR szDeviceType[RAS_MaxDeviceType + 1]; - CHAR szDeviceName[RAS_MaxDeviceName + 1]; -} -alias RASDEVINFOA* LPRASDEVINFOA; - -struct RASCTRYINFO { - DWORD dwSize; - DWORD dwCountryID; - DWORD dwNextCountryID; - DWORD dwCountryCode; - DWORD dwCountryNameOffset; -} -alias RASCTRYINFO* LPRASCTRYINFO; -alias RASCTRYINFO RASCTRYINFOW, RASCTRYINFOA; -alias RASCTRYINFOW* LPRASCTRYINFOW; -alias RASCTRYINFOA* LPRASCTRYINFOA; - -struct RASIPADDR { - BYTE a; - BYTE b; - BYTE c; - BYTE d; -} - -struct RASENTRYW { - DWORD dwSize; - DWORD dwfOptions; - DWORD dwCountryID; - DWORD dwCountryCode; - WCHAR szAreaCode[RAS_MaxAreaCode + 1]; - WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]; - DWORD dwAlternateOffset; - RASIPADDR ipaddr; - RASIPADDR ipaddrDns; - RASIPADDR ipaddrDnsAlt; - RASIPADDR ipaddrWins; - RASIPADDR ipaddrWinsAlt; - DWORD dwFrameSize; - DWORD dwfNetProtocols; - DWORD dwFramingProtocol; - WCHAR[MAX_PATH] szScript; - WCHAR[MAX_PATH] szAutodialDll; - WCHAR[MAX_PATH] szAutodialFunc; - WCHAR szDeviceType[RAS_MaxDeviceType + 1]; - WCHAR szDeviceName[RAS_MaxDeviceName + 1]; - WCHAR szX25PadType[RAS_MaxPadType + 1]; - WCHAR szX25Address[RAS_MaxX25Address + 1]; - WCHAR szX25Facilities[RAS_MaxFacilities + 1]; - WCHAR szX25UserData[RAS_MaxUserData + 1]; - DWORD dwChannels; - DWORD dwReserved1; - DWORD dwReserved2; - static if (_WIN32_WINNT >= 0x401) { - DWORD dwSubEntries; - DWORD dwDialMode; - DWORD dwDialExtraPercent; - DWORD dwDialExtraSampleSeconds; - DWORD dwHangUpExtraPercent; - DWORD dwHangUpExtraSampleSeconds; - DWORD dwIdleDisconnectSeconds; - } - static if (_WIN32_WINNT >= 0x500) { - DWORD dwType; - DWORD dwEncryptionType; - DWORD dwCustomAuthKey; - GUID guidId; - WCHAR[MAX_PATH] szCustomDialDll; - DWORD dwVpnStrategy; - } -} -alias RASENTRYW* LPRASENTRYW; - -struct RASENTRYA { - DWORD dwSize; - DWORD dwfOptions; - DWORD dwCountryID; - DWORD dwCountryCode; - CHAR szAreaCode[RAS_MaxAreaCode + 1]; - CHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]; - DWORD dwAlternateOffset; - RASIPADDR ipaddr; - RASIPADDR ipaddrDns; - RASIPADDR ipaddrDnsAlt; - RASIPADDR ipaddrWins; - RASIPADDR ipaddrWinsAlt; - DWORD dwFrameSize; - DWORD dwfNetProtocols; - DWORD dwFramingProtocol; - CHAR[MAX_PATH] szScript; - CHAR[MAX_PATH] szAutodialDll; - CHAR[MAX_PATH] szAutodialFunc; - CHAR szDeviceType[RAS_MaxDeviceType + 1]; - CHAR szDeviceName[RAS_MaxDeviceName + 1]; - CHAR szX25PadType[RAS_MaxPadType + 1]; - CHAR szX25Address[RAS_MaxX25Address + 1]; - CHAR szX25Facilities[RAS_MaxFacilities + 1]; - CHAR szX25UserData[RAS_MaxUserData + 1]; - DWORD dwChannels; - DWORD dwReserved1; - DWORD dwReserved2; - static if (_WIN32_WINNT >= 0x401) { - DWORD dwSubEntries; - DWORD dwDialMode; - DWORD dwDialExtraPercent; - DWORD dwDialExtraSampleSeconds; - DWORD dwHangUpExtraPercent; - DWORD dwHangUpExtraSampleSeconds; - DWORD dwIdleDisconnectSeconds; - } - static if (_WIN32_WINNT >= 0x500) { - DWORD dwType; - DWORD dwEncryptionType; - DWORD dwCustomAuthKey; - GUID guidId; - CHAR[MAX_PATH] szCustomDialDll; - DWORD dwVpnStrategy; - } -} -alias RASENTRYA* LPRASENTRYA; - - -static if (_WIN32_WINNT >= 0x401) { - struct RASADPARAMS { - DWORD dwSize; - HWND hwndOwner; - DWORD dwFlags; - LONG xDlg; - LONG yDlg; - } - alias RASADPARAMS* LPRASADPARAMS; - - struct RASSUBENTRYW{ - DWORD dwSize; - DWORD dwfFlags; - WCHAR szDeviceType[RAS_MaxDeviceType + 1]; - WCHAR szDeviceName[RAS_MaxDeviceName + 1]; - WCHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]; - DWORD dwAlternateOffset; - } - alias RASSUBENTRYW* LPRASSUBENTRYW; - - struct RASSUBENTRYA{ - DWORD dwSize; - DWORD dwfFlags; - CHAR szDeviceType[RAS_MaxDeviceType + 1]; - CHAR szDeviceName[RAS_MaxDeviceName + 1]; - CHAR szLocalPhoneNumber[RAS_MaxPhoneNumber + 1]; - DWORD dwAlternateOffset; - } - alias RASSUBENTRYA* LPRASSUBENTRYA; - - struct RASCREDENTIALSW{ - DWORD dwSize; - DWORD dwMask; - WCHAR szUserName[UNLEN + 1]; - WCHAR szPassword[PWLEN + 1]; - WCHAR szDomain[DNLEN + 1]; - } - alias RASCREDENTIALSW* LPRASCREDENTIALSW; - - struct RASCREDENTIALSA{ - DWORD dwSize; - DWORD dwMask; - CHAR szUserName[UNLEN + 1]; - CHAR szPassword[PWLEN + 1]; - CHAR szDomain[DNLEN + 1]; - } - alias RASCREDENTIALSA* LPRASCREDENTIALSA; - - struct RASAUTODIALENTRYW{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwDialingLocation; - WCHAR szEntry[RAS_MaxEntryName + 1]; - } - alias RASAUTODIALENTRYW* LPRASAUTODIALENTRYW; - - struct RASAUTODIALENTRYA{ - DWORD dwSize; - DWORD dwFlags; - DWORD dwDialingLocation; - CHAR szEntry[RAS_MaxEntryName + 1]; - } - alias RASAUTODIALENTRYA* LPRASAUTODIALENTRYA; -} - -static if (_WIN32_WINNT >= 0x500) { - struct RASPPPCCP{ - DWORD dwSize; - DWORD dwError; - DWORD dwCompressionAlgorithm; - DWORD dwOptions; - DWORD dwServerCompressionAlgorithm; - DWORD dwServerOptions; - } - alias RASPPPCCP* LPRASPPPCCP; - - struct RASEAPUSERIDENTITYW{ - WCHAR szUserName[UNLEN + 1]; - DWORD dwSizeofEapInfo; - BYTE[1] pbEapInfo; - } - alias RASEAPUSERIDENTITYW* LPRASEAPUSERIDENTITYW; - - struct RASEAPUSERIDENTITYA{ - CHAR szUserName[UNLEN + 1]; - DWORD dwSizeofEapInfo; - BYTE[1] pbEapInfo; - } - alias RASEAPUSERIDENTITYA* LPRASEAPUSERIDENTITYA; - - struct RAS_STATS{ - DWORD dwSize; - DWORD dwBytesXmited; - DWORD dwBytesRcved; - DWORD dwFramesXmited; - DWORD dwFramesRcved; - DWORD dwCrcErr; - DWORD dwTimeoutErr; - DWORD dwAlignmentErr; - DWORD dwHardwareOverrunErr; - DWORD dwFramingErr; - DWORD dwBufferOverrunErr; - DWORD dwCompressionRatioIn; - DWORD dwCompressionRatioOut; - DWORD dwBps; - DWORD dwConnectDuration; - } - alias RAS_STATS* PRAS_STATS; -} - - -/* UNICODE typedefs for structures*/ -version (Unicode) { - alias RASCONNW RASCONN; - alias RASENTRYW RASENTRY; - alias RASCONNSTATUSW RASCONNSTATUS; - alias RASDIALPARAMSW RASDIALPARAMS; - alias RASAMBW RASAMB; - alias RASPPPNBFW RASPPPNBF; - alias RASPPPIPXW RASPPPIPX; - alias RASPPPIPW RASPPPIP; - alias RASPPPLCPW RASPPPLCP; - alias RASSLIPW RASSLIP; - alias RASDEVINFOW RASDEVINFO; - alias RASENTRYNAMEW RASENTRYNAME; - - static if (_WIN32_WINNT >= 0x401) { - alias RASSUBENTRYW RASSUBENTRY; - alias RASCREDENTIALSW RASCREDENTIALS; - alias RASAUTODIALENTRYW RASAUTODIALENTRY; - } - - static if (_WIN32_WINNT >= 0x500) { - alias RASEAPUSERIDENTITYW RASEAPUSERIDENTITY; - } - -} else { // ! defined UNICODE - - alias RASCONNA RASCONN; - alias RASENTRYA RASENTRY; - alias RASCONNSTATUSA RASCONNSTATUS; - alias RASDIALPARAMSA RASDIALPARAMS; - alias RASAMBA RASAMB; - alias RASPPPNBFA RASPPPNBF; - alias RASPPPIPXA RASPPPIPX; - alias RASPPPIPA RASPPPIP; - alias RASPPPLCPA RASPPPLCP; - alias RASSLIPA RASSLIP; - alias RASDEVINFOA RASDEVINFO; - alias RASENTRYNAMEA RASENTRYNAME; - - static if (_WIN32_WINNT >= 0x401) { - alias RASSUBENTRYA RASSUBENTRY; - alias RASCREDENTIALSA RASCREDENTIALS; - alias RASAUTODIALENTRYA RASAUTODIALENTRY; - } - static if (_WIN32_WINNT >= 0x500) { - alias RASEAPUSERIDENTITYA RASEAPUSERIDENTITY; - } -}// ! UNICODE - - -alias RASCONN* LPRASCONN; -alias RASENTRY* LPRASENTRY; -alias RASCONNSTATUS* LPRASCONNSTATUS; -alias RASDIALPARAMS* LPRASDIALPARAMS; -alias RASAMB* LPRASAM; -alias RASPPPNBF* LPRASPPPNBF; -alias RASPPPIPX* LPRASPPPIPX; -alias RASPPPIP* LPRASPPPIP; -alias RASPPPLCP* LPRASPPPLCP; -alias RASSLIP* LPRASSLIP; -alias RASDEVINFO* LPRASDEVINFO; -alias RASENTRYNAME* LPRASENTRYNAME; - -static if (_WIN32_WINNT >= 0x401) { - alias RASSUBENTRY* LPRASSUBENTRY; - alias RASCREDENTIALS* LPRASCREDENTIALS; - alias RASAUTODIALENTRY* LPRASAUTODIALENTRY; -} -static if (_WIN32_WINNT >= 0x500) { - alias RASEAPUSERIDENTITY* LPRASEAPUSERIDENTITY; -} - -/* Callback prototypes */ -deprecated { - alias BOOL function (HWND, LPSTR, DWORD, LPDWORD) ORASADFUNC; -} - -alias void function (UINT, RASCONNSTATE, DWORD) RASDIALFUNC; -alias void function(HRASCONN, UINT, RASCONNSTATE, DWORD, -DWORD) RASDIALFUNC1; -alias DWORD function (ULONG_PTR, DWORD, HRASCONN, UINT, -RASCONNSTATE, DWORD, DWORD) RASDIALFUNC2; - -/* External functions */ -DWORD RasDialA (LPRASDIALEXTENSIONS, LPCSTR, LPRASDIALPARAMSA, -DWORD, LPVOID, LPHRASCONN); -DWORD RasDialW (LPRASDIALEXTENSIONS, LPCWSTR, LPRASDIALPARAMSW, -DWORD, LPVOID, LPHRASCONN); -DWORD RasEnumConnectionsA (LPRASCONNA, LPDWORD, LPDWORD); -DWORD RasEnumConnectionsW (LPRASCONNW, LPDWORD, LPDWORD); -DWORD RasEnumEntriesA (LPCSTR, LPCSTR, LPRASENTRYNAMEA, LPDWORD, -LPDWORD); -DWORD RasEnumEntriesW (LPCWSTR, LPCWSTR, LPRASENTRYNAMEW, LPDWORD, -LPDWORD); -DWORD RasGetConnectStatusA (HRASCONN, LPRASCONNSTATUSA); -DWORD RasGetConnectStatusW (HRASCONN, LPRASCONNSTATUSW); -DWORD RasGetErrorStringA (UINT, LPSTR, DWORD); -DWORD RasGetErrorStringW (UINT, LPWSTR, DWORD); -DWORD RasHangUpA (HRASCONN); -DWORD RasHangUpW (HRASCONN); -DWORD RasGetProjectionInfoA (HRASCONN, RASPROJECTION, LPVOID, -LPDWORD); -DWORD RasGetProjectionInfoW (HRASCONN, RASPROJECTION, LPVOID, -LPDWORD); -DWORD RasCreatePhonebookEntryA (HWND, LPCSTR); -DWORD RasCreatePhonebookEntryW (HWND, LPCWSTR); -DWORD RasEditPhonebookEntryA (HWND, LPCSTR, LPCSTR); -DWORD RasEditPhonebookEntryW (HWND, LPCWSTR, LPCWSTR); -DWORD RasSetEntryDialParamsA (LPCSTR, LPRASDIALPARAMSA, BOOL); -DWORD RasSetEntryDialParamsW (LPCWSTR, LPRASDIALPARAMSW, BOOL); -DWORD RasGetEntryDialParamsA (LPCSTR, LPRASDIALPARAMSA, LPBOOL); -DWORD RasGetEntryDialParamsW (LPCWSTR, LPRASDIALPARAMSW, LPBOOL); -DWORD RasEnumDevicesA (LPRASDEVINFOA, LPDWORD, LPDWORD); -DWORD RasEnumDevicesW (LPRASDEVINFOW, LPDWORD, LPDWORD); -DWORD RasGetCountryInfoA (LPRASCTRYINFOA, LPDWORD); -DWORD RasGetCountryInfoW (LPRASCTRYINFOW, LPDWORD); -DWORD RasGetEntryPropertiesA (LPCSTR, LPCSTR, LPRASENTRYA, LPDWORD, -LPBYTE, LPDWORD); -DWORD RasGetEntryPropertiesW (LPCWSTR, LPCWSTR, LPRASENTRYW, -LPDWORD, LPBYTE, LPDWORD); -DWORD RasSetEntryPropertiesA (LPCSTR, LPCSTR, LPRASENTRYA, DWORD, -LPBYTE, DWORD); -DWORD RasSetEntryPropertiesW (LPCWSTR, LPCWSTR, LPRASENTRYW, DWORD, -LPBYTE, DWORD); -DWORD RasRenameEntryA (LPCSTR, LPCSTR, LPCSTR); -DWORD RasRenameEntryW (LPCWSTR, LPCWSTR, LPCWSTR); -DWORD RasDeleteEntryA (LPCSTR, LPCSTR); -DWORD RasDeleteEntryW (LPCWSTR, LPCWSTR); -DWORD RasValidateEntryNameA (LPCSTR, LPCSTR); -DWORD RasValidateEntryNameW (LPCWSTR, LPCWSTR); - -static if (_WIN32_WINNT >= 0x401) { - alias BOOL function (LPSTR, LPSTR, LPRASADPARAMS, LPDWORD) RASADFUNCA; - alias BOOL function (LPWSTR, LPWSTR, LPRASADPARAMS, LPDWORD) RASADFUNCW; - - DWORD RasGetSubEntryHandleA (HRASCONN, DWORD, LPHRASCONN); - DWORD RasGetSubEntryHandleW (HRASCONN, DWORD, LPHRASCONN); - DWORD RasGetCredentialsA (LPCSTR, LPCSTR, LPRASCREDENTIALSA); - DWORD RasGetCredentialsW (LPCWSTR, LPCWSTR, LPRASCREDENTIALSW); - DWORD RasSetCredentialsA (LPCSTR, LPCSTR, LPRASCREDENTIALSA, BOOL); - DWORD RasSetCredentialsW (LPCWSTR, LPCWSTR, LPRASCREDENTIALSW, BOOL); - DWORD RasConnectionNotificationA (HRASCONN, HANDLE, DWORD); - DWORD RasConnectionNotificationW (HRASCONN, HANDLE, DWORD); - DWORD RasGetSubEntryPropertiesA (LPCSTR, LPCSTR, DWORD, - LPRASSUBENTRYA, LPDWORD, LPBYTE, LPDWORD); - DWORD RasGetSubEntryPropertiesW (LPCWSTR, LPCWSTR, DWORD, - LPRASSUBENTRYW, LPDWORD, LPBYTE, LPDWORD); - DWORD RasSetSubEntryPropertiesA (LPCSTR, LPCSTR, DWORD, - LPRASSUBENTRYA, DWORD, LPBYTE, DWORD); - DWORD RasSetSubEntryPropertiesW (LPCWSTR, LPCWSTR, DWORD, - LPRASSUBENTRYW, DWORD, LPBYTE, DWORD); - DWORD RasGetAutodialAddressA (LPCSTR, LPDWORD, LPRASAUTODIALENTRYA, - LPDWORD, LPDWORD); - DWORD RasGetAutodialAddressW (LPCWSTR, LPDWORD, - LPRASAUTODIALENTRYW, LPDWORD, LPDWORD); - DWORD RasSetAutodialAddressA (LPCSTR, DWORD, LPRASAUTODIALENTRYA, - DWORD, DWORD); - DWORD RasSetAutodialAddressW (LPCWSTR, DWORD, LPRASAUTODIALENTRYW, - DWORD, DWORD); - DWORD RasEnumAutodialAddressesA (LPSTR *, LPDWORD, LPDWORD); - DWORD RasEnumAutodialAddressesW (LPWSTR *, LPDWORD, LPDWORD); - DWORD RasGetAutodialEnableA (DWORD, LPBOOL); - DWORD RasGetAutodialEnableW (DWORD, LPBOOL); - DWORD RasSetAutodialEnableA (DWORD, BOOL); - DWORD RasSetAutodialEnableW (DWORD, BOOL); - DWORD RasGetAutodialParamA (DWORD, LPVOID, LPDWORD); - DWORD RasGetAutodialParamW (DWORD, LPVOID, LPDWORD); - DWORD RasSetAutodialParamA (DWORD, LPVOID, DWORD); - DWORD RasSetAutodialParamW (DWORD, LPVOID, DWORD); -} - -static if (_WIN32_WINNT >= 0x500) { - alias DWORD function (HRASCONN) RasCustomHangUpFn; - alias DWORD function (LPCTSTR, LPCTSTR, DWORD) RasCustomDeleteEntryNotifyFn; - alias DWORD function (HINSTANCE, LPRASDIALEXTENSIONS, - LPCTSTR, LPRASDIALPARAMS, DWORD, LPVOID, LPHRASCONN, DWORD) RasCustomDialFn; - - DWORD RasInvokeEapUI (HRASCONN, DWORD, LPRASDIALEXTENSIONS, HWND); - DWORD RasGetLinkStatistics (HRASCONN, DWORD, RAS_STATS*); - DWORD RasGetConnectionStatistics (HRASCONN, RAS_STATS*); - DWORD RasClearLinkStatistics (HRASCONN, DWORD); - DWORD RasClearConnectionStatistics (HRASCONN); - DWORD RasGetEapUserDataA (HANDLE, LPCSTR, LPCSTR, BYTE*, DWORD*); - DWORD RasGetEapUserDataW (HANDLE, LPCWSTR, LPCWSTR, BYTE*, DWORD*); - DWORD RasSetEapUserDataA (HANDLE, LPCSTR, LPCSTR, BYTE*, DWORD); - DWORD RasSetEapUserDataW (HANDLE, LPCWSTR, LPCWSTR, BYTE*, DWORD); - DWORD RasGetCustomAuthDataA (LPCSTR, LPCSTR, BYTE*, DWORD*); - DWORD RasGetCustomAuthDataW (LPCWSTR, LPCWSTR, BYTE*, DWORD*); - DWORD RasSetCustomAuthDataA (LPCSTR, LPCSTR, BYTE*, DWORD); - DWORD RasSetCustomAuthDataW (LPCWSTR, LPCWSTR, BYTE*, DWORD); - DWORD RasGetEapUserIdentityW (LPCWSTR, LPCWSTR, DWORD, HWND, LPRASEAPUSERIDENTITYW*); - DWORD RasGetEapUserIdentityA (LPCSTR, LPCSTR, DWORD, HWND, LPRASEAPUSERIDENTITYA*); - void RasFreeEapUserIdentityW (LPRASEAPUSERIDENTITYW); - void RasFreeEapUserIdentityA (LPRASEAPUSERIDENTITYA); -} - - -/* UNICODE defines for functions */ -version(Unicode) { - alias RasDialW RasDial; - alias RasEnumConnectionsW RasEnumConnections; - alias RasEnumEntriesW RasEnumEntries; - alias RasGetConnectStatusW RasGetConnectStatus; - alias RasGetErrorStringW RasGetErrorString; - alias RasHangUpW RasHangUp; - alias RasGetProjectionInfoW RasGetProjectionInfo; - alias RasCreatePhonebookEntryW RasCreatePhonebookEntry; - alias RasEditPhonebookEntryW RasEditPhonebookEntry; - alias RasSetEntryDialParamsW RasSetEntryDialParams; - alias RasGetEntryDialParamsW RasGetEntryDialParams; - alias RasEnumDevicesW RasEnumDevices; - alias RasGetCountryInfoW RasGetCountryInfo; - alias RasGetEntryPropertiesW RasGetEntryProperties; - alias RasSetEntryPropertiesW RasSetEntryProperties; - alias RasRenameEntryW RasRenameEntry; - alias RasDeleteEntryW RasDeleteEntry; - alias RasValidateEntryNameW RasValidateEntryName; - - static if (_WIN32_WINNT >= 0x401) { - alias RASADFUNCW RASADFUNC; - alias RasGetSubEntryHandleW RasGetSubEntryHandle; - alias RasConnectionNotificationW RasConnectionNotification; - alias RasGetSubEntryPropertiesW RasGetSubEntryProperties; - alias RasSetSubEntryPropertiesW RasSetSubEntryProperties; - alias RasGetCredentialsW RasGetCredentials; - alias RasSetCredentialsW RasSetCredentials; - alias RasGetAutodialAddressW RasGetAutodialAddress; - alias RasSetAutodialAddressW RasSetAutodialAddress; - alias RasEnumAutodialAddressesW RasEnumAutodialAddresses; - alias RasGetAutodialEnableW RasGetAutodialEnable; - alias RasSetAutodialEnableW RasSetAutodialEnable; - alias RasGetAutodialParamW RasGetAutodialParam; - alias RasSetAutodialParamW RasSetAutodialParam; - } - - static if (_WIN32_WINNT >= 0x500) { - alias RasGetEapUserDataW RasGetEapUserData; - alias RasSetEapUserDataW RasSetEapUserData; - alias RasGetCustomAuthDataW RasGetCustomAuthData; - alias RasSetCustomAuthDataW RasSetCustomAuthData; - alias RasGetEapUserIdentityW RasGetEapUserIdentity; - alias RasFreeEapUserIdentityW RasFreeEapUserIdentity; - } - -} else { // !Unicode - alias RasDialA RasDial; - alias RasEnumConnectionsA RasEnumConnections; - alias RasEnumEntriesA RasEnumEntries; - alias RasGetConnectStatusA RasGetConnectStatus; - alias RasGetErrorStringA RasGetErrorString; - alias RasHangUpA RasHangUp; - alias RasGetProjectionInfoA RasGetProjectionInfo; - alias RasCreatePhonebookEntryA RasCreatePhonebookEntry; - alias RasEditPhonebookEntryA RasEditPhonebookEntry; - alias RasSetEntryDialParamsA RasSetEntryDialParams; - alias RasGetEntryDialParamsA RasGetEntryDialParams; - alias RasEnumDevicesA RasEnumDevices; - alias RasGetCountryInfoA RasGetCountryInfo; - alias RasGetEntryPropertiesA RasGetEntryProperties; - alias RasSetEntryPropertiesA RasSetEntryProperties; - alias RasRenameEntryA RasRenameEntry; - alias RasDeleteEntryA RasDeleteEntry; - alias RasValidateEntryNameA RasValidateEntryName; - - static if (_WIN32_WINNT >= 0x401) { - alias RASADFUNCA RASADFUNC; - alias RasGetSubEntryHandleA RasGetSubEntryHandle; - alias RasConnectionNotificationA RasConnectionNotification; - alias RasGetSubEntryPropertiesA RasGetSubEntryProperties; - alias RasSetSubEntryPropertiesA RasSetSubEntryProperties; - alias RasGetCredentialsA RasGetCredentials; - alias RasSetCredentialsA RasSetCredentials; - alias RasGetAutodialAddressA RasGetAutodialAddress; - alias RasSetAutodialAddressA RasSetAutodialAddress; - alias RasEnumAutodialAddressesA RasEnumAutodialAddresses; - alias RasGetAutodialEnableA RasGetAutodialEnable; - alias RasSetAutodialEnableA RasSetAutodialEnable; - alias RasGetAutodialParamA RasGetAutodialParam; - alias RasSetAutodialParamA RasSetAutodialParam; - } - - static if (_WIN32_WINNT >= 0x500) { - alias RasGetEapUserDataA RasGetEapUserData; - alias RasSetEapUserDataA RasSetEapUserData; - alias RasGetCustomAuthDataA RasGetCustomAuthData; - alias RasSetCustomAuthDataA RasSetCustomAuthData; - alias RasGetEapUserIdentityA RasGetEapUserIdentity; - alias RasFreeEapUserIdentityA RasFreeEapUserIdentity; - } -} //#endif // !Unicode diff --git a/3rdparty-extra/win32/rasdlg.d b/3rdparty-extra/win32/rasdlg.d deleted file mode 100644 index 3398f2d0c..000000000 --- a/3rdparty-extra/win32/rasdlg.d +++ /dev/null @@ -1,160 +0,0 @@ -/***********************************************************************\ -* rasdlg.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.rasdlg; -version(Windows): - -import win32.ras; -private import win32.lmcons, win32.windef; - -enum { - RASPBDEVENT_AddEntry = 1, - RASPBDEVENT_EditEntry, - RASPBDEVENT_RemoveEntry, - RASPBDEVENT_DialEntry, - RASPBDEVENT_EditGlobals, - RASPBDEVENT_NoUser, - RASPBDEVENT_NoUserEdit -} - -const RASPBDFLAG_PositionDlg = 1; -const RASPBDFLAG_ForceCloseOnDial = 2; -const RASPBDFLAG_NoUser = 16; - -const RASEDFLAG_PositionDlg = 1; -const RASEDFLAG_NewEntry = 2; -const RASEDFLAG_CloneEntry = 4; - -const RASDDFLAG_PositionDlg = 1; - -align(4): - -struct RASENTRYDLGA { - DWORD dwSize = RASENTRYDLGA.sizeof; - HWND hwndOwner; - DWORD dwFlags; - LONG xDlg; - LONG yDlg; - CHAR[RAS_MaxEntryName + 1] szEntry; - DWORD dwError; - ULONG_PTR reserved; - ULONG_PTR reserved2; -} -alias RASENTRYDLGA* LPRASENTRYDLGA; - -struct RASENTRYDLGW { - DWORD dwSize = RASENTRYDLGW.sizeof; - HWND hwndOwner; - DWORD dwFlags; - LONG xDlg; - LONG yDlg; - WCHAR[RAS_MaxEntryName + 1] szEntry; - DWORD dwError; - ULONG_PTR reserved; - ULONG_PTR reserved2; -} -alias RASENTRYDLGW* LPRASENTRYDLGW; - -struct RASDIALDLG { - DWORD dwSize; - HWND hwndOwner; - DWORD dwFlags; - LONG xDlg; - LONG yDlg; - DWORD dwSubEntry; - DWORD dwError; - ULONG_PTR reserved; - ULONG_PTR reserved2; -} -alias RASDIALDLG* LPRASDIALDLG; - -// Application-defined callback functions -extern (Windows) { - alias VOID function(DWORD, DWORD, LPWSTR, LPVOID) RASPBDLGFUNCW; - alias VOID function(DWORD, DWORD, LPSTR, LPVOID) RASPBDLGFUNCA; -} - -struct RASPBDLGA { - DWORD dwSize = RASPBDLGA.sizeof; - HWND hwndOwner; - DWORD dwFlags; - LONG xDlg; - LONG yDlg; - ULONG_PTR dwCallbackId; - RASPBDLGFUNCA pCallback; - DWORD dwError; - ULONG_PTR reserved; - ULONG_PTR reserved2; -} -alias RASPBDLGA* LPRASPBDLGA; - -struct RASPBDLGW { - DWORD dwSize = RASPBDLGW.sizeof; - HWND hwndOwner; - DWORD dwFlags; - LONG xDlg; - LONG yDlg; - ULONG_PTR dwCallbackId; - RASPBDLGFUNCW pCallback; - DWORD dwError; - ULONG_PTR reserved; - ULONG_PTR reserved2; -} -alias RASPBDLGW* LPRASPBDLGW; - -struct RASNOUSERA -{ - DWORD dwSize = RASNOUSERA.sizeof; - DWORD dwFlags; - DWORD dwTimeoutMs; - CHAR[UNLEN + 1] szUserName; - CHAR[PWLEN + 1] szPassword; - CHAR[DNLEN + 1] szDomain; -} -alias RASNOUSERA* LPRASNOUSERA; - -struct RASNOUSERW { - DWORD dwSize = RASNOUSERW.sizeof; - DWORD dwFlags; - DWORD dwTimeoutMs; - WCHAR[UNLEN + 1] szUserName; - WCHAR[PWLEN + 1] szPassword; - WCHAR[DNLEN + 1] szDomain; -} -alias RASNOUSERW* LPRASNOUSERW; - -extern (Windows) { - BOOL RasDialDlgA(LPSTR, LPSTR, LPSTR, LPRASDIALDLG); - BOOL RasDialDlgW(LPWSTR, LPWSTR, LPWSTR, LPRASDIALDLG); - BOOL RasEntryDlgA(LPSTR, LPSTR, LPRASENTRYDLGA); - BOOL RasEntryDlgW(LPWSTR, LPWSTR, LPRASENTRYDLGW); - BOOL RasPhonebookDlgA(LPSTR, LPSTR, LPRASPBDLGA); - BOOL RasPhonebookDlgW(LPWSTR, LPWSTR, LPRASPBDLGW); -} - -version (Unicode) { - alias RASENTRYDLGW RASENTRYDLG; - alias RASPBDLGW RASPBDLG; - alias RASNOUSERW RASNOUSER; - alias RasDialDlgW RasDialDlg; - alias RasEntryDlgW RasEntryDlg; - alias RasPhonebookDlgW RasPhonebookDlg; -} else { - alias RASENTRYDLGA RASENTRYDLG; - alias RASPBDLGA RASPBDLG; - alias RASNOUSERA RASNOUSER; - alias RasDialDlgA RasDialDlg; - alias RasEntryDlgA RasEntryDlg; - alias RasPhonebookDlgA RasPhonebookDlg; -} - -alias RASENTRYDLG* LPRASENTRYDLG; -alias RASPBDLG* LPRASPBDLG; -alias RASNOUSER* LPRASNOUSER; diff --git a/3rdparty-extra/win32/raserror.d b/3rdparty-extra/win32/raserror.d deleted file mode 100644 index 8d5814779..000000000 --- a/3rdparty-extra/win32/raserror.d +++ /dev/null @@ -1,216 +0,0 @@ -/***********************************************************************\ -* raserror.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.raserror; -version(Windows): - -enum { - SUCCESS = 0, - RASBASE = 600, - PENDING = RASBASE, - ERROR_INVALID_PORT_HANDLE, - ERROR_PORT_ALREADY_OPEN, - ERROR_BUFFER_TOO_SMALL, - ERROR_WRONG_INFO_SPECIFIED, - ERROR_CANNOT_SET_PORT_INFO, - ERROR_PORT_NOT_CONNECTED, - ERROR_EVENT_INVALID, - ERROR_DEVICE_DOES_NOT_EXIST, - ERROR_DEVICETYPE_DOES_NOT_EXIST, - ERROR_BUFFER_INVALID, - ERROR_ROUTE_NOT_AVAILABLE, - ERROR_ROUTE_NOT_ALLOCATED, - ERROR_INVALID_COMPRESSION_SPECIFIED, - ERROR_OUT_OF_BUFFERS, - ERROR_PORT_NOT_FOUND, - ERROR_ASYNC_REQUEST_PENDING, - ERROR_ALREADY_DISCONNECTING, - ERROR_PORT_NOT_OPEN, - ERROR_PORT_DISCONNECTED, - ERROR_NO_ENDPOINTS, - ERROR_CANNOT_OPEN_PHONEBOOK, - ERROR_CANNOT_LOAD_PHONEBOOK, - ERROR_CANNOT_FIND_PHONEBOOK_ENTRY, - ERROR_CANNOT_WRITE_PHONEBOOK, - ERROR_CORRUPT_PHONEBOOK, - ERROR_CANNOT_LOAD_STRING, - ERROR_KEY_NOT_FOUND, - ERROR_DISCONNECTION, - ERROR_REMOTE_DISCONNECTION, - ERROR_HARDWARE_FAILURE, - ERROR_USER_DISCONNECTION, - ERROR_INVALID_SIZE, - ERROR_PORT_NOT_AVAILABLE, - ERROR_CANNOT_PROJECT_CLIENT, - ERROR_UNKNOWN, - ERROR_WRONG_DEVICE_ATTACHED, - ERROR_BAD_STRING, - ERROR_REQUEST_TIMEOUT, - ERROR_CANNOT_GET_LANA, - ERROR_NETBIOS_ERROR, - ERROR_SERVER_OUT_OF_RESOURCES, - ERROR_NAME_EXISTS_ON_NET, - ERROR_SERVER_GENERAL_NET_FAILURE, - WARNING_MSG_ALIAS_NOT_ADDED, - ERROR_AUTH_INTERNAL, - ERROR_RESTRICTED_LOGON_HOURS, - ERROR_ACCT_DISABLED, - ERROR_PASSWD_EXPIRED, - ERROR_NO_DIALIN_PERMISSION, - ERROR_SERVER_NOT_RESPONDING, - ERROR_FROM_DEVICE, - ERROR_UNRECOGNIZED_RESPONSE, - ERROR_MACRO_NOT_FOUND, - ERROR_MACRO_NOT_DEFINED, - ERROR_MESSAGE_MACRO_NOT_FOUND, - ERROR_DEFAULTOFF_MACRO_NOT_FOUND, - ERROR_FILE_COULD_NOT_BE_OPENED, - ERROR_DEVICENAME_TOO_LONG, - ERROR_DEVICENAME_NOT_FOUND, - ERROR_NO_RESPONSES, - ERROR_NO_COMMAND_FOUND, - ERROR_WRONG_KEY_SPECIFIED, - ERROR_UNKNOWN_DEVICE_TYPE, - ERROR_ALLOCATING_MEMORY, - ERROR_PORT_NOT_CONFIGURED, - ERROR_DEVICE_NOT_READY, - ERROR_READING_INI_FILE, - ERROR_NO_CONNECTION, - ERROR_BAD_USAGE_IN_INI_FILE, - ERROR_READING_SECTIONNAME, - ERROR_READING_DEVICETYPE, - ERROR_READING_DEVICENAME, - ERROR_READING_USAGE, - ERROR_READING_MAXCONNECTBPS, - ERROR_READING_MAXCARRIERBPS, - ERROR_LINE_BUSY, - ERROR_VOICE_ANSWER, - ERROR_NO_ANSWER, - ERROR_NO_CARRIER, - ERROR_NO_DIALTONE, - ERROR_IN_COMMAND, - ERROR_WRITING_SECTIONNAME, - ERROR_WRITING_DEVICETYPE, - ERROR_WRITING_DEVICENAME, - ERROR_WRITING_MAXCONNECTBPS, - ERROR_WRITING_MAXCARRIERBPS, - ERROR_WRITING_USAGE, - ERROR_WRITING_DEFAULTOFF, - ERROR_READING_DEFAULTOFF, - ERROR_EMPTY_INI_FILE, - ERROR_AUTHENTICATION_FAILURE, - ERROR_PORT_OR_DEVICE, - ERROR_NOT_BINARY_MACRO, - ERROR_DCB_NOT_FOUND, - ERROR_STATE_MACHINES_NOT_STARTED, - ERROR_STATE_MACHINES_ALREADY_STARTED, - ERROR_PARTIAL_RESPONSE_LOOPING, - ERROR_UNKNOWN_RESPONSE_KEY, - ERROR_RECV_BUF_FULL, - ERROR_CMD_TOO_LONG, - ERROR_UNSUPPORTED_BPS, - ERROR_UNEXPECTED_RESPONSE, - ERROR_INTERACTIVE_MODE, - ERROR_BAD_CALLBACK_NUMBER, - ERROR_INVALID_AUTH_STATE, - ERROR_WRITING_INITBPS, - ERROR_X25_DIAGNOSTIC, - ERROR_ACCT_EXPIRED, - ERROR_CHANGING_PASSWORD, - ERROR_OVERRUN, - ERROR_RASMAN_CANNOT_INITIALIZE, - ERROR_BIPLEX_PORT_NOT_AVAILABLE, - ERROR_NO_ACTIVE_ISDN_LINES, - ERROR_NO_ISDN_CHANNELS_AVAILABLE, - ERROR_TOO_MANY_LINE_ERRORS, - ERROR_IP_CONFIGURATION, - ERROR_NO_IP_ADDRESSES, - ERROR_PPP_TIMEOUT, - ERROR_PPP_REMOTE_TERMINATED, - ERROR_PPP_NO_PROTOCOLS_CONFIGURED, - ERROR_PPP_NO_RESPONSE, - ERROR_PPP_INVALID_PACKET, - ERROR_PHONE_NUMBER_TOO_LONG, - ERROR_IPXCP_NO_DIALOUT_CONFIGURED, - ERROR_IPXCP_NO_DIALIN_CONFIGURED, - ERROR_IPXCP_DIALOUT_ALREADY_ACTIVE, - ERROR_ACCESSING_TCPCFGDLL, - ERROR_NO_IP_RAS_ADAPTER, - ERROR_SLIP_REQUIRES_IP, - ERROR_PROJECTION_NOT_COMPLETE, - ERROR_PROTOCOL_NOT_CONFIGURED, - ERROR_PPP_NOT_CONVERGING, - ERROR_PPP_CP_REJECTED, - ERROR_PPP_LCP_TERMINATED, - ERROR_PPP_REQUIRED_ADDRESS_REJECTED, - ERROR_PPP_NCP_TERMINATED, - ERROR_PPP_LOOPBACK_DETECTED, - ERROR_PPP_NO_ADDRESS_ASSIGNED, - ERROR_CANNOT_USE_LOGON_CREDENTIALS, - ERROR_TAPI_CONFIGURATION, - ERROR_NO_LOCAL_ENCRYPTION, - ERROR_NO_REMOTE_ENCRYPTION, - ERROR_REMOTE_REQUIRES_ENCRYPTION, - ERROR_IPXCP_NET_NUMBER_CONFLICT, - ERROR_INVALID_SMM, - ERROR_SMM_UNINITIALIZED, - ERROR_NO_MAC_FOR_PORT, - ERROR_SMM_TIMEOUT, - ERROR_BAD_PHONE_NUMBER, - ERROR_WRONG_MODULE, - ERROR_INVALID_CALLBACK_NUMBER, - ERROR_SCRIPT_SYNTAX, - ERROR_HANGUP_FAILED, - ERROR_BUNDLE_NOT_FOUND, - ERROR_CANNOT_DO_CUSTOMDIAL, - ERROR_DIAL_ALREADY_IN_PROGRESS, - ERROR_RASAUTO_CANNOT_INITIALIZE, - ERROR_CONNECTION_ALREADY_SHARED, - ERROR_SHARING_CHANGE_FAILED, - ERROR_SHARING_ROUTER_INSTALL, - ERROR_SHARE_CONNECTION_FAILED, - ERROR_SHARING_PRIVATE_INSTALL, - ERROR_CANNOT_SHARE_CONNECTION, - ERROR_NO_SMART_CARD_READER, - ERROR_SHARING_ADDRESS_EXISTS, - ERROR_NO_CERTIFICATE, - ERROR_SHARING_MULTIPLE_ADDRESSES, - ERROR_FAILED_TO_ENCRYPT, - ERROR_BAD_ADDRESS_SPECIFIED, - ERROR_CONNECTION_REJECT, - ERROR_CONGESTION, - ERROR_INCOMPATIBLE, - ERROR_NUMBERCHANGED, - ERROR_TEMPFAILURE, - ERROR_BLOCKED, - ERROR_DONOTDISTURB, - ERROR_OUTOFORDER, - ERROR_UNABLE_TO_AUTHENTICATE_SERVER, - ERROR_SMART_CARD_REQUIRED, - ERROR_INVALID_FUNCTION_FOR_ENTRY, - ERROR_CERT_FOR_ENCRYPTION_NOT_FOUND, - ERROR_SHARING_RRAS_CONFLICT, - ERROR_SHARING_NO_PRIVATE_LAN, - ERROR_NO_DIFF_USER_AT_LOGON, - ERROR_NO_REG_CERT_AT_LOGON, - ERROR_OAKLEY_NO_CERT, - ERROR_OAKLEY_AUTH_FAIL, - ERROR_OAKLEY_ATTRIB_FAIL, - ERROR_OAKLEY_GENERAL_PROCESSING, - ERROR_OAKLEY_NO_PEER_CERT, - ERROR_OAKLEY_NO_POLICY, - ERROR_OAKLEY_TIMED_OUT, - ERROR_OAKLEY_ERROR, - ERROR_UNKNOWN_FRAMED_PROTOCOL, - ERROR_WRONG_TUNNEL_TYPE, - ERROR_UNKNOWN_SERVICE_TYPE, - ERROR_CONNECTING_DEVICE_NOT_FOUND, - ERROR_NO_EAPTLS_CERTIFICATE, // = RASBASE+198 - RASBASEEND = ERROR_NO_EAPTLS_CERTIFICATE -} diff --git a/3rdparty-extra/win32/rassapi.d b/3rdparty-extra/win32/rassapi.d deleted file mode 100644 index 7aad8a0f5..000000000 --- a/3rdparty-extra/win32/rassapi.d +++ /dev/null @@ -1,221 +0,0 @@ -/***********************************************************************\ -* rassapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.rassapi; -version(Windows): - -private import win32.lmcons, win32.windef; - -// FIXME: check types of constants - -const size_t - RASSAPI_MAX_PHONENUMBER_SIZE = 128, - RASSAPI_MAX_MEDIA_NAME = 16, - RASSAPI_MAX_PORT_NAME = 16, - RASSAPI_MAX_DEVICE_NAME = 128, - RASSAPI_MAX_DEVICETYPE_NAME = 16, - RASSAPI_MAX_PARAM_KEY_SIZE = 32; - -const RASPRIV_NoCallback = 0x01; -const RASPRIV_AdminSetCallback = 0x02; -const RASPRIV_CallerSetCallback = 0x04; -const RASPRIV_DialinPrivilege = 0x08; -const RASPRIV_CallbackType = 0x07; - -enum { - RAS_MODEM_OPERATIONAL = 1, - RAS_MODEM_NOT_RESPONDING, - RAS_MODEM_HARDWARE_FAILURE, - RAS_MODEM_INCORRECT_RESPONSE, - RAS_MODEM_UNKNOWN // = 5 -} - -enum { - RAS_PORT_NON_OPERATIONAL = 1, - RAS_PORT_DISCONNECTED, - RAS_PORT_CALLING_BACK, - RAS_PORT_LISTENING, - RAS_PORT_AUTHENTICATING, - RAS_PORT_AUTHENTICATED, - RAS_PORT_INITIALIZING // = 7 -} - -enum { - MEDIA_UNKNOWN, - MEDIA_SERIAL, - MEDIA_RAS10_SERIAL, - MEDIA_X25, - MEDIA_ISDN -} - -const USER_AUTHENTICATED = 0x0001; -const MESSENGER_PRESENT = 0x0002; -const PPP_CLIENT = 0x0004; -const GATEWAY_ACTIVE = 0x0008; -const REMOTE_LISTEN = 0x0010; -const PORT_MULTILINKED = 0x0020; - -const size_t - RAS_IPADDRESSLEN = 15, - RAS_IPXADDRESSLEN = 22, - RAS_ATADDRESSLEN = 32; - -// FIXME: should these be grouped together? -enum { - RASDOWNLEVEL = 10, - RASADMIN_35 = 35, - RASADMIN_CURRENT = 40 -} - -alias ULONG IPADDR; - -enum RAS_PARAMS_FORMAT { - ParamNumber = 0, - ParamString -} - -union RAS_PARAMS_VALUE { - DWORD Number; - struct _String { - DWORD Length; - PCHAR Data; - } - _String String; -} - -struct RAS_PARAMETERS { - CHAR[RASSAPI_MAX_PARAM_KEY_SIZE] P_Key; - RAS_PARAMS_FORMAT P_Type; - BYTE P_Attributes; - RAS_PARAMS_VALUE P_Value; -} - -struct RAS_USER_0 { - BYTE bfPrivilege; - WCHAR[RASSAPI_MAX_PHONENUMBER_SIZE + 1] szPhoneNumber; -} -alias RAS_USER_0* PRAS_USER_0; - -struct RAS_PORT_0 { - WCHAR[RASSAPI_MAX_PORT_NAME] wszPortName; - WCHAR[RASSAPI_MAX_DEVICETYPE_NAME] wszDeviceType; - WCHAR[RASSAPI_MAX_DEVICE_NAME] wszDeviceName; - WCHAR[RASSAPI_MAX_MEDIA_NAME] wszMediaName; - DWORD reserved; - DWORD Flags; - WCHAR[UNLEN + 1] wszUserName; - WCHAR[NETBIOS_NAME_LEN] wszComputer; - DWORD dwStartSessionTime; // seconds from 1/1/1970 - WCHAR[DNLEN + 1] wszLogonDomain; - BOOL fAdvancedServer; -} -alias RAS_PORT_0* PRAS_PORT_0; - -struct RAS_PPP_NBFCP_RESULT { - DWORD dwError; - DWORD dwNetBiosError; - CHAR[NETBIOS_NAME_LEN + 1] szName; - WCHAR[NETBIOS_NAME_LEN + 1] wszWksta; -} - -struct RAS_PPP_IPCP_RESULT { - DWORD dwError; - WCHAR[RAS_IPADDRESSLEN + 1] wszAddress; -} - -struct RAS_PPP_IPXCP_RESULT { - DWORD dwError; - WCHAR[RAS_IPXADDRESSLEN + 1] wszAddress; -} - -struct RAS_PPP_ATCP_RESULT { - DWORD dwError; - WCHAR[RAS_ATADDRESSLEN + 1] wszAddress; -} - -struct RAS_PPP_PROJECTION_RESULT { - RAS_PPP_NBFCP_RESULT nbf; - RAS_PPP_IPCP_RESULT ip; - RAS_PPP_IPXCP_RESULT ipx; - RAS_PPP_ATCP_RESULT at; -} - -struct RAS_PORT_1 { - RAS_PORT_0 rasport0; - DWORD LineCondition; - DWORD HardwareCondition; - DWORD LineSpeed; - WORD NumStatistics; - WORD NumMediaParms; - DWORD SizeMediaParms; - RAS_PPP_PROJECTION_RESULT ProjResult; -} -alias RAS_PORT_1* PRAS_PORT_1; - -struct RAS_PORT_STATISTICS { - DWORD dwBytesXmited; - DWORD dwBytesRcved; - DWORD dwFramesXmited; - DWORD dwFramesRcved; - DWORD dwCrcErr; - DWORD dwTimeoutErr; - DWORD dwAlignmentErr; - DWORD dwHardwareOverrunErr; - DWORD dwFramingErr; - DWORD dwBufferOverrunErr; - DWORD dwBytesXmitedUncompressed; - DWORD dwBytesRcvedUncompressed; - DWORD dwBytesXmitedCompressed; - DWORD dwBytesRcvedCompressed; - DWORD dwPortBytesXmited; - DWORD dwPortBytesRcved; - DWORD dwPortFramesXmited; - DWORD dwPortFramesRcved; - DWORD dwPortCrcErr; - DWORD dwPortTimeoutErr; - DWORD dwPortAlignmentErr; - DWORD dwPortHardwareOverrunErr; - DWORD dwPortFramingErr; - DWORD dwPortBufferOverrunErr; - DWORD dwPortBytesXmitedUncompressed; - DWORD dwPortBytesRcvedUncompressed; - DWORD dwPortBytesXmitedCompressed; - DWORD dwPortBytesRcvedCompressed; -} -alias RAS_PORT_STATISTICS* PRAS_PORT_STATISTICS; - -struct RAS_SERVER_0 { - WORD TotalPorts; - WORD PortsInUse; - DWORD RasVersion; -} -alias RAS_SERVER_0* PRAS_SERVER_0; - -extern (Windows) { - DWORD RasAdminServerGetInfo(const(WCHAR)*, PRAS_SERVER_0); - DWORD RasAdminGetUserAccountServer(const(WCHAR)*, const(WCHAR)*, LPWSTR); - DWORD RasAdminUserGetInfo(const(WCHAR)*, const(WCHAR)*, PRAS_USER_0); - DWORD RasAdminUserSetInfo(const(WCHAR)*, const(WCHAR)*, PRAS_USER_0); - DWORD RasAdminPortEnum(WCHAR*, PRAS_PORT_0*, WORD*); - DWORD RasAdminPortGetInfo(const(WCHAR)*, const(WCHAR)*, RAS_PORT_1*, - RAS_PORT_STATISTICS*, RAS_PARAMETERS**); - DWORD RasAdminPortClearStatistics(const(WCHAR)*, const(WCHAR)*); - DWORD RasAdminPortDisconnect(const(WCHAR)*, const(WCHAR)*); - DWORD RasAdminFreeBuffer(PVOID); - DWORD RasAdminGetErrorString(UINT, WCHAR*, DWORD); - BOOL RasAdminAcceptNewConnection(RAS_PORT_1*, RAS_PORT_STATISTICS*, - RAS_PARAMETERS*); - VOID RasAdminConnectionHangupNotification(RAS_PORT_1*, - RAS_PORT_STATISTICS*, RAS_PARAMETERS*); - DWORD RasAdminGetIpAddressForUser (WCHAR*, WCHAR*, IPADDR*, BOOL*); - VOID RasAdminReleaseIpAddress (WCHAR*, WCHAR*,IPADDR*); - DWORD RasAdminGetUserParms(WCHAR*, PRAS_USER_0); - DWORD RasAdminSetUserParms(WCHAR*, DWORD, PRAS_USER_0); -} diff --git a/3rdparty-extra/win32/readme.txt b/3rdparty-extra/win32/readme.txt deleted file mode 100644 index 657053ea7..000000000 --- a/3rdparty-extra/win32/readme.txt +++ /dev/null @@ -1,15 +0,0 @@ -+--------------------------------------+ -| Translation of the Win32 API headers | -+--------------------------------------+ - -This is a project to create a well-crafted translation of the Windows 32-bit API headers in the D programming language. - -The project started off as an improvement of Y. Tomino's translation, but is now a derivative of the public domain MinGW Windows headers. - -The official project page is at - -http://www.dsource.org/projects/bindings/wiki/WindowsApi - -If you wish to contribute to this project, please assign modules to yourself at that site, and refer to the translation instructions. - -Email me with comments/suggestions/bug reports: smjg@iname.com diff --git a/3rdparty-extra/win32/reason.d b/3rdparty-extra/win32/reason.d deleted file mode 100644 index 660268cd5..000000000 --- a/3rdparty-extra/win32/reason.d +++ /dev/null @@ -1,64 +0,0 @@ -/***********************************************************************\ -* reason.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.reason; -version(Windows): - -private import win32.w32api, win32.windef; - -static assert (_WIN32_WINNT >= 0x501, - "win32.reason is only available on WindowsXP and later"); - - -enum : DWORD { - SHTDN_REASON_MAJOR_OTHER = 0x00000000, - SHTDN_REASON_MAJOR_HARDWARE = 0x00010000, - SHTDN_REASON_MAJOR_OPERATINGSYSTEM = 0x00020000, - SHTDN_REASON_MAJOR_SOFTWARE = 0x00030000, - SHTDN_REASON_MAJOR_APPLICATION = 0x00040000, - SHTDN_REASON_MAJOR_SYSTEM = 0x00050000, - SHTDN_REASON_MAJOR_POWER = 0x00060000, - SHTDN_REASON_MAJOR_LEGACY_API = 0x00070000 -} - -enum : DWORD { - SHTDN_REASON_MINOR_OTHER, - SHTDN_REASON_MINOR_MAINTENANCE, - SHTDN_REASON_MINOR_INSTALLATION, - SHTDN_REASON_MINOR_UPGRADE, - SHTDN_REASON_MINOR_RECONFIG, - SHTDN_REASON_MINOR_HUNG, - SHTDN_REASON_MINOR_UNSTABLE, - SHTDN_REASON_MINOR_DISK, - SHTDN_REASON_MINOR_PROCESSOR, - SHTDN_REASON_MINOR_NETWORKCARD, - SHTDN_REASON_MINOR_POWER_SUPPLY, - SHTDN_REASON_MINOR_CORDUNPLUGGED, - SHTDN_REASON_MINOR_ENVIRONMENT, - SHTDN_REASON_MINOR_HARDWARE_DRIVER, - SHTDN_REASON_MINOR_OTHERDRIVER, - SHTDN_REASON_MINOR_BLUESCREEN, - SHTDN_REASON_MINOR_SERVICEPACK, - SHTDN_REASON_MINOR_HOTFIX, - SHTDN_REASON_MINOR_SECURITYFIX, - SHTDN_REASON_MINOR_SECURITY, - SHTDN_REASON_MINOR_NETWORK_CONNECTIVITY, - SHTDN_REASON_MINOR_WMI, - SHTDN_REASON_MINOR_SERVICEPACK_UNINSTALL, - SHTDN_REASON_MINOR_HOTFIX_UNINSTALL, - SHTDN_REASON_MINOR_SECURITYFIX_UNINSTALL, - SHTDN_REASON_MINOR_MMC, // = 0x00000019 - SHTDN_REASON_MINOR_TERMSRV = 0x00000020 -} - -enum : DWORD { - SHTDN_REASON_FLAG_USER_DEFINED = 0x40000000, - SHTDN_REASON_FLAG_PLANNED = 0x80000000 -} diff --git a/3rdparty-extra/win32/regstr.d b/3rdparty-extra/win32/regstr.d deleted file mode 100644 index 8d91cd3f3..000000000 --- a/3rdparty-extra/win32/regstr.d +++ /dev/null @@ -1,817 +0,0 @@ -/***********************************************************************\ -* regstr.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.regstr; -version(Windows): - -// TODO: fix possible conflict with shloj. Sort out NEC_98 issue. - -private import win32.windef; - -const REGSTR_MAX_VALUE_LENGTH = 256; - -enum { - IT_COMPACT = 0, - IT_TYPICAL, - IT_PORTABLE, - IT_CUSTOM // = 3 -} - -const DOSOPTGF_DEFCLEAN = 1; - -const DOSOPTF_DEFAULT = 0x01; -const DOSOPTF_SUPPORTED = 0x02; -const DOSOPTF_ALWAYSUSE = 0x04; -const DOSOPTF_USESPMODE = 0x08; -const DOSOPTF_PROVIDESUMB = 0x10; -const DOSOPTF_NEEDSETUP = 0x20; -const DOSOPTF_INDOSSTART = 0x40; -const DOSOPTF_MULTIPLE = 0x80; - -const SUF_FIRSTTIME = 0x0001; -const SUF_EXPRESS = 0x0002; -const SUF_BATCHINF = 0x0004; -const SUF_CLEAN = 0x0008; -const SUF_INSETUP = 0x0010; -const SUF_NETSETUP = 0x0020; -const SUF_NETHDBOOT = 0x0040; -const SUF_NETRPLBOOT = 0x0080; -const SUF_SBSCOPYOK = 0x0100; - -const VPDF_DISABLEPWRMGMT = 1; -const VPDF_FORCEAPM10MODE = 2; -const VPDF_SKIPINTELSLCHECK = 4; -const VPDF_DISABLEPWRSTATUSPOLL = 8; - -const PCMCIA_OPT_HAVE_SOCKET = 0x01; -const PCMCIA_OPT_AUTOMEM = 0x04; -const PCMCIA_OPT_NO_SOUND = 0x08; -const PCMCIA_OPT_NO_AUDIO = 0x10; -const PCMCIA_OPT_NO_APMREMOVE = 0x20; - -const PCMCIA_DEF_MEMBEGIN = 0x0C0000; -const PCMCIA_DEF_MEMEND = 0xFFFFFF; -const PCMCIA_DEF_MEMLEN = 0x001000; -const PCMCIA_DEF_MIN_REGION = 0x010000; - -enum { - PCI_OPTIONS_USE_BIOS = 1, - PCI_OPTIONS_USE_IRQ_STEERING = 2 -} - -const PCI_FLAG_NO_VIDEO_IRQ = 0x0001; -const PCI_FLAG_PCMCIA_WANT_IRQ = 0x0002; -const PCI_FLAG_DUAL_IDE = 0x0004; -const PCI_FLAG_NO_ENUM_AT_ALL = 0x0008; -const PCI_FLAG_ENUM_NO_RESOURCE = 0x0010; -const PCI_FLAG_NEED_DWORD_ACCESS = 0x0020; -const PCI_FLAG_SINGLE_FUNCTION = 0x0040; -const PCI_FLAG_ALWAYS_ENABLED = 0x0080; -const PCI_FLAG_IS_IDE = 0x0100; -const PCI_FLAG_IS_VIDEO = 0x0200; -const PCI_FLAG_FAIL_START = 0x0400; - -const size_t REGSTR_VAL_MAX_HCID_LEN = 1024; - -const REGDF_NOTDETIO = 0x00000001; -const REGDF_NOTDETMEM = 0x00000002; -const REGDF_NOTDETIRQ = 0x00000004; -const REGDF_NOTDETDMA = 0x00000008; -const REGDF_NOTDETALL = REGDF_NOTDETIO | REGDF_NOTDETMEM | REGDF_NOTDETIRQ | REGDF_NOTDETDMA; -const REGDF_NEEDFULLCONFIG = 0x00000010; -const REGDF_GENFORCEDCONFIG = 0x00000020; -const REGDF_NODETCONFIG = 0x00008000; -const REGDF_CONFLICTIO = 0x00010000; -const REGDF_CONFLICTMEM = 0x00020000; -const REGDF_CONFLICTIRQ = 0x00040000; -const REGDF_CONFLICTDMA = 0x00080000; -const REGDF_CONFLICTALL = REGDF_CONFLICTIO | REGDF_CONFLICTMEM | REGDF_CONFLICTIRQ | REGDF_CONFLICTDMA; -const REGDF_MAPIRQ2TO9 = 0x00100000; -const REGDF_NOTVERIFIED = 0x80000000; - -const CONFIGFLAG_DISABLED = 0x0001; -const CONFIGFLAG_REMOVED = 0x0002; -const CONFIGFLAG_MANUAL_INSTALL = 0x0004; -const CONFIGFLAG_IGNORE_BOOT_LC = 0x0008; -const CONFIGFLAG_NET_BOOT = 0x0010; -const CONFIGFLAG_REINSTALL = 0x0020; -const CONFIGFLAG_FAILEDINSTALL = 0x0040; -const CONFIGFLAG_CANTSTOPACHILD = 0x0080; -const CONFIGFLAG_OKREMOVEROM = 0x0100; -const CONFIGFLAG_NOREMOVEEXIT = 0x0200; - -const CSCONFIGFLAG_DISABLED = 1; -const CSCONFIGFLAG_DO_NOT_CREATE = 2; -const CSCONFIGFLAG_DO_NOT_START = 4; -const CSCONFIGFLAG_BITS = 7; - -const DMSTATEFLAG_APPLYTOALL = 1; - -const NUM_RESOURCE_MAP = 256; - -const MF_FLAGS_EVEN_IF_NO_RESOURCE = 1; -const MF_FLAGS_NO_CREATE_IF_NO_RESOURCE = 2; -const MF_FLAGS_FILL_IN_UNKNOWN_RESOURCE = 4; -const MF_FLAGS_CREATE_BUT_NO_SHOW_DISABLED = 8; - -const EISAFLAG_NO_IO_MERGE = 1; -const EISAFLAG_SLOT_IO_FIRST = 2; - -const EISA_NO_MAX_FUNCTION = 0xFF; - -const NUM_EISA_RANGES = 4; - -const APMMENUSUSPEND_DISABLED = 0; -const APMMENUSUSPEND_ENABLED = 1; -const APMMENUSUSPEND_UNDOCKED = 2; -const APMMENUSUSPEND_NOCHANGE = 128; - -//#ifndef NEC_98 -const TCHAR[] - REGSTR_KEY_ISAENUM = "ISAPnP", - REGSTR_KEY_EISAENUM = "EISA", - REGSTR_VAL_EISA_RANGES = "EISARanges", - REGSTR_VAL_EISA_FUNCTIONS = "EISAFunctions", - REGSTR_VAL_EISA_FUNCTIONS_MASK = "EISAFunctionsMask", - REGSTR_VAL_EISA_FLAGS = "EISAFlags", - REGSTR_VAL_EISA_SIMULATE_INT15 = "EISASimulateInt15"; -// #else -// #define REGSTR_KEY_ISAENUM TEXT("C98PnP") -// #define REGSTR_KEY_EISAENUM TEXT("NESA") -// #define REGSTR_VAL_EISA_RANGES TEXT("NESARanges") -// #define REGSTR_VAL_EISA_FUNCTIONS TEXT("NESAFunctions") -// #define REGSTR_VAL_EISA_FUNCTIONS_MASK TEXT("NESAFunctionsMask") -// #define REGSTR_VAL_EISA_FLAGS TEXT("NESAFlags") -// #define REGSTR_VAL_EISA_SIMULATE_INT15 TEXT("NESASimulateInt15") -// #endif - -const TCHAR[] - REGSTR_KEY_CLASS = `Class`, - REGSTR_KEY_CONFIG = `Config`, - REGSTR_KEY_ENUM = `Enum`, - REGSTR_KEY_ROOTENUM = `Root`, - REGSTR_KEY_BIOSENUM = `BIOS`, - REGSTR_KEY_PCMCIAENUM = `PCMCIA`, - REGSTR_KEY_PCIENUM = `PCI`, - REGSTR_KEY_LOGCONFIG = `LogConfig`, - REGSTR_KEY_SYSTEMBOARD = `*PNP0C01`, - REGSTR_KEY_APM = `*PNP0C05`, - REGSTR_KEY_INIUPDATE = `IniUpdate`, - REG_KEY_INSTDEV = `Installed`, - REGSTR_KEY_DOSOPTCDROM = `CD-ROM`, - REGSTR_KEY_DOSOPTMOUSE = `MOUSE`, - REGSTR_DEFAULT_INSTANCE = `0000`, - REGSTR_PATH_MOTHERBOARD = REGSTR_KEY_SYSTEMBOARD ~ `\` ~ REGSTR_DEFAULT_INSTANCE, - REGSTR_PATH_SETUP = `Software\Microsoft\Windows\CurrentVersion`, - REGSTR_PATH_PIFCONVERT = `Software\Microsoft\Windows\CurrentVersion\PIFConvert`, - REGSTR_PATH_MSDOSOPTS = `Software\Microsoft\Windows\CurrentVersion\MS-DOSOptions`, - REGSTR_PATH_MSDOSEMU = `Software\Microsoft\Windows\CurrentVersion\MS-DOS Emulation`, - REGSTR_PATH_NEWDOSBOX = `Software\Microsoft\Windows\CurrentVersion\MS-DOS Emulation\AppCompat`, - REGSTR_PATH_RUNONCE = `Software\Microsoft\Windows\CurrentVersion\RunOnce`, - REGSTR_PATH_RUN = `Software\Microsoft\Windows\CurrentVersion\Run`, - REGSTR_PATH_RUNSERVICESONCE = `Software\Microsoft\Windows\CurrentVersion\RunServicesOnce`, - REGSTR_PATH_RUNSERVICES = `Software\Microsoft\Windows\CurrentVersion\RunServices`, - -//#ifndef REGSTR_PATH_EXPLORER /* also in shlobj.h */ - REGSTR_PATH_EXPLORER = `Software\Microsoft\Windows\CurrentVersion\Explorer`, -//#endif - - REGSTR_PATH_DETECT = `Software\Microsoft\Windows\CurrentVersion\Detect`, - REGSTR_PATH_APPPATHS = `Software\Microsoft\Windows\CurrentVersion\App Paths`, - REGSTR_PATH_UNINSTALL = `Software\Microsoft\Windows\CurrentVersion\Uninstall`, - REGSTR_PATH_REALMODENET = `Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net`, - REGSTR_PATH_NETEQUIV = `Software\Microsoft\Windows\CurrentVersion\Network\Equivalent`, - REGSTR_PATH_CVNETWORK = `Software\Microsoft\Windows\CurrentVersion\Network`, - REGSTR_PATH_IDCONFIGDB = `System\CurrentControlSet\Control\IDConfigDB`, - REGSTR_PATH_CLASS = `System\CurrentControlSet\Services\Class`, - REGSTR_PATH_DISPLAYSETTINGS = `Display\Settings`, - REGSTR_PATH_FONTS = `Display\Fonts`, - REGSTR_PATH_ENUM = `Enum`, - REGSTR_PATH_ROOT = `Enum\Root`, - REGSTR_PATH_SERVICES = `System\CurrentControlSet\Services`, - REGSTR_PATH_VXD = `System\CurrentControlSet\Services\VxD`, - REGSTR_PATH_IOS = `System\CurrentControlSet\Services\VxD\IOS`, - REGSTR_PATH_VMM = `System\CurrentControlSet\Services\VxD\VMM`, - REGSTR_PATH_VPOWERD = `System\CurrentControlSet\Services\VxD\VPOWERD`, - REGSTR_PATH_VNETSUP = `System\CurrentControlSet\Services\VxD\VNETSUP`, - REGSTR_PATH_NWREDIR = `System\CurrentControlSet\Services\VxD\NWREDIR`, - REGSTR_PATH_NCPSERVER = `System\CurrentControlSet\Services\NcpServer\Parameters`, - REGSTR_PATH_IOARB = `System\CurrentControlSet\Services\Arbitrators\IOArb`, - REGSTR_PATH_ADDRARB = `System\CurrentControlSet\Services\Arbitrators\AddrArb`, - REGSTR_PATH_DMAARB = `System\CurrentControlSet\Services\Arbitrators\DMAArb`, - REGSTR_PATH_IRQARB = `System\CurrentControlSet\Services\Arbitrators\IRQArb`, - REGSTR_PATH_CODEPAGE = `System\CurrentControlSet\Control\Nls\Codepage`, - REGSTR_PATH_FILESYSTEM = `System\CurrentControlSet\Control\FileSystem`, - REGSTR_PATH_FILESYSTEM_NOVOLTRACK = `System\CurrentControlSet\Control\FileSystem\NoVolTrack`, - REGSTR_PATH_CDFS = `System\CurrentControlSet\Control\FileSystem\CDFS`, - REGSTR_PATH_WINBOOT = `System\CurrentControlSet\Control\WinBoot`, - REGSTR_PATH_INSTALLEDFILES = `System\CurrentControlSet\Control\InstalledFiles`, - REGSTR_PATH_VMM32FILES = `System\CurrentControlSet\Control\VMM32Files`, - - REGSTR_VAL_BITSPERPIXEL = `BitsPerPixel`, - REGSTR_VAL_RESOLUTION = `Resolution`, - REGSTR_VAL_DPILOGICALX = `DPILogicalX`, - REGSTR_VAL_DPILOGICALY = `DPILogicalY`, - REGSTR_VAL_DPIPHYSICALX = `DPIPhysicalX`, - REGSTR_VAL_DPIPHYSICALY = `DPIPhysicalY`, - REGSTR_VAL_REFRESHRATE = `RefreshRate`, - REGSTR_VAL_DISPLAYFLAGS = `DisplayFlags`, - REGSTR_PATH_CONTROLPANEL = `Control Panel`, - REGSTR_PATH_CONTROLSFOLDER = `Software\Microsoft\Windows\CurrentVersion\Controls Folder`, - REGSTR_VAL_DOSCP = `OEMCP`, - REGSTR_VAL_WINCP = `ACP`, - REGSTR_PATH_DYNA_ENUM = `Config Manager\Enum`, - REGSTR_VAL_HARDWARE_KEY = `HardWareKey`, - REGSTR_VAL_ALLOCATION = `Allocation`, - REGSTR_VAL_PROBLEM = `Problem`, - REGSTR_VAL_STATUS = `Status`, - REGSTR_VAL_DONTUSEMEM = `DontAllocLastMem`, - REGSTR_VAL_SYSTEMROOT = `SystemRoot`, - REGSTR_VAL_BOOTCOUNT = `BootCount`, - REGSTR_VAL_REALNETSTART = `RealNetStart`, - REGSTR_VAL_MEDIA = `MediaPath`, - REGSTR_VAL_CONFIG = `ConfigPath`, - REGSTR_VAL_DEVICEPATH = `DevicePath`, - REGSTR_VAL_SRCPATH = `SourcePath`, - REGSTR_VAL_OLDWINDIR = `OldWinDir`, - REGSTR_VAL_SETUPFLAGS = `SetupFlags`, - REGSTR_VAL_REGOWNER = `RegisteredOwner`, - REGSTR_VAL_REGORGANIZATION = `RegisteredOrganization`, - REGSTR_VAL_LICENSINGINFO = `LicensingInfo`, - REGSTR_VAL_OLDMSDOSVER = `OldMSDOSVer`, - REGSTR_VAL_FIRSTINSTALLDATETIME = `FirstInstallDateTime`, - REGSTR_VAL_INSTALLTYPE = `InstallType`, - REGSTR_VAL_WRAPPER = `Wrapper`, - - REGSTR_KEY_SETUP = `\Setup`, - REGSTR_VAL_BOOTDIR = `BootDir`, - REGSTR_VAL_WINBOOTDIR = `WinbootDir`, - REGSTR_VAL_WINDIR = `WinDir`, - REGSTR_VAL_APPINSTPATH = `AppInstallPath`, - REGSTR_PATH_EBD = REGSTR_PATH_SETUP ~ REGSTR_KEY_SETUP ~ `\EBD`, - REGSTR_KEY_EBDFILESLOCAL = `EBDFilesLocale`, - REGSTR_KEY_EBDFILESKEYBOARD = `EBDFilesKeyboard`, - REGSTR_KEY_EBDAUTOEXECBATLOCAL = `EBDAutoexecBatLocale`, - REGSTR_KEY_EBDAUTOEXECBATKEYBOARD = `EBDAutoexecBatKeyboard`, - REGSTR_KEY_EBDCONFIGSYSLOCAL = `EBDConfigSysLocale`, - REGSTR_KEY_EBDCONFIGSYSKEYBOARD = `EBDConfigSysKeyboard`, - REGSTR_VAL_MSDOSMODE = `MSDOSMode`, - REGSTR_VAL_MSDOSMODEDISCARD = `Discard`, - REGSTR_VAL_DOSOPTGLOBALFLAGS = `GlobalFlags`, - REGSTR_VAL_DOSOPTFLAGS = `Flags`, - REGSTR_VAL_OPTORDER = `Order`, - REGSTR_VAL_CONFIGSYS = `Config.Sys`, - REGSTR_VAL_AUTOEXEC = `Autoexec.Bat`, - REGSTR_VAL_STDDOSOPTION = `StdOption`, - REGSTR_VAL_DOSOPTTIP = `TipText`, - - REGSTR_VAL_DOSPAGER = `DOSPager`, - REGSTR_VAL_VXDGROUPS = `VXDGroups`, - REGSTR_VAL_VPOWERDFLAGS = `Flags`, - - REGSTR_VAL_WORKGROUP = `Workgroup`, - REGSTR_VAL_DIRECTHOST = `DirectHost`, - REGSTR_VAL_FILESHARING = `FileSharing`, - REGSTR_VAL_PRINTSHARING = `PrintSharing`, - REGSTR_VAL_FIRSTNETDRIVE = `FirstNetworkDrive`, - REGSTR_VAL_MAXCONNECTIONS = `MaxConnections`, - REGSTR_VAL_APISUPPORT = `APISupport`, - REGSTR_VAL_MAXRETRY = `MaxRetry`, - REGSTR_VAL_MINRETRY = `MinRetry`, - REGSTR_VAL_SUPPORTLFN = `SupportLFN`, - REGSTR_VAL_SUPPORTBURST = `SupportBurst`, - REGSTR_VAL_SUPPORTTUNNELLING = `SupportTunnelling`, - REGSTR_VAL_FULLTRACE = `FullTrace`, - REGSTR_VAL_READCACHING = `ReadCaching`, - REGSTR_VAL_SHOWDOTS = `ShowDots`, - REGSTR_VAL_GAPTIME = `GapTime`, - REGSTR_VAL_SEARCHMODE = `SearchMode`, - REGSTR_VAL_SHELLVERSION = `ShellVersion`, - REGSTR_VAL_MAXLIP = `MaxLIP`, - REGSTR_VAL_PRESERVECASE = `PreserveCase`, - REGSTR_VAL_OPTIMIZESFN = `OptimizeSFN`, - REGSTR_VAL_NCP_BROWSEMASTER = `BrowseMaster`, - REGSTR_VAL_NCP_USEPEERBROWSING = `Use_PeerBrowsing`, - REGSTR_VAL_NCP_USESAP = `Use_Sap`, - REGSTR_VAL_WIN31FILESYSTEM = `Win31FileSystem`, - REGSTR_VAL_PRESERVELONGNAMES = `PreserveLongNames`, - REGSTR_VAL_DRIVEWRITEBEHIND = `DriveWriteBehind`, - REGSTR_VAL_ASYNCFILECOMMIT = `AsyncFileCommit`, - REGSTR_VAL_PATHCACHECOUNT = `PathCache`, - REGSTR_VAL_NAMECACHECOUNT = `NameCache`, - REGSTR_VAL_CONTIGFILEALLOC = `ContigFileAllocSize`, - REGSTR_VAL_VOLIDLETIMEOUT = `VolumeIdleTimeout`, - REGSTR_VAL_BUFFIDLETIMEOUT = `BufferIdleTimeout`, - REGSTR_VAL_BUFFAGETIMEOUT = `BufferAgeTimeout`, - REGSTR_VAL_NAMENUMERICTAIL = `NameNumericTail`, - REGSTR_VAL_READAHEADTHRESHOLD = `ReadAheadThreshold`, - REGSTR_VAL_DOUBLEBUFFER = `DoubleBuffer`, - REGSTR_VAL_SOFTCOMPATMODE = `SoftCompatMode`, - REGSTR_VAL_DRIVESPINDOWN = `DriveSpinDown`, - REGSTR_VAL_FORCEPMIO = `ForcePMIO`, - REGSTR_VAL_FORCERMIO = `ForceRMIO`, - REGSTR_VAL_LASTBOOTPMDRVS = `LastBootPMDrvs`, - REGSTR_VAL_VIRTUALHDIRQ = `VirtualHDIRQ`, - REGSTR_VAL_SRVNAMECACHECOUNT = `ServerNameCacheMax`, - REGSTR_VAL_SRVNAMECACHE = `ServerNameCache`, - REGSTR_VAL_SRVNAMECACHENETPROV = `ServerNameCacheNumNets`, - REGSTR_VAL_AUTOMOUNT = `AutoMountDrives`, - REGSTR_VAL_COMPRESSIONMETHOD = `CompressionAlgorithm`, - REGSTR_VAL_COMPRESSIONTHRESHOLD = `CompressionThreshold`, - REGSTR_VAL_CDCACHESIZE = `CacheSize`, - REGSTR_VAL_CDPREFETCH = `Prefetch`, - REGSTR_VAL_CDPREFETCHTAIL = `PrefetchTail`, - REGSTR_VAL_CDRAWCACHE = `RawCache`, - REGSTR_VAL_CDEXTERRORS = `ExtendedErrors`, - REGSTR_VAL_CDSVDSENSE = `SVDSense`, - REGSTR_VAL_CDSHOWVERSIONS = `ShowVersions`, - REGSTR_VAL_CDCOMPATNAMES = `MSCDEXCompatNames`, - REGSTR_VAL_CDNOREADAHEAD = `NoReadAhead`, - REGSTR_VAL_SCSI = `SCSI\`, - REGSTR_VAL_ESDI = `ESDI\`, - REGSTR_VAL_FLOP = `FLOP\`, - REGSTR_VAL_DISK = `GenDisk`, - REGSTR_VAL_CDROM = `GenCD`, - REGSTR_VAL_TAPE = `TAPE`, - REGSTR_VAL_SCANNER = `SCANNER`, - REGSTR_VAL_FLOPPY = `FLOPPY`, - REGSTR_VAL_SCSITID = `SCSITargetID`, - REGSTR_VAL_SCSILUN = `SCSILUN`, - REGSTR_VAL_REVLEVEL = `RevisionLevel`, - REGSTR_VAL_PRODUCTID = `ProductId`, - REGSTR_VAL_PRODUCTTYPE = `ProductType`, - REGSTR_VAL_DEVTYPE = `DeviceType`, - REGSTR_VAL_REMOVABLE = `Removable`, - REGSTR_VAL_CURDRVLET = `CurrentDriveLetterAssignment`, - REGSTR_VAL_USRDRVLET = `UserDriveLetterAssignment`, - REGSTR_VAL_SYNCDATAXFER = `SyncDataXfer`, - REGSTR_VAL_AUTOINSNOTE = `AutoInsertNotification`, - REGSTR_VAL_DISCONNECT = `Disconnect`, - REGSTR_VAL_INT13 = `Int13`, - REGSTR_VAL_PMODE_INT13 = `PModeInt13`, - REGSTR_VAL_USERSETTINGS = `AdapterSettings`, - REGSTR_VAL_NOIDE = `NoIDE`, - REGSTR_VAL_DISKCLASSNAME = `DiskDrive`, - REGSTR_VAL_CDROMCLASSNAME = `CDROM`, - REGSTR_VAL_FORCELOAD = `ForceLoadPD`, - REGSTR_VAL_FORCEFIFO = `ForceFIFO`, - REGSTR_VAL_FORCECL = `ForceChangeLine`, - REGSTR_VAL_NOUSECLASS = `NoUseClass`, - REGSTR_VAL_NOINSTALLCLASS = `NoInstallClass`, - REGSTR_VAL_NODISPLAYCLASS = `NoDisplayClass`, - REGSTR_VAL_SILENTINSTALL = `SilentInstall`, - REGSTR_KEY_PCMCIA_CLASS = `PCMCIA`, - REGSTR_KEY_SCSI_CLASS = `SCSIAdapter`, - REGSTR_KEY_PORTS_CLASS = `ports`, - REGSTR_KEY_MEDIA_CLASS = `MEDIA`, - REGSTR_KEY_DISPLAY_CLASS = `Display`, - REGSTR_KEY_KEYBOARD_CLASS = `Keyboard`, - REGSTR_KEY_MOUSE_CLASS = `Mouse`, - REGSTR_KEY_MONITOR_CLASS = `Monitor`, - REGSTR_VAL_PCMCIA_OPT = `Options`, - REGSTR_VAL_PCMCIA_MEM = `Memory`, - REGSTR_VAL_PCMCIA_ALLOC = `AllocMemWin`, - REGSTR_VAL_PCMCIA_ATAD = `ATADelay`, - REGSTR_VAL_PCMCIA_SIZ = `MinRegionSize`, - REGSTR_VAL_P1284MDL = `Model`, - REGSTR_VAL_P1284MFG = `Manufacturer`, - REGSTR_VAL_ISAPNP = `ISAPNP`, - REGSTR_VAL_ISAPNP_RDP_OVERRIDE = `RDPOverRide`, - REGSTR_VAL_PCI = `PCI`, - REGSTR_PCI_OPTIONS = `Options`, - REGSTR_PCI_DUAL_IDE = `PCIDualIDE`, - - REGSTR_KEY_CRASHES = `Crashes`, - REGSTR_KEY_DANGERS = `Dangers`, - REGSTR_KEY_DETMODVARS = `DetModVars`, - REGSTR_KEY_NDISINFO = `NDISInfo`, - REGSTR_VAL_PROTINIPATH = `ProtIniPath`, - REGSTR_VAL_RESOURCES = `Resources`, - REGSTR_VAL_CRASHFUNCS = `CrashFuncs`, - REGSTR_VAL_CLASS = `Class`, - REGSTR_VAL_DEVDESC = `DeviceDesc`, - REGSTR_VAL_BOOTCONFIG = `BootConfig`, - REGSTR_VAL_DETFUNC = `DetFunc`, - REGSTR_VAL_DETFLAGS = `DetFlags`, - REGSTR_VAL_COMPATIBLEIDS = `CompatibleIDs`, - REGSTR_VAL_DETCONFIG = `DetConfig`, - REGSTR_VAL_VERIFYKEY = `VerifyKey`, - REGSTR_VAL_COMINFO = `ComInfo`, - REGSTR_VAL_INFNAME = `InfName`, - REGSTR_VAL_CARDSPECIFIC = `CardSpecific`, - REGSTR_VAL_NETOSTYPE = `NetOSType`, - REGSTR_DATA_NETOS_NDIS = `NDIS`, - REGSTR_DATA_NETOS_ODI = `ODI`, - REGSTR_DATA_NETOS_IPX = `IPX`, - REGSTR_VAL_MFG = `Mfg`, - REGSTR_VAL_SCAN_ONLY_FIRST = `ScanOnlyFirstDrive`, - REGSTR_VAL_SHARE_IRQ = `ForceIRQSharing`, - REGSTR_VAL_NONSTANDARD_ATAPI = `NonStandardATAPI`, - REGSTR_VAL_IDE_FORCE_SERIALIZE = `ForceSerialization`, - REGSTR_VAL_HWREV = `HWRevision`, - REGSTR_VAL_ENABLEINTS = `EnableInts`, - - REGSTR_VAL_APMBIOSVER = `APMBiosVer`, - REGSTR_VAL_APMFLAGS = `APMFlags`, - REGSTR_VAL_SLSUPPORT = `SLSupport`, - REGSTR_VAL_MACHINETYPE = `MachineType`, - REGSTR_VAL_SETUPMACHINETYPE = `SetupMachineType`, - REGSTR_MACHTYPE_UNKNOWN = `Unknown`, - REGSTR_MACHTYPE_IBMPC = `IBM PC`, - REGSTR_MACHTYPE_IBMPCJR = `IBM PCjr`, - REGSTR_MACHTYPE_IBMPCCONV = `IBM PC Convertible`, - REGSTR_MACHTYPE_IBMPCXT = `IBM PC/XT`, - REGSTR_MACHTYPE_IBMPCXT_286 = `IBM PC/XT 286`, - REGSTR_MACHTYPE_IBMPCAT = `IBM PC/AT`, - REGSTR_MACHTYPE_IBMPS2_25 = `IBM PS/2-25`, - REGSTR_MACHTYPE_IBMPS2_30_286 = `IBM PS/2-30 286`, - REGSTR_MACHTYPE_IBMPS2_30 = `IBM PS/2-30`, - REGSTR_MACHTYPE_IBMPS2_50 = `IBM PS/2-50`, - REGSTR_MACHTYPE_IBMPS2_50Z = `IBM PS/2-50Z`, - REGSTR_MACHTYPE_IBMPS2_55SX = `IBM PS/2-55SX`, - REGSTR_MACHTYPE_IBMPS2_60 = `IBM PS/2-60`, - REGSTR_MACHTYPE_IBMPS2_65SX = `IBM PS/2-65SX`, - REGSTR_MACHTYPE_IBMPS2_70 = `IBM PS/2-70`, - REGSTR_MACHTYPE_IBMPS2_P70 = `IBM PS/2-P70`, - REGSTR_MACHTYPE_IBMPS2_70_80 = `IBM PS/2-70/80`, - REGSTR_MACHTYPE_IBMPS2_80 = `IBM PS/2-80`, - REGSTR_MACHTYPE_IBMPS2_90 = `IBM PS/2-90`, - REGSTR_MACHTYPE_IBMPS1 = `IBM PS/1`, - REGSTR_MACHTYPE_PHOENIX_PCAT = `Phoenix PC/AT Compatible`, - REGSTR_MACHTYPE_HP_VECTRA = `HP Vectra`, - REGSTR_MACHTYPE_ATT_PC = `AT&T PC`, - REGSTR_MACHTYPE_ZENITH_PC = `Zenith PC`, - REGSTR_VAL_APMMENUSUSPEND = `APMMenuSuspend`, - - REGSTR_VAL_BUSTYPE = `BusType`, - REGSTR_VAL_CPU = `CPU`, - REGSTR_VAL_NDP = `NDP`, - REGSTR_VAL_PNPBIOSVER = `PnPBIOSVer`, - REGSTR_VAL_PNPSTRUCOFFSET = `PnPStrucOffset`, - REGSTR_VAL_PCIBIOSVER = `PCIBIOSVer`, - REGSTR_VAL_HWMECHANISM = `HWMechanism`, - REGSTR_VAL_LASTPCIBUSNUM = `LastPCIBusNum`, - REGSTR_VAL_CONVMEM = `ConvMem`, - REGSTR_VAL_EXTMEM = `ExtMem`, - REGSTR_VAL_COMPUTERNAME = `ComputerName`, - REGSTR_VAL_BIOSNAME = `BIOSName`, - REGSTR_VAL_BIOSVERSION = `BIOSVersion`, - REGSTR_VAL_BIOSDATE = `BIOSDate`, - REGSTR_VAL_MODEL = `Model`, - REGSTR_VAL_SUBMODEL = `Submodel`, - REGSTR_VAL_REVISION = `Revision`, - REGSTR_VAL_FIFODEPTH = `FIFODepth`, - REGSTR_VAL_RDINTTHRESHOLD = `RDIntThreshold`, - REGSTR_VAL_WRINTTHRESHOLD = `WRIntThreshold`, - REGSTR_VAL_PRIORITY = `Priority`, - REGSTR_VAL_DRIVER = `Driver`, - REGSTR_VAL_FUNCDESC = `FunctionDesc`, - REGSTR_VAL_FORCEDCONFIG = `ForcedConfig`, - REGSTR_VAL_CONFIGFLAGS = `ConfigFlags`, - REGSTR_VAL_CSCONFIGFLAGS = `CSConfigFlags`, - - REGSTR_VAL_ROOT_DEVNODE = `HTREE\ROOT\0`, - REGSTR_VAL_RESERVED_DEVNODE = `HTREE\RESERVED\0`, - REGSTR_PATH_READDATAPORT = REGSTR_KEY_ISAENUM ~ `\ReadDataPort\0`, - REGSTR_PATH_MULTI_FUNCTION = `MF`, - REGSTR_VAL_RESOURCE_MAP = `ResourceMap`, - REGSTR_PATH_CHILD_PREFIX = `Child`, - REGSTR_VAL_MF_FLAGS = `MFFlags`, - REGSTR_VAL_DRVDESC = `DriverDesc`, - REGSTR_VAL_DEVLOADER = `DevLoader`, - REGSTR_VAL_STATICVXD = `StaticVxD`, - REGSTR_VAL_PROPERTIES = `Properties`, - REGSTR_VAL_MANUFACTURER = `Manufacturer`, - REGSTR_VAL_EXISTS = `Exists`, - REGSTR_VAL_CMENUMFLAGS = `CMEnumFlags`, - REGSTR_VAL_CMDRIVFLAGS = `CMDrivFlags`, - REGSTR_VAL_ENUMERATOR = `Enumerator`, - REGSTR_VAL_DEVICEDRIVER = `DeviceDriver`, - REGSTR_VAL_PORTNAME = `PortName`, - REGSTR_VAL_INFPATH = `InfPath`, - REGSTR_VAL_INFSECTION = `InfSection`, - REGSTR_VAL_POLLING = `Polling`, - REGSTR_VAL_DONTLOADIFCONFLICT = `DontLoadIfConflict`, - REGSTR_VAL_PORTSUBCLASS = `PortSubClass`, - REGSTR_VAL_NETCLEAN = `NetClean`, - REGSTR_VAL_IDE_NO_SERIALIZE = `IDENoSerialize`, - REGSTR_VAL_NOCMOSORFDPT = `NoCMOSorFDPT`, - REGSTR_VAL_COMVERIFYBASE = `COMVerifyBase`, - REGSTR_KEY_OVERRIDE = `Override`, - REGSTR_VAL_CONFIGMG = `CONFIGMG`, - REGSTR_VAL_SYSDM = `SysDM`, - REGSTR_VAL_SYSDMFUNC = `SysDMFunc`, - REGSTR_VAL_PRIVATE = `Private`, - REGSTR_VAL_PRIVATEFUNC = `PrivateFunc`, - REGSTR_VAL_DETECT = `Detect`, - REGSTR_VAL_DETECTFUNC = `DetectFunc`, - REGSTR_VAL_ASKFORCONFIG = `AskForConfig`, - REGSTR_VAL_ASKFORCONFIGFUNC = `AskForConfigFunc`, - REGSTR_VAL_WAITFORUNDOCK = `WaitForUndock`, - REGSTR_VAL_WAITFORUNDOCKFUNC = `WaitForUndockFunc`, - REGSTR_VAL_REMOVEROMOKAY = `RemoveRomOkay`, - REGSTR_VAL_REMOVEROMOKAYFUNC = `RemoveRomOkayFunc`, - REGSTR_VAL_CURCONFIG = `CurrentConfig`, - REGSTR_VAL_FRIENDLYNAME = `FriendlyName`, - REGSTR_VAL_CURRENTCONFIG = `CurrentConfig`, - REGSTR_VAL_MAP = `Map`, - REGSTR_VAL_ID = `CurrentID`, - REGSTR_VAL_DOCKED = `CurrentDockedState`, - REGSTR_VAL_CHECKSUM = `CurrentChecksum`, - REGSTR_VAL_HWDETECT = `HardwareDetect`, - REGSTR_VAL_INHIBITRESULTS = `InhibitResults`, - REGSTR_VAL_PROFILEFLAGS = `ProfileFlags`, - REGSTR_KEY_PCMCIA = `PCMCIA\`, - REGSTR_KEY_PCUNKNOWN = `UNKNOWN_MANUFACTURER`, - REGSTR_VAL_PCSSDRIVER = `Driver`, - REGSTR_KEY_PCMTD = `MTD-`, - REGSTR_VAL_PCMTDRIVER = `MTD`, - REGSTR_VAL_HARDWAREID = `HardwareID`, - REGSTR_VAL_INSTALLER = `Installer`, - REGSTR_VAL_INSICON = `Icon`, - REGSTR_VAL_ENUMPROPPAGES = `EnumPropPages`, - REGSTR_VAL_BASICPROPERTIES = `BasicProperties`, - REGSTR_VAL_PRIVATEPROBLEM = `PrivateProblem`, - REGSTR_KEY_CURRENT = `Current`, - REGSTR_KEY_DEFAULT = `Default`, - REGSTR_KEY_MODES = `Modes`, - REGSTR_VAL_MODE = `Mode`, - REGSTR_VAL_BPP = `BPP`, - REGSTR_VAL_HRES = `HRes`, - REGSTR_VAL_VRES = `VRes`, - REGSTR_VAL_FONTSIZE = `FontSize`, - REGSTR_VAL_DRV = `drv`, - REGSTR_VAL_GRB = `grb`, - REGSTR_VAL_VDD = `vdd`, - REGSTR_VAL_VER = `Ver`, - REGSTR_VAL_MAXRES = `MaxResolution`, - REGSTR_VAL_DPMS = `DPMS`, - REGSTR_VAL_RESUMERESET = `ResumeReset`, - REGSTR_VAL_DESCRIPTION = `Description`, - REGSTR_KEY_SYSTEM = `System`, - REGSTR_KEY_USER = `User`, - REGSTR_VAL_DPI = `dpi`, - REGSTR_VAL_PCICOPTIONS = `PCICOptions`, - - REGSTR_VAL_PCICIRQMAP = `PCICIRQMap`, - REGSTR_PATH_APPEARANCE = `Control Panel\Appearance`, - REGSTR_PATH_LOOKSCHEMES = `Control Panel\Appearance\Schemes`, - REGSTR_VAL_CUSTOMCOLORS = `CustomColors`, - REGSTR_PATH_SCREENSAVE = `Control Panel\Desktop`, - REGSTR_VALUE_USESCRPASSWORD = `ScreenSaveUsePassword`, - REGSTR_VALUE_SCRPASSWORD = `ScreenSave_Data`, - REGSTR_VALUE_LOWPOWERTIMEOUT = `ScreenSaveLowPowerTimeout`, - REGSTR_VALUE_POWEROFFTIMEOUT = `ScreenSavePowerOffTimeout`, - REGSTR_VALUE_LOWPOWERACTIVE = `ScreenSaveLowPowerActive`, - REGSTR_VALUE_POWEROFFACTIVE = `ScreenSavePowerOffActive`, - REGSTR_PATH_WINDOWSAPPLETS = `Software\Microsoft\Windows\CurrentVersion\Applets`, - REGSTR_PATH_SYSTRAY = `Software\Microsoft\Windows\CurrentVersion\Applets\SysTray`, - REGSTR_VAL_SYSTRAYSVCS = `Services`, - REGSTR_VAL_SYSTRAYBATFLAGS = `PowerFlags`, - REGSTR_VAL_SYSTRAYPCCARDFLAGS = `PCMCIAFlags`, - REGSTR_PATH_NETWORK_USERSETTINGS = `Network`, - REGSTR_KEY_NETWORK_PERSISTENT = `\Persistent`, - REGSTR_KEY_NETWORK_RECENT = `\Recent`, - REGSTR_VAL_REMOTE_PATH = `RemotePath`, - REGSTR_VAL_USER_NAME = `UserName`, - REGSTR_VAL_PROVIDER_NAME = `ProviderName`, - REGSTR_VAL_CONNECTION_TYPE = `ConnectionType`, - REGSTR_VAL_UPGRADE = `Upgrade`, - REGSTR_KEY_LOGON = `\Logon`, - REGSTR_VAL_MUSTBEVALIDATED = `MustBeValidated`, - REGSTR_VAL_RUNLOGINSCRIPT = `ProcessLoginScript`, - REGSTR_KEY_NETWORKPROVIDER = `\NetworkProvider`, - REGSTR_PATH_NW32NETPROVIDER =REGSTR_PATH_SERVICES ~ `\NWNP32` ~ REGSTR_KEY_NETWORKPROVIDER, - REGSTR_PATH_MS32NETPROVIDER =REGSTR_PATH_SERVICES ~ `\MSNP32` ~ REGSTR_KEY_NETWORKPROVIDER, - REGSTR_VAL_AUTHENT_AGENT = `AuthenticatingAgent`, - REGSTR_VAL_PREFREDIR = `PreferredRedir`, - REGSTR_VAL_AUTOSTART = `AutoStart`, - REGSTR_VAL_AUTOLOGON = `AutoLogon`, - REGSTR_VAL_NETCARD = `Netcard`, - REGSTR_VAL_TRANSPORT = `Transport`, - REGSTR_VAL_DYNAMIC = `Dynamic`, - REGSTR_VAL_TRANSITION = `Transition`, - REGSTR_VAL_STATICDRIVE = `StaticDrive`, - REGSTR_VAL_LOADHI = `LoadHi`, - REGSTR_VAL_LOADRMDRIVERS = `LoadRMDrivers`, - REGSTR_VAL_SETUPN = `SetupN`, - REGSTR_VAL_SETUPNPATH = `SetupNPath`, - REGSTR_VAL_WRKGRP_FORCEMAPPING = `WrkgrpForceMapping`, - REGSTR_VAL_WRKGRP_REQUIRED = `WrkgrpRequired`, - REGSTR_PATH_CURRENT_CONTROL_SET = `System\CurrentControlSet\Control`, - REGSTR_VAL_CURRENT_USER = `Current User`, - REGSTR_PATH_PWDPROVIDER = `System\CurrentControlSet\Control\PwdProvider`, - REGSTR_VAL_PWDPROVIDER_PATH = `ProviderPath`, - REGSTR_VAL_PWDPROVIDER_DESC = `Description`, - REGSTR_VAL_PWDPROVIDER_CHANGEPWD = `ChangePassword`, - REGSTR_VAL_PWDPROVIDER_CHANGEPWDHWND = `ChangePasswordHwnd`, - REGSTR_VAL_PWDPROVIDER_GETPWDSTATUS = `GetPasswordStatus`, - REGSTR_VAL_PWDPROVIDER_ISNP = `NetworkProvider`, - REGSTR_VAL_PWDPROVIDER_CHANGEORDER = `ChangeOrder`, - REGSTR_PATH_POLICIES = `Software\Microsoft\Windows\CurrentVersion\Policies`, - REGSTR_PATH_UPDATE = `System\CurrentControlSet\Control\Update`, - REGSTR_VALUE_ENABLE = `Enable`, - REGSTR_VALUE_VERBOSE = `Verbose`, - REGSTR_VALUE_NETPATH = `NetworkPath`, - REGSTR_VALUE_DEFAULTLOC = `UseDefaultNetLocation`, - REGSTR_KEY_NETWORK = `Network`, -// [Redefined] REGSTR_KEY_SYSTEM = `System`) - REGSTR_KEY_PRINTERS = `Printers`, - REGSTR_KEY_WINOLDAPP = `WinOldApp`, - REGSTR_VAL_NOFILESHARING = `NoFileSharing`, - REGSTR_VAL_NOPRINTSHARING = `NoPrintSharing`, - REGSTR_VAL_NOFILESHARINGCTRL = `NoFileSharingControl`, - REGSTR_VAL_NOPRINTSHARINGCTRL = `NoPrintSharingControl`, - REGSTR_VAL_HIDESHAREPWDS = `HideSharePwds`, - REGSTR_VAL_DISABLEPWDCACHING = `DisablePwdCaching`, - REGSTR_VAL_ALPHANUMPWDS = `AlphanumPwds`, - REGSTR_VAL_NETSETUP_DISABLE = `NoNetSetup`, - REGSTR_VAL_NETSETUP_NOCONFIGPAGE = `NoNetSetupConfigPage`, - REGSTR_VAL_NETSETUP_NOIDPAGE = `NoNetSetupIDPage`, - REGSTR_VAL_NETSETUP_NOSECURITYPAGE = `NoNetSetupSecurityPage`, - REGSTR_VAL_SYSTEMCPL_NOVIRTMEMPAGE = `NoVirtMemPage`, - REGSTR_VAL_SYSTEMCPL_NODEVMGRPAGE = `NoDevMgrPage`, - REGSTR_VAL_SYSTEMCPL_NOCONFIGPAGE = `NoConfigPage`, - REGSTR_VAL_SYSTEMCPL_NOFILESYSPAGE = `NoFileSysPage`, - REGSTR_VAL_DISPCPL_NODISPCPL = `NoDispCPL`, - REGSTR_VAL_DISPCPL_NOBACKGROUNDPAGE = `NoDispBackgroundPage`, - REGSTR_VAL_DISPCPL_NOSCRSAVPAGE = `NoDispScrSavPage`, - REGSTR_VAL_DISPCPL_NOAPPEARANCEPAGE = `NoDispAppearancePage`, - REGSTR_VAL_DISPCPL_NOSETTINGSPAGE = `NoDispSettingsPage`, - REGSTR_VAL_SECCPL_NOSECCPL = `NoSecCPL`, - REGSTR_VAL_SECCPL_NOPWDPAGE = `NoPwdPage`, - REGSTR_VAL_SECCPL_NOADMINPAGE = `NoAdminPage`, - REGSTR_VAL_SECCPL_NOPROFILEPAGE = `NoProfilePage`, - REGSTR_VAL_PRINTERS_HIDETABS = `NoPrinterTabs`, - REGSTR_VAL_PRINTERS_NODELETE = `NoDeletePrinter`, - REGSTR_VAL_PRINTERS_NOADD = `NoAddPrinter`, - REGSTR_VAL_WINOLDAPP_DISABLED = `Disabled`, - REGSTR_VAL_WINOLDAPP_NOREALMODE = `NoRealMode`, - REGSTR_VAL_NOENTIRENETWORK = `NoEntireNetwork`, - REGSTR_VAL_NOWORKGROUPCONTENTS = `NoWorkgroupContents`, - REGSTR_VAL_MINPWDLEN = `MinPwdLen`, - REGSTR_VAL_PWDEXPIRATION = `PwdExpiration`, - REGSTR_VAL_WIN31PROVIDER = `Win31Provider`, - REGSTR_VAL_DISABLEREGTOOLS = `DisableRegistryTools`, - REGSTR_PATH_WINLOGON = `Software\Microsoft\Windows\CurrentVersion\Winlogon`, - REGSTR_VAL_LEGALNOTICECAPTION = `LegalNoticeCaption`, - REGSTR_VAL_LEGALNOTICETEXT = `LegalNoticeText`, - REGSTR_VAL_RESTRICTRUN = `RestrictRun`, - REGSTR_KEY_POL_USERS = `Users`, - REGSTR_KEY_POL_COMPUTERS = `Computers`, - REGSTR_KEY_POL_USERGROUPS = `UserGroups`, - REGSTR_KEY_POL_DEFAULT = `.default`, - REGSTR_KEY_POL_USERGROUPDATA = `GroupData\UserGroups\Priority`, - REGSTR_PATH_TIMEZONE = `System\CurrentControlSet\Control\TimeZoneInformation`, - REGSTR_VAL_TZBIAS = `Bias`, - REGSTR_VAL_TZDLTBIAS = `DaylightBias`, - REGSTR_VAL_TZSTDBIAS = `StandardBias`, - REGSTR_VAL_TZACTBIAS = `ActiveTimeBias`, - REGSTR_VAL_TZDLTFLAG = `DaylightFlag`, - REGSTR_VAL_TZSTDSTART = `StandardStart`, - REGSTR_VAL_TZDLTSTART = `DaylightStart`, - REGSTR_VAL_TZDLTNAME = `DaylightName`, - REGSTR_VAL_TZSTDNAME = `StandardName`, - REGSTR_VAL_TZNOCHANGESTART = `NoChangeStart`, - REGSTR_VAL_TZNOCHANGEEND = `NoChangeEnd`, - REGSTR_VAL_TZNOAUTOTIME = `DisableAutoDaylightTimeSet`, - REGSTR_PATH_FLOATINGPOINTPROCESSOR = `HARDWARE\DESCRIPTION\System\FloatingPointProcessor`, - REGSTR_PATH_FLOATINGPOINTPROCESSOR0 = `HARDWARE\DESCRIPTION\System\FloatingPointProcessor\0`, - REGSTR_PATH_COMPUTRNAME = `System\CurrentControlSet\Control\ComputerName\ComputerName`, - REGSTR_VAL_COMPUTRNAME = `ComputerName`, - REGSTR_PATH_SHUTDOWN = `System\CurrentControlSet\Control\Shutdown`, - REGSTR_VAL_FORCEREBOOT = `ForceReboot`, - REGSTR_VAL_SETUPPROGRAMRAN = `SetupProgramRan`, - REGSTR_VAL_DOES_POLLING = `PollingSupportNeeded`, - REGSTR_PATH_KNOWNDLLS = `System\CurrentControlSet\Control\SessionManager\KnownDLLs`, - REGSTR_PATH_KNOWN16DLLS = `System\CurrentControlSet\Control\SessionManager\Known16DLLs`, - REGSTR_PATH_CHECKVERDLLS = `System\CurrentControlSet\Control\SessionManager\CheckVerDLLs`, - REGSTR_PATH_WARNVERDLLS = `System\CurrentControlSet\Control\SessionManager\WarnVerDLLs`, - REGSTR_PATH_HACKINIFILE = `System\CurrentControlSet\Control\SessionManager\HackIniFiles`, - REGSTR_PATH_CHECKBADAPPS = `System\CurrentControlSet\Control\SessionManager\CheckBadApps`, - REGSTR_PATH_APPPATCH = `System\CurrentControlSet\Control\SessionManager\AppPatches`, - REGSTR_PATH_KNOWNVXDS = `System\CurrentControlSet\Control\SessionManager\KnownVxDs`, - REGSTR_VAL_UNINSTALLER_DISPLAYNAME = `DisplayName`, - REGSTR_VAL_UNINSTALLER_COMMANDLINE = `UninstallString`, - REGSTR_PATH_DESKTOP = REGSTR_PATH_SCREENSAVE, - REGSTR_PATH_MOUSE = `Control Panel\Mouse`, - REGSTR_PATH_KEYBOARD = `Control Panel\Keyboard`, - REGSTR_PATH_COLORS = `Control Panel\Colors`, - REGSTR_PATH_SOUND = `Control Panel\Sound`, - REGSTR_PATH_METRICS = `Control Panel\Desktop\WindowMetrics`, - REGSTR_PATH_ICONS = `Control Panel\Icons`, - REGSTR_PATH_CURSORS = `Control Panel\Cursors`, - REGSTR_PATH_CHECKDISK = `Software\Microsoft\Windows\CurrentVersion\Applets\Check Drive`, - REGSTR_PATH_CHECKDISKSET = `Settings`, - REGSTR_PATH_CHECKDISKUDRVS = `NoUnknownDDErrDrvs`, - REGSTR_PATH_FAULT = `Software\Microsoft\Windows\CurrentVersion\Fault`, - REGSTR_VAL_FAULT_LOGFILE = `LogFile`, - REGSTR_PATH_AEDEBUG = `Software\Microsoft\Windows NT\CurrentVersion\AeDebug`, - REGSTR_VAL_AEDEBUG_DEBUGGER = `Debugger`, - REGSTR_VAL_AEDEBUG_AUTO = `Auto`, - REGSTR_PATH_GRPCONV = `Software\Microsoft\Windows\CurrentVersion\GrpConv`, - REGSTR_VAL_REGITEMDELETEMESSAGE = `Removal Message`, - REGSTR_PATH_LASTCHECK = `Software\Microsoft\Windows\CurrentVersion\Explorer\LastCheck`, - REGSTR_PATH_LASTOPTIMIZE = `Software\Microsoft\Windows\CurrentVersion\Explorer\LastOptimize`, - REGSTR_PATH_LASTBACKUP = `Software\Microsoft\Windows\CurrentVersion\Explorer\LastBackup`, - REGSTR_PATH_CHKLASTCHECK = `Software\Microsoft\Windows\CurrentVersion\Applets\Check Drive\LastCheck`, - REGSTR_PATH_CHKLASTSURFAN = `Software\Microsoft\Windows\CurrentVersion\Applets\Check Drive\LastSurfaceAnalysis`, - REGSTR_KEY_SHARES = `Software\Microsoft\Windows\CurrentVersion\Network\LanMan`, - REGSTR_VAL_SHARES_FLAGS = `Flags`, - REGSTR_VAL_SHARES_TYPE = `Type`, - REGSTR_VAL_SHARES_PATH = `Path`, - REGSTR_VAL_SHARES_REMARK = `Remark`, - REGSTR_VAL_SHARES_RW_PASS = `Parm1`, - REGSTR_VAL_SHARES_RO_PASS = `Parm2`, - REGSTR_PATH_PRINT = `System\CurrentControlSet\Control\Print`, - REGSTR_PATH_PRINTERS = `System\CurrentControlSet\Control\Print\Printers`, - REGSTR_PATH_PROVIDERS = `System\CurrentControlSet\Control\Print\Providers`, - REGSTR_PATH_MONITORS = `System\CurrentControlSet\Control\Print\Monitors`, - REGSTR_PATH_ENVIRONMENTS = `System\CurrentControlSet\Control\Print\Environments`, - REGSTR_VAL_START_ON_BOOT = `StartOnBoot`, - REGSTR_VAL_PRINTERS_MASK = `PrintersMask`, - REGSTR_VAL_DOS_SPOOL_MASK = `DOSSpoolMask`, - REGSTR_KEY_CURRENT_ENV = `\Windows 4.0`, - REGSTR_KEY_DRIVERS = `\Drivers`, - REGSTR_KEY_PRINT_PROC = `\Print Processors`, - REGSTR_PATH_EVENTLABELS = `AppEvents\EventLabels`, - REGSTR_PATH_SCHEMES = `AppEvents\Schemes`, - REGSTR_PATH_APPS = REGSTR_PATH_SCHEMES ~ `\Apps`, - REGSTR_PATH_APPS_DEFAULT = REGSTR_PATH_SCHEMES ~ `\Apps\.Default`, - REGSTR_PATH_NAMES = REGSTR_PATH_SCHEMES ~ `\Names`, - REGSTR_PATH_MULTIMEDIA = REGSTR_PATH_SETUP ~ `\Multimedia`, - REGSTR_PATH_MULTIMEDIA_AUDIO = `Software\Microsoft\Multimedia\Audio`, - REGSTR_PATH_MEDIARESOURCES = REGSTR_PATH_CURRENT_CONTROL_SET ~ `\MediaResources`, - REGSTR_PATH_MEDIAPROPERTIES = REGSTR_PATH_CURRENT_CONTROL_SET ~ `\MediaProperties`, - REGSTR_PATH_PRIVATEPROPERTIES = REGSTR_PATH_MEDIAPROPERTIES ~ `\PrivateProperties`, - REGSTR_PATH_PUBLICPROPERTIES = REGSTR_PATH_MEDIAPROPERTIES ~ `\PublicProperties`, - REGSTR_PATH_JOYOEM = REGSTR_PATH_PRIVATEPROPERTIES ~ `\Joystick\OEM`, - REGSTR_PATH_JOYCONFIG = REGSTR_PATH_MEDIARESOURCES ~ `\Joystick`, - REGSTR_KEY_JOYCURR = `CurrentJoystickSettings`, - REGSTR_KEY_JOYSETTINGS = `JoystickSettings`, - REGSTR_VAL_JOYUSERVALUES = `JoystickUserValues`, - REGSTR_VAL_JOYCALLOUT = `JoystickCallout`, - REGSTR_VAL_JOYNCONFIG = `Joystick%dConfiguration`, - REGSTR_VAL_JOYNOEMNAME = `Joystick%dOEMName`, - REGSTR_VAL_JOYNOEMCALLOUT = `Joystick%dOEMCallout`, - REGSTR_VAL_JOYOEMCALLOUT = `OEMCallout`, - REGSTR_VAL_JOYOEMNAME = `OEMName`, - REGSTR_VAL_JOYOEMDATA = `OEMData`, - REGSTR_VAL_JOYOEMXYLABEL = `OEMXYLabel`, - REGSTR_VAL_JOYOEMZLABEL = `OEMZLabel`, - REGSTR_VAL_JOYOEMRLABEL = `OEMRLabel`, - REGSTR_VAL_JOYOEMPOVLABEL = `OEMPOVLabel`, - REGSTR_VAL_JOYOEMULABEL = `OEMULabel`, - REGSTR_VAL_JOYOEMVLABEL = `OEMVLabel`, - REGSTR_VAL_JOYOEMTESTMOVEDESC = `OEMTestMoveDesc`, - REGSTR_VAL_JOYOEMTESTBUTTONDESC = `OEMTestButtonDesc`, - REGSTR_VAL_JOYOEMTESTMOVECAP = `OEMTestMoveCap`, - REGSTR_VAL_JOYOEMTESTBUTTONCAP = `OEMTestButtonCap`, - REGSTR_VAL_JOYOEMTESTWINCAP = `OEMTestWinCap`, - REGSTR_VAL_JOYOEMCALCAP = `OEMCalCap`, - REGSTR_VAL_JOYOEMCALWINCAP = `OEMCalWinCap`, - REGSTR_VAL_JOYOEMCAL1 = `OEMCal1`, - REGSTR_VAL_JOYOEMCAL2 = `OEMCal2`, - REGSTR_VAL_JOYOEMCAL3 = `OEMCal3`, - REGSTR_VAL_JOYOEMCAL4 = `OEMCal4`, - REGSTR_VAL_JOYOEMCAL5 = `OEMCal5`, - REGSTR_VAL_JOYOEMCAL6 = `OEMCal6`, - REGSTR_VAL_JOYOEMCAL7 = `OEMCal7`, - REGSTR_VAL_JOYOEMCAL8 = `OEMCal8`, - REGSTR_VAL_JOYOEMCAL9 = `OEMCal9`, - REGSTR_VAL_JOYOEMCAL10 = `OEMCal10`, - REGSTR_VAL_JOYOEMCAL11 = `OEMCal11`, - REGSTR_VAL_JOYOEMCAL12 = `OEMCal12`; - -enum { - DTRESULTOK, - DTRESULTFIX, - DTRESULTPROB, - DTRESULTPART -} - -//#ifndef NEC_98 -const PCIC_DEFAULT_IRQMASK = 0x4EB8; -//#else -//#define PCIC_DEFAULT_IRQMASK 0x1468 -//#endif -const PCIC_DEFAULT_NUMSOCKETS = 0; - -struct DSKTLSYSTEMTIME { - WORD wYear; - WORD wMonth; - WORD wDayOfWeek; - WORD wDay; - WORD wHour; - WORD wMinute; - WORD wSecond; - WORD wMilliseconds; - WORD wResult; -} -alias DSKTLSYSTEMTIME* PDSKTLSYSTEMTIME, LPDSKTLSYSTEMTIME; diff --git a/3rdparty-extra/win32/richedit.d b/3rdparty-extra/win32/richedit.d deleted file mode 100644 index 839d4db35..000000000 --- a/3rdparty-extra/win32/richedit.d +++ /dev/null @@ -1,591 +0,0 @@ -/***********************************************************************\ -* richedit.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.richedit; -version(Windows): - -private import win32.windef, win32.winuser; -private import win32.wingdi; // for LF_FACESIZE - -align(4): - -version(Unicode) { - const wchar[] RICHEDIT_CLASS = "RichEdit20W"; -} else { - const char[] RICHEDIT_CLASS = "RichEdit20A"; -} - -const RICHEDIT_CLASS10A = "RICHEDIT"; - -const TCHAR[] - CF_RTF = "Rich Text Format", - CF_RTFNOOBJS = "Rich Text Format Without Objects", - CF_RETEXTOBJ = "RichEdit Text and Objects"; - -const DWORD - CFM_BOLD = 1, - CFM_ITALIC = 2, - CFM_UNDERLINE = 4, - CFM_STRIKEOUT = 8, - CFM_PROTECTED = 16, - CFM_LINK = 32, - CFM_SIZE = 0x80000000, - CFM_COLOR = 0x40000000, - CFM_FACE = 0x20000000, - CFM_OFFSET = 0x10000000, - CFM_CHARSET = 0x08000000, - CFM_SUBSCRIPT = 0x00030000, - CFM_SUPERSCRIPT = 0x00030000; - -const DWORD - CFE_BOLD = 1, - CFE_ITALIC = 2, - CFE_UNDERLINE = 4, - CFE_STRIKEOUT = 8, - CFE_PROTECTED = 16, - CFE_SUBSCRIPT = 0x00010000, - CFE_SUPERSCRIPT = 0x00020000, - CFE_AUTOCOLOR = 0x40000000; - -const CFM_EFFECTS = CFM_BOLD | CFM_ITALIC | CFM_UNDERLINE | CFM_COLOR - | CFM_STRIKEOUT | CFE_PROTECTED | CFM_LINK; - -// flags for EM_SETIMEOPTIONS -const LPARAM - IMF_FORCENONE = 1, - IMF_FORCEENABLE = 2, - IMF_FORCEDISABLE = 4, - IMF_CLOSESTATUSWINDOW = 8, - IMF_VERTICAL = 32, - IMF_FORCEACTIVE = 64, - IMF_FORCEINACTIVE = 128, - IMF_FORCEREMEMBER = 256; - -const SEL_EMPTY=0; -const SEL_TEXT=1; -const SEL_OBJECT=2; -const SEL_MULTICHAR=4; -const SEL_MULTIOBJECT=8; - -const MAX_TAB_STOPS=32; - -const PFM_ALIGNMENT=8; -const PFM_NUMBERING=32; -const PFM_OFFSET=4; -const PFM_OFFSETINDENT=0x80000000; -const PFM_RIGHTINDENT=2; -const PFM_STARTINDENT=1; -const PFM_TABSTOPS=16; -const PFM_BORDER=2048; -const PFM_LINESPACING=256; -const PFM_NUMBERINGSTART=32768; -const PFM_NUMBERINGSTYLE=8192; -const PFM_NUMBERINGTAB=16384; -const PFM_SHADING=4096; -const PFM_SPACEAFTER=128; -const PFM_SPACEBEFORE=64; -const PFM_STYLE=1024; -const PFM_DONOTHYPHEN=4194304; -const PFM_KEEP=131072; -const PFM_KEEPNEXT=262144; -const PFM_NOLINENUMBER=1048576; -const PFM_NOWIDOWCONTROL=2097152; -const PFM_PAGEBREAKBEFORE=524288; -const PFM_RTLPARA=65536; -const PFM_SIDEBYSIDE=8388608; -const PFM_TABLE=1073741824; -const PFN_BULLET=1; - -const PFE_DONOTHYPHEN=64; -const PFE_KEEP=2; -const PFE_KEEPNEXT=4; -const PFE_NOLINENUMBER=16; -const PFE_NOWIDOWCONTROL=32; -const PFE_PAGEBREAKBEFORE=8; -const PFE_RTLPARA=1; -const PFE_SIDEBYSIDE=128; -const PFE_TABLE=16384; -const PFA_LEFT=1; -const PFA_RIGHT=2; -const PFA_CENTER=3; -const PFA_JUSTIFY=4; -const PFA_FULL_INTERWORD=4; - -const SF_TEXT=1; -const SF_RTF=2; -const SF_RTFNOOBJS=3; -const SF_TEXTIZED=4; -const SF_UNICODE=16; -const SF_USECODEPAGE=32; -const SF_NCRFORNONASCII=64; -const SF_RTFVAL=0x0700; - -const SFF_PWD=0x0800; -const SFF_KEEPDOCINFO=0x1000; -const SFF_PERSISTVIEWSCALE=0x2000; -const SFF_PLAINRTF=0x4000; -const SFF_SELECTION=0x8000; - -const WB_CLASSIFY = 3; -const WB_MOVEWORDLEFT = 4; -const WB_MOVEWORDRIGHT = 5; -const WB_LEFTBREAK = 6; -const WB_RIGHTBREAK = 7; -const WB_MOVEWORDPREV = 4; -const WB_MOVEWORDNEXT = 5; -const WB_PREVBREAK = 6; -const WB_NEXTBREAK = 7; - -const WBF_WORDWRAP = 16; -const WBF_WORDBREAK = 32; -const WBF_OVERFLOW = 64; -const WBF_LEVEL1 = 128; -const WBF_LEVEL2 = 256; -const WBF_CUSTOM = 512; - -const ES_DISABLENOSCROLL = 8192; -const ES_SUNKEN = 16384; -const ES_SAVESEL = 32768; -const ES_EX_NOCALLOLEINIT = 16777216; -const ES_NOIME = 524288; -const ES_NOOLEDRAGDROP = 8; -const ES_SELECTIONBAR = 16777216; -const ES_SELFIME = 262144; -const ES_VERTICAL = 4194304; - -const EM_CANPASTE = WM_USER+50; -const EM_DISPLAYBAND = WM_USER+51; -const EM_EXGETSEL = WM_USER+52; -const EM_EXLIMITTEXT = WM_USER+53; -const EM_EXLINEFROMCHAR = WM_USER+54; -const EM_EXSETSEL = WM_USER+55; -const EM_FINDTEXT = WM_USER+56; -const EM_FORMATRANGE = WM_USER+57; -const EM_GETCHARFORMAT = WM_USER+58; -const EM_GETEVENTMASK = WM_USER+59; -const EM_GETOLEINTERFACE = WM_USER+60; -const EM_GETPARAFORMAT = WM_USER+61; -const EM_GETSELTEXT = WM_USER+62; -const EM_HIDESELECTION = WM_USER+63; -const EM_PASTESPECIAL = WM_USER+64; -const EM_REQUESTRESIZE = WM_USER+65; -const EM_SELECTIONTYPE = WM_USER+66; -const EM_SETBKGNDCOLOR = WM_USER+67; -const EM_SETCHARFORMAT = WM_USER+68; -const EM_SETEVENTMASK = WM_USER+69; -const EM_SETOLECALLBACK = WM_USER+70; -const EM_SETPARAFORMAT = WM_USER+71; -const EM_SETTARGETDEVICE = WM_USER+72; -const EM_STREAMIN = WM_USER+73; -const EM_STREAMOUT = WM_USER+74; -const EM_GETTEXTRANGE = WM_USER+75; -const EM_FINDWORDBREAK = WM_USER+76; -const EM_SETOPTIONS = WM_USER+77; -const EM_GETOPTIONS = WM_USER+78; -const EM_FINDTEXTEX = WM_USER+79; -const EM_GETWORDBREAKPROCEX = WM_USER+80; -const EM_SETWORDBREAKPROCEX = WM_USER+81; -/* RichEdit 2.0 messages */ -const EM_SETUNDOLIMIT = WM_USER+82; -const EM_REDO = WM_USER+84; -const EM_CANREDO = WM_USER+85; -const EM_GETUNDONAME = WM_USER+86; -const EM_GETREDONAME = WM_USER+87; -const EM_STOPGROUPTYPING = WM_USER+88; -const EM_SETTEXTMODE = WM_USER+89; -const EM_GETTEXTMODE = WM_USER+90; -const EM_AUTOURLDETECT = WM_USER+91; -const EM_GETAUTOURLDETECT = WM_USER + 92; -const EM_SETPALETTE = WM_USER + 93; -const EM_GETTEXTEX = WM_USER+94; -const EM_GETTEXTLENGTHEX = WM_USER+95; -const EM_SHOWSCROLLBAR = WM_USER+96; -const EM_SETTEXTEX = WM_USER + 97; -const EM_SETPUNCTUATION = WM_USER + 100; -const EM_GETPUNCTUATION = WM_USER + 101; -const EM_SETWORDWRAPMODE = WM_USER + 102; -const EM_GETWORDWRAPMODE = WM_USER + 103; -const EM_SETIMECOLOR = WM_USER + 104; -const EM_GETIMECOLOR = WM_USER + 105; -const EM_SETIMEOPTIONS = WM_USER + 106; -const EM_GETIMEOPTIONS = WM_USER + 107; -const EM_SETLANGOPTIONS = WM_USER+120; -const EM_GETLANGOPTIONS = WM_USER+121; -const EM_GETIMECOMPMODE = WM_USER+122; -const EM_FINDTEXTW = WM_USER + 123; -const EM_FINDTEXTEXW = WM_USER + 124; -const EM_RECONVERSION = WM_USER + 125; -const EM_SETBIDIOPTIONS = WM_USER + 200; -const EM_GETBIDIOPTIONS = WM_USER + 201; -const EM_SETTYPOGRAPHYOPTIONS = WM_USER+202; -const EM_GETTYPOGRAPHYOPTIONS = WM_USER+203; -const EM_SETEDITSTYLE = WM_USER + 204; -const EM_GETEDITSTYLE = WM_USER + 205; -const EM_GETSCROLLPOS = WM_USER+221; -const EM_SETSCROLLPOS = WM_USER+222; -const EM_SETFONTSIZE = WM_USER+223; -const EM_GETZOOM = WM_USER+224; -const EM_SETZOOM = WM_USER+225; - -const EN_MSGFILTER = 1792; -const EN_REQUESTRESIZE = 1793; -const EN_SELCHANGE = 1794; -const EN_DROPFILES = 1795; -const EN_PROTECTED = 1796; -const EN_CORRECTTEXT = 1797; -const EN_STOPNOUNDO = 1798; -const EN_IMECHANGE = 1799; -const EN_SAVECLIPBOARD = 1800; -const EN_OLEOPFAILED = 1801; -const EN_LINK = 1803; - -const ENM_NONE = 0; -const ENM_CHANGE = 1; -const ENM_UPDATE = 2; -const ENM_SCROLL = 4; -const ENM_SCROLLEVENTS = 8; -const ENM_DRAGDROPDONE = 16; -const ENM_KEYEVENTS = 65536; -const ENM_MOUSEEVENTS = 131072; -const ENM_REQUESTRESIZE = 262144; -const ENM_SELCHANGE = 524288; -const ENM_DROPFILES = 1048576; -const ENM_PROTECTED = 2097152; -const ENM_CORRECTTEXT = 4194304; -const ENM_IMECHANGE = 8388608; -const ENM_LANGCHANGE = 16777216; -const ENM_OBJECTPOSITIONS = 33554432; -const ENM_LINK = 67108864; - -const ECO_AUTOWORDSELECTION=1; -const ECO_AUTOVSCROLL=64; -const ECO_AUTOHSCROLL=128; -const ECO_NOHIDESEL=256; -const ECO_READONLY=2048; -const ECO_WANTRETURN=4096; -const ECO_SAVESEL=0x8000; -const ECO_SELECTIONBAR=0x1000000; -const ECO_VERTICAL=0x400000; - -enum { - ECOOP_SET = 1, - ECOOP_OR, - ECOOP_AND, - ECOOP_XOR -} - -const SCF_DEFAULT = 0; -const SCF_SELECTION = 1; -const SCF_WORD = 2; -const SCF_ALL = 4; -const SCF_USEUIRULES = 8; - -alias DWORD TEXTMODE; -const TM_PLAINTEXT=1; -const TM_RICHTEXT=2; -const TM_SINGLELEVELUNDO=4; -const TM_MULTILEVELUNDO=8; -const TM_SINGLECODEPAGE=16; -const TM_MULTICODEPAGE=32; - -const GT_DEFAULT=0; -const GT_USECRLF=1; - -const yHeightCharPtsMost=1638; -const lDefaultTab=720; - -alias DWORD UNDONAMEID; -const UID_UNKNOWN = 0; -const UID_TYPING = 1; -const UID_DELETE = 2; -const UID_DRAGDROP = 3; -const UID_CUT = 4; -const UID_PASTE = 5; - -struct CHARFORMATA { - UINT cbSize = this.sizeof; - DWORD dwMask; - DWORD dwEffects; - LONG yHeight; - LONG yOffset; - COLORREF crTextColor; - BYTE bCharSet; - BYTE bPitchAndFamily; - char[LF_FACESIZE] szFaceName; -} -struct CHARFORMATW { - UINT cbSize = this.sizeof; - DWORD dwMask; - DWORD dwEffects; - LONG yHeight; - LONG yOffset; - COLORREF crTextColor; - BYTE bCharSet; - BYTE bPitchAndFamily; - WCHAR[LF_FACESIZE] szFaceName; -} - -struct CHARFORMAT2A { - UINT cbSize = this.sizeof; - DWORD dwMask; - DWORD dwEffects; - LONG yHeight; - LONG yOffset; - COLORREF crTextColor; - BYTE bCharSet; - BYTE bPitchAndFamily; - char[LF_FACESIZE] szFaceName; - WORD wWeight; - SHORT sSpacing; - COLORREF crBackColor; - LCID lcid; - DWORD dwReserved; - SHORT sStyle; - WORD wKerning; - BYTE bUnderlineType; - BYTE bAnimation; - BYTE bRevAuthor; -} - -struct CHARFORMAT2W { - UINT cbSize = this.sizeof; - DWORD dwMask; - DWORD dwEffects; - LONG yHeight; - LONG yOffset; - COLORREF crTextColor; - BYTE bCharSet; - BYTE bPitchAndFamily; - WCHAR[LF_FACESIZE] szFaceName; - WORD wWeight; - SHORT sSpacing; - COLORREF crBackColor; - LCID lcid; - DWORD dwReserved; - SHORT sStyle; - WORD wKerning; - BYTE bUnderlineType; - BYTE bAnimation; - BYTE bRevAuthor; -} - -struct CHARRANGE { - LONG cpMin; - LONG cpMax; -} - -struct COMPCOLOR { - COLORREF crText; - COLORREF crBackground; - DWORD dwEffects; -} - -extern (Windows) { - alias DWORD function(DWORD,PBYTE,LONG,LONG*) EDITSTREAMCALLBACK; -} - -struct EDITSTREAM { - DWORD dwCookie; - DWORD dwError; - EDITSTREAMCALLBACK pfnCallback; -} - -struct ENCORRECTTEXT { - NMHDR nmhdr; - CHARRANGE chrg; - WORD seltyp; -} - -struct ENDROPFILES { - NMHDR nmhdr; - HANDLE hDrop; - LONG cp; - BOOL fProtected; -} - -struct ENLINK { - NMHDR nmhdr; - UINT msg; - WPARAM wParam; - LPARAM lParam; - CHARRANGE chrg; -} - -struct ENOLEOPFAILED { - NMHDR nmhdr; - LONG iob; - LONG lOper; - HRESULT hr; -} - -struct ENPROTECTED { - NMHDR nmhdr; - UINT msg; - WPARAM wParam; - LPARAM lParam; - CHARRANGE chrg; -} -alias ENPROTECTED* LPENPROTECTED; - -struct ENSAVECLIPBOARD { - NMHDR nmhdr; - LONG cObjectCount; - LONG cch; -} - -struct FINDTEXTA { - CHARRANGE chrg; - LPSTR lpstrText; -} - -struct FINDTEXTW { - CHARRANGE chrg; - LPWSTR lpstrText; -} - -struct FINDTEXTEXA { - CHARRANGE chrg; - LPSTR lpstrText; - CHARRANGE chrgText; -} - -struct FINDTEXTEXW { - CHARRANGE chrg; - LPWSTR lpstrText; - CHARRANGE chrgText; -} - -struct FORMATRANGE { - HDC hdc; - HDC hdcTarget; - RECT rc; - RECT rcPage; - CHARRANGE chrg; -} - -struct MSGFILTER { - NMHDR nmhdr; - UINT msg; - WPARAM wParam; - LPARAM lParam; -} - -struct PARAFORMAT { - UINT cbSize = this.sizeof; - DWORD dwMask; - WORD wNumbering; - WORD wReserved; - LONG dxStartIndent; - LONG dxRightIndent; - LONG dxOffset; - WORD wAlignment; - SHORT cTabCount; - LONG[MAX_TAB_STOPS] rgxTabs; -} - -struct PARAFORMAT2 { - UINT cbSize = this.sizeof; - DWORD dwMask; - WORD wNumbering; - WORD wEffects; - LONG dxStartIndent; - LONG dxRightIndent; - LONG dxOffset; - WORD wAlignment; - SHORT cTabCount; - LONG[MAX_TAB_STOPS] rgxTabs; - LONG dySpaceBefore; - LONG dySpaceAfter; - LONG dyLineSpacing; - SHORT sStype; - BYTE bLineSpacingRule; - BYTE bOutlineLevel; - WORD wShadingWeight; - WORD wShadingStyle; - WORD wNumberingStart; - WORD wNumberingStyle; - WORD wNumberingTab; - WORD wBorderSpace; - WORD wBorderWidth; - WORD wBorders; -} - -struct SELCHANGE { - NMHDR nmhdr; - CHARRANGE chrg; - WORD seltyp; -} - -struct TEXTRANGEA { - CHARRANGE chrg; - LPSTR lpstrText; -} - -struct TEXTRANGEW { - CHARRANGE chrg; - LPWSTR lpstrText; -} - -struct REQRESIZE { - NMHDR nmhdr; - RECT rc; -} - -struct REPASTESPECIAL { - DWORD dwAspect; - DWORD dwParam; -} - -struct PUNCTUATION { - UINT iSize; - LPSTR szPunctuation; -} - -struct GETTEXTEX { - DWORD cb; - DWORD flags; - UINT codepage; - LPCSTR lpDefaultChar; - LPBOOL lpUsedDefChar; -} - -extern (Windows) { -alias LONG function(char*,LONG,BYTE,INT) EDITWORDBREAKPROCEX; -} - -/* Defines for EM_SETTYPOGRAPHYOPTIONS */ -const TO_ADVANCEDTYPOGRAPHY = 1; -const TO_SIMPLELINEBREAK = 2; - -/* Defines for GETTEXTLENGTHEX */ -const GTL_DEFAULT = 0; -const GTL_USECRLF = 1; -const GTL_PRECISE = 2; -const GTL_CLOSE = 4; -const GTL_NUMCHARS = 8; -const GTL_NUMBYTES = 16; - -struct GETTEXTLENGTHEX { - DWORD flags; - UINT codepage; -} - -version(Unicode) { - alias CHARFORMATW CHARFORMAT; - alias CHARFORMAT2W CHARFORMAT2; - alias FINDTEXTW FINDTEXT; - alias FINDTEXTEXW FINDTEXTEX; - alias TEXTRANGEW TEXTRANGE; -} else { - alias CHARFORMATA CHARFORMAT; - alias CHARFORMAT2A CHARFORMAT2; - alias FINDTEXTA FINDTEXT; - alias FINDTEXTEXA FINDTEXTEX; - alias TEXTRANGEA TEXTRANGE; -} diff --git a/3rdparty-extra/win32/richole.d b/3rdparty-extra/win32/richole.d deleted file mode 100644 index 4de997d6c..000000000 --- a/3rdparty-extra/win32/richole.d +++ /dev/null @@ -1,102 +0,0 @@ -/***********************************************************************\ -* richole.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.richole; -version(Windows): - -private import win32.objfwd, win32.objidl, win32.ole2, win32.unknwn, - win32.windef; -private import win32.richedit; // for CHARRANGE - -align(4): - -const ULONG - REO_GETOBJ_NO_INTERFACES = 0, - REO_GETOBJ_POLEOBJ = 1, - REO_GETOBJ_PSTG = 2, - REO_GETOBJ_POLESITE = 4, - REO_GETOBJ_ALL_INTERFACES = 7, - REO_CP_SELECTION = -1, - REO_IOB_SELECTION = -1, - REO_IOB_USE_CP = -2, - REO_NULL = 0, - REO_READWRITEMASK = 0x3F, - REO_DONTNEEDPALETTE = 32, - REO_BLANK = 16, - REO_DYNAMICSIZE = 8, - REO_INVERTEDSELECT = 4, - REO_BELOWBASELINE = 2, - REO_RESIZABLE = 1, - REO_LINK = 0x80000000, - REO_STATIC = 0x40000000, - REO_SELECTED = 0x08000000, - REO_OPEN = 0x4000000, - REO_INPLACEACTIVE = 0x2000000, - REO_HILITED = 0x1000000, - REO_LINKAVAILABLE = 0x800000, - REO_GETMETAFILE = 0x400000; - -enum { - RECO_PASTE = 0, - RECO_DROP, - RECO_COPY, - RECO_CUT, - RECO_DRAG // = 4 -} - -extern (C) extern const GUID - IID_IRichEditOle, - IID_IRichEditOleCallback; - -struct REOBJECT { - DWORD cbStruct = REOBJECT.sizeof; - LONG cp; - CLSID clsid; - LPOLEOBJECT poleobj; - LPSTORAGE pstg; - LPOLECLIENTSITE polesite; - SIZEL sizel; - DWORD dvaspect; - DWORD dwFlags; - DWORD dwUser; -} - -interface IRichEditOle : IUnknown { - HRESULT GetClientSite(LPOLECLIENTSITE*); - LONG GetObjectCount(); - LONG GetLinkCount(); - HRESULT GetObject(LONG, REOBJECT*, DWORD); - HRESULT InsertObject(REOBJECT*); - HRESULT ConvertObject(LONG, REFCLSID, LPCSTR); - HRESULT ActivateAs(REFCLSID, REFCLSID); - HRESULT SetHostNames(LPCSTR, LPCSTR); - HRESULT SetLinkAvailable(LONG, BOOL); - HRESULT SetDvaspect(LONG, DWORD); - HRESULT HandsOffStorage(LONG); - HRESULT SaveCompleted(LONG, LPSTORAGE); - HRESULT InPlaceDeactivate(); - HRESULT ContextSensitiveHelp(BOOL); - HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*); - HRESULT ImportDataObject(LPDATAOBJECT, CLIPFORMAT, HGLOBAL); -}; -alias IRichEditOle LPRICHEDITOLE; - -interface IRichEditOleCallback : IUnknown { - HRESULT GetNewStorage(LPSTORAGE*); - HRESULT GetInPlaceContext(LPOLEINPLACEFRAME*, LPOLEINPLACEUIWINDOW*, LPOLEINPLACEFRAMEINFO); - HRESULT ShowContainerUI(BOOL); - HRESULT QueryInsertObject(LPCLSID, LPSTORAGE, LONG); - HRESULT DeleteObject(LPOLEOBJECT); - HRESULT QueryAcceptData(LPDATAOBJECT, CLIPFORMAT*, DWORD, BOOL, HGLOBAL); - HRESULT ContextSensitiveHelp(BOOL); - HRESULT GetClipboardData(CHARRANGE*, DWORD, LPDATAOBJECT*); - HRESULT GetDragDropEffect(BOOL, DWORD, PDWORD); - HRESULT GetContextMenu(WORD, LPOLEOBJECT, CHARRANGE*, HMENU*); -}; -alias IRichEditOleCallback LPRICHEDITOLECALLBACK; diff --git a/3rdparty-extra/win32/rpcdce2.d b/3rdparty-extra/win32/rpcdce2.d deleted file mode 100644 index 8d6cdcfee..000000000 --- a/3rdparty-extra/win32/rpcdce2.d +++ /dev/null @@ -1,79 +0,0 @@ -/***********************************************************************\ -* rpcdce2.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.rpcdce2; -version(Windows): - -import win32.rpcdce; -private import win32.basetyps; - -// FIXME: deal with RPC_UNICODE_SUPPORTED -// FIXME: check types of constants - -enum { - RPC_C_EP_ALL_ELTS, - RPC_C_EP_MATCH_BY_IF, - RPC_C_EP_MATCH_BY_OBJ, - RPC_C_EP_MATCH_BY_BOTH -} - -enum { - RPC_C_VERS_ALL = 1, - RPC_C_VERS_COMPATIBLE, - RPC_C_VERS_EXACT, - RPC_C_VERS_MAJOR_ONLY, - RPC_C_VERS_UPTO -} - -const size_t DCE_C_ERROR_STRING_LEN = 256; - -enum { - RPC_C_MGMT_INQ_IF_IDS, - RPC_C_MGMT_INQ_PRINC_NAME, - RPC_C_MGMT_INQ_STATS, - RPC_C_MGMT_IS_SERVER_LISTEN, - RPC_C_MGMT_STOP_SERVER_LISTEN -} - -extern (Windows) { - int UuidCompare(UUID*, UUID*, RPC_STATUS*); - RPC_STATUS UuidCreateNil(UUID*); - int UuidEqual(UUID*, UUID*, RPC_STATUS*); - ushort UuidHash(UUID*, RPC_STATUS*); - int UuidIsNil(UUID*, RPC_STATUS*); - - RPC_STATUS RpcMgmtEpEltInqBegin(RPC_BINDING_HANDLE, uint, RPC_IF_ID*, - uint, UUID*, RPC_EP_INQ_HANDLE*); - RPC_STATUS RpcMgmtEpEltInqDone(RPC_EP_INQ_HANDLE*); - RPC_STATUS RpcMgmtEpUnregister(RPC_BINDING_HANDLE, RPC_IF_ID*, - RPC_BINDING_HANDLE, UUID*); - RPC_STATUS RpcMgmtSetAuthorizationFn(RPC_MGMT_AUTHORIZATION_FN); -} - - -//#ifdef RPC_UNICODE_SUPPORTED -RPC_STATUS DceErrorInqTextA(RPC_STATUS, char*); -RPC_STATUS DceErrorInqTextW(RPC_STATUS, wchar*); -RPC_STATUS RpcMgmtEpEltInqNextA(RPC_EP_INQ_HANDLE, RPC_IF_ID*, - RPC_BINDING_HANDLE*, UUID*, char**); -RPC_STATUS RpcMgmtEpEltInqNextW(RPC_EP_INQ_HANDLE, RPC_IF_ID*, - RPC_BINDING_HANDLE*, UUID*, wchar**); -version (Unicode) { - alias RpcMgmtEpEltInqNextW RpcMgmtEpEltInqNext; - alias DceErrorInqTextW DceErrorInqText; -} else { - alias RpcMgmtEpEltInqNextA RpcMgmtEpEltInqNext; - alias DceErrorInqTextA DceErrorInqText; -} -/+ -#else /* RPC_UNICODE_SUPPORTED */ - RPC_STATUS RPC_ENTRY DceErrorInqText(RPC_STATUS,unsigned char*); - RPC_STATUS RPC_ENTRY RpcMgmtEpEltInqNext(RPC_EP_INQ_HANDLE,RPC_IF_ID*,RPC_BINDING_HANDLE*,UUID*,unsigned char**); -#endif -+/ diff --git a/3rdparty-extra/win32/schannel.d b/3rdparty-extra/win32/schannel.d deleted file mode 100644 index 7796c3013..000000000 --- a/3rdparty-extra/win32/schannel.d +++ /dev/null @@ -1,107 +0,0 @@ -/***********************************************************************\ -* schannel.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.schannel; -version(Windows): - -import win32.wincrypt; -private import win32.windef; - -const DWORD SCHANNEL_CRED_VERSION = 4; -const SCHANNEL_SHUTDOWN = 1; -/* Comment from MinGW - ? Do these belong here or in wincrypt.h - */ -enum : DWORD { - AUTHTYPE_CLIENT = 1, - AUTHTYPE_SERVER = 2 -} - -const DWORD - SP_PROT_PCT1_SERVER = 0x01, - SP_PROT_PCT1_CLIENT = 0x02, - SP_PROT_SSL2_SERVER = 0x04, - SP_PROT_SSL2_CLIENT = 0x08, - SP_PROT_SSL3_SERVER = 0x10, - SP_PROT_SSL3_CLIENT = 0x20, - SP_PROT_TLS1_SERVER = 0x40, - SP_PROT_TLS1_CLIENT = 0x80, - SP_PROT_PCT1 = SP_PROT_PCT1_CLIENT | SP_PROT_PCT1_SERVER, - SP_PROT_TLS1 = SP_PROT_TLS1_CLIENT | SP_PROT_TLS1_SERVER, - SP_PROT_SSL2 = SP_PROT_SSL2_CLIENT | SP_PROT_SSL2_SERVER, - SP_PROT_SSL3 = SP_PROT_SSL3_CLIENT | SP_PROT_SSL3_SERVER; - -const DWORD - SCH_CRED_NO_SYSTEM_MAPPER = 0x0002, - SCH_CRED_NO_SERVERNAME_CHECK = 0x0004, - SCH_CRED_MANUAL_CRED_VALIDATION = 0x0008, - SCH_CRED_NO_DEFAULT_CREDS = 0x0010, - SCH_CRED_AUTO_CRED_VALIDATION = 0x0020, - SCH_CRED_USE_DEFAULT_CREDS = 0x0040, - SCH_CRED_REVOCATION_CHECK_END_CERT = 0x0100, - SCH_CRED_REVOCATION_CHECK_CHAIN = 0x0200, - SCH_CRED_REVOCATION_CHECK_CHAIN_EXCLUDE_ROOT = 0x0400, - SCH_CRED_IGNORE_NO_REVOCATION_CHECK = 0x0800, - SCH_CRED_IGNORE_REVOCATION_OFFLINE = 0x1000; - -// No definition - presumably an opaque structure -struct _HMAPPER; - -struct SCHANNEL_CRED { - DWORD dwVersion = SCHANNEL_CRED_VERSION; - DWORD cCreds; - PCCERT_CONTEXT* paCred; - HCERTSTORE hRootStore; - DWORD cMappers; - _HMAPPER** aphMappers; - DWORD cSupportedAlgs; - ALG_ID* palgSupportedAlgs; - DWORD grbitEnabledProtocols; - DWORD dwMinimumCypherStrength; - DWORD dwMaximumCypherStrength; - DWORD dwSessionLifespan; - DWORD dwFlags; - DWORD reserved; -} -alias SCHANNEL_CRED* PSCHANNEL_CRED; - -struct SecPkgCred_SupportedAlgs { - DWORD cSupportedAlgs; - ALG_ID* palgSupportedAlgs; -} -alias SecPkgCred_SupportedAlgs* PSecPkgCred_SupportedAlgs; - -struct SecPkgCred_CypherStrengths { - DWORD dwMinimumCypherStrength; - DWORD dwMaximumCypherStrength; -} -alias SecPkgCred_CypherStrengths* PSecPkgCred_CypherStrengths; - -struct SecPkgCred_SupportedProtocols { - DWORD grbitProtocol; -} -alias SecPkgCred_SupportedProtocols* PSecPkgCred_SupportedProtocols; - -struct SecPkgContext_IssuerListInfoEx { - PCERT_NAME_BLOB aIssuers; - DWORD cIssuers; -} -alias SecPkgContext_IssuerListInfoEx* PSecPkgContext_IssuerListInfoEx; - -struct SecPkgContext_ConnectionInfo { - DWORD dwProtocol; - ALG_ID aiCipher; - DWORD dwCipherStrength; - ALG_ID aiHash; - DWORD dwHashStrength; - ALG_ID aiExch; - DWORD dwExchStrength; -} -alias SecPkgContext_ConnectionInfo* PSecPkgContext_ConnectionInfo; diff --git a/3rdparty-extra/win32/secext.d b/3rdparty-extra/win32/secext.d deleted file mode 100644 index 1c7d4e4e1..000000000 --- a/3rdparty-extra/win32/secext.d +++ /dev/null @@ -1,53 +0,0 @@ -/***********************************************************************\ -* secext.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -// Don't include this file directly, use win32.security instead. -module win32.secext; -version(Windows): -pragma(lib, "secur32"); - -private import win32.w32api, win32.windef; - -static assert (_WIN32_WINNT >= 0x501, - "SecExt is only available on WindowsXP and later"); - -enum EXTENDED_NAME_FORMAT { - NameUnknown, - NameFullyQualifiedDN, - NameSamCompatible, - NameDisplay, // = 3 - NameUniqueId = 6, - NameCanonical, - NameUserPrincipal, - NameCanonicalEx, - NameServicePrincipal, // = 10 - NameDnsDomain = 12 -} -alias EXTENDED_NAME_FORMAT* PEXTENDED_NAME_FORMAT; - -extern (Windows) { - BOOLEAN GetComputerObjectNameA(EXTENDED_NAME_FORMAT, LPSTR, PULONG); - BOOLEAN GetComputerObjectNameW(EXTENDED_NAME_FORMAT, LPWSTR, PULONG); - BOOLEAN GetUserNameExA(EXTENDED_NAME_FORMAT, LPSTR, PULONG); - BOOLEAN GetUserNameExW(EXTENDED_NAME_FORMAT, LPWSTR, PULONG); - BOOLEAN TranslateNameA(LPCSTR, EXTENDED_NAME_FORMAT, - EXTENDED_NAME_FORMAT, LPSTR, PULONG); - BOOLEAN TranslateNameW(LPCWSTR, EXTENDED_NAME_FORMAT, - EXTENDED_NAME_FORMAT, LPWSTR, PULONG); -} - -version (Unicode) { - alias GetComputerObjectNameW GetComputerObjectName; - alias GetUserNameExW GetUserNameEx; - alias TranslateNameW TranslateName; -} else { - alias GetComputerObjectNameA GetComputerObjectName; - alias GetUserNameExA GetUserNameEx; - alias TranslateNameA TranslateName; -} diff --git a/3rdparty-extra/win32/security.d b/3rdparty-extra/win32/security.d deleted file mode 100644 index 09c3b83d9..000000000 --- a/3rdparty-extra/win32/security.d +++ /dev/null @@ -1,47 +0,0 @@ -/***********************************************************************\ -* security.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Ellery Newcomer * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.security; -version(Windows): - -enum :SECURITY_STATUS{ - SEC_E_OK = 0, - SEC_E_CERT_EXPIRED = (-2146893016), - SEC_E_INCOMPLETE_MESSAGE = (-2146893032), - SEC_E_INSUFFICIENT_MEMORY = (-2146893056), - SEC_E_INTERNAL_ERROR = (-2146893052), - SEC_E_INVALID_HANDLE = (-2146893055), - SEC_E_INVALID_TOKEN = (-2146893048), - SEC_E_LOGON_DENIED = (-2146893044), - SEC_E_NO_AUTHENTICATING_AUTHORITY = (-2146893039), - SEC_E_NO_CREDENTIALS = (-2146893042), - SEC_E_TARGET_UNKNOWN = (-2146893053), - SEC_E_UNSUPPORTED_FUNCTION = (-2146893054), - SEC_E_UNTRUSTED_ROOT = (-2146893019), - SEC_E_WRONG_PRINCIPAL = (-2146893022), - SEC_E_SECPKG_NOT_FOUND = (-2146893051), - SEC_E_QOP_NOT_SUPPORTED = (-2146893046), - SEC_E_UNKNOWN_CREDENTIALS = (-2146893043), - SEC_E_NOT_OWNER = (-2146893050), -} -enum :SECURITY_STATUS { - SEC_I_RENEGOTIATE = 590625, - SEC_I_COMPLETE_AND_CONTINUE = 590612, - SEC_I_COMPLETE_NEEDED = 590611, - SEC_I_CONTINUE_NEEDED = 590610, - SEC_I_INCOMPLETE_CREDENTIALS = 590624, -} - -/* always a char */ -alias char SEC_CHAR; -alias wchar SEC_WCHAR; - -alias int SECURITY_STATUS; - diff --git a/3rdparty-extra/win32/servprov.d b/3rdparty-extra/win32/servprov.d deleted file mode 100644 index 4be941415..000000000 --- a/3rdparty-extra/win32/servprov.d +++ /dev/null @@ -1,17 +0,0 @@ -/***********************************************************************\ -* servprov.d * -* * -* Windows API header module * -* * -* Translated from MinGW API for MS-Windows 3.10 * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.servprov; -version(Windows): - -private import win32.basetyps, win32.unknwn, win32.windef, win32.wtypes; - -interface IServiceProvider : IUnknown { - HRESULT QueryService(REFGUID, REFIID, void**); -} diff --git a/3rdparty-extra/win32/setupapi.d b/3rdparty-extra/win32/setupapi.d deleted file mode 100644 index c4b953708..000000000 --- a/3rdparty-extra/win32/setupapi.d +++ /dev/null @@ -1,1980 +0,0 @@ -/***********************************************************************\ -* setupapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Vladimir Vlasov * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.setupapi; -version(Windows): -pragma(lib, "setupapi"); - -private import win32.basetyps, win32.commctrl, win32.prsht, win32.w32api, - win32.winreg, win32.windef; -private import win32.winbase; // for SYSTEMTIME - -/*static if(_WIN32_WINNT < _WIN32_WINDOWS) { - const UINT _SETUPAPI_VER = _WIN32_WINNT; // SetupAPI version follows Windows NT version -} else static if(_WIN32_WINDOWS) { - static if(_WIN32_WINDOWS >= 0x0490) { - const UINT _SETUPAPI_VER = 0x0500; // WinME uses same version of SetupAPI as Win2k - } else static if(_WIN32_WINDOWS >= 0x0410) { - const UINT _SETUPAPI_VER = 0x0410; // Indicates version of SetupAPI shipped with Win98 - } else { - const UINT _SETUPAPI_VER = 0x0400; // Earliest SetupAPI version - } -} else { - const UINT _SETUPAPI_VER = 0x0501; -} - -version (WindowsNTonly) { - static if (_WIN32_WINNT >= 0x500) { - const UINT USE_SP_DRVINFO_DATA_V1 = 0; - } else { - const UINT USE_SP_DRVINFO_DATA_V1 = 1; - } -} else { - const UINT USE_SP_DRVINFO_DATA_V1 = 1; -}*/ -/+ -const UINT _SETUPAPI_VER = 0x0400; // Earliest SetupAPI version -const UINT USE_SP_DRVINFO_DATA_V1 = 1; -+/ -const UINT _SETUPAPI_VER = _WIN32_WINNT; -const bool USE_SP_DRVINFO_DATA_V1 = _WIN32_WINNT < 0x500; - -enum : uint { - LINE_LEN = 256, - MAX_INF_STRING_LENGTH = 4096, - MAX_TITLE_LEN = 60, - MAX_INSTRUCTION_LEN = 256, - MAX_LABEL_LEN = 30, - MAX_SERVICE_NAME_LEN = 256, - MAX_SUBTITLE_LEN = 256, - SP_MAX_MACHINENAME_LENGTH = MAX_PATH + 3 -} - -enum : DWORD { - COPYFLG_WARN_IF_SKIP = 0x00000001, - COPYFLG_NOSKIP = 0x00000002, - COPYFLG_NOVERSIONCHECK = 0x00000004, - COPYFLG_FORCE_FILE_IN_USE = 0x00000008, - COPYFLG_NO_OVERWRITE = 0x00000010, - COPYFLG_NO_VERSION_DIALOG = 0x00000020, - COPYFLG_OVERWRITE_OLDER_ONLY = 0x00000040, - COPYFLG_REPLACEONLY = 0x00000400, - COPYFLG_NODECOMP = 0x00000800, - COPYFLG_REPLACE_BOOT_FILE = 0x00001000, - COPYFLG_NOPRUNE = 0x00002000 -} - -enum : DWORD { - DELFLG_IN_USE = 0x00000001, - DELFLG_IN_USE1 = 0x00010000 -} - -enum : DWORD { - DI_REMOVEDEVICE_GLOBAL = 0x00000001, - DI_REMOVEDEVICE_CONFIGSPECIFIC = 0x00000002, - DI_UNREMOVEDEVICE_CONFIGSPECIFIC = 0x00000002, - DI_SHOWOEM = 0x00000001, - DI_SHOWCOMPAT = 0x00000002, - DI_SHOWCLASS = 0x00000004, - DI_SHOWALL = 0x00000007, - DI_NOVCP = 0x00000008, - DI_DIDCOMPAT = 0x00000010, - DI_DIDCLASS = 0x00000020, - DI_AUTOASSIGNRES = 0x00000040, - DI_NEEDRESTART = 0x00000080, - DI_NEEDREBOOT = 0x00000100, - DI_NOBROWSE = 0x00000200, - DI_MULTMFGS = 0x00000400, - DI_DISABLED = 0x00000800, - DI_GENERALPAGE_ADDED = 0x00001000, - DI_RESOURCEPAGE_ADDED = 0x00002000, - DI_PROPERTIES_CHANGE = 0x00004000, - DI_INF_IS_SORTED = 0x00008000, - DI_ENUMSINGLEINF = 0x00010000, - DI_DONOTCALLCONFIGMG = 0x00020000, - DI_INSTALLDISABLED = 0x00040000, - DI_COMPAT_FROM_CLASS = 0x00080000, - DI_CLASSINSTALLPARAMS = 0x00100000, - DI_NODI_DEFAULTACTION = 0x00200000, - DI_QUIETINSTALL = 0x00800000, - DI_NOFILECOPY = 0x01000000, - DI_FORCECOPY = 0x02000000, - DI_DRIVERPAGE_ADDED = 0x04000000, - DI_USECI_SELECTSTRINGS = 0x08000000, - DI_OVERRIDE_INFFLAGS = 0x10000000, - DI_PROPS_NOCHANGEUSAGE = 0x20000000, - DI_NOSELECTICONS = 0x40000000, - DI_NOWRITE_IDS = 0x80000000, - DI_FLAGSEX_USEOLDINFSEARCH = 0x00000001, - DI_FLAGSEX_AUTOSELECTRANK0 = 0x00000002, - DI_FLAGSEX_CI_FAILED = 0x00000004, - DI_FLAGSEX_DIDINFOLIST = 0x00000010, - DI_FLAGSEX_DIDCOMPATINFO = 0x00000020, - DI_FLAGSEX_FILTERCLASSES = 0x00000040, - DI_FLAGSEX_SETFAILEDINSTALL = 0x00000080, - DI_FLAGSEX_DEVICECHANGE = 0x00000100, - DI_FLAGSEX_ALWAYSWRITEIDS = 0x00000200, - DI_FLAGSEX_PROPCHANGE_PENDING = 0x00000400, - DI_FLAGSEX_ALLOWEXCLUDEDDRVS = 0x00000800, - DI_FLAGSEX_NOUIONQUERYREMOVE = 0x00001000, - DI_FLAGSEX_USECLASSFORCOMPAT = 0x00002000, - DI_FLAGSEX_OLDINF_IN_CLASSLIST = 0x00004000, - DI_FLAGSEX_NO_DRVREG_MODIFY = 0x00008000, - DI_FLAGSEX_IN_SYSTEM_SETUP = 0x00010000, - DI_FLAGSEX_INET_DRIVER = 0x00020000, - DI_FLAGSEX_APPENDDRIVERLIST = 0x00040000, - DI_FLAGSEX_PREINSTALLBACKUP = 0x00080000, - DI_FLAGSEX_BACKUPONREPLACE = 0x00100000, - DI_FLAGSEX_DRIVERLIST_FROM_URL = 0x00200000, - DI_FLAGSEX_RESERVED1 = 0x00400000, - DI_FLAGSEX_EXCLUDE_OLD_INET_DRIVERS = 0x00800000, - DI_FLAGSEX_POWERPAGE_ADDED = 0x01000000 -} - -enum : DWORD { - DIBCI_NOINSTALLCLASS = 0x00000001, - DIBCI_NODISPLAYCLASS = 0x00000002 -} - -enum : DWORD { - DICD_GENERATE_ID = 0x00000001, - DICD_INHERIT_CLASSDRVS = 0x00000002 -} - -enum : DWORD { - DICS_ENABLE = 1, - DICS_DISABLE, - DICS_PROPCHANGE, - DICS_START, - DICS_STOP // = 5 -} - -enum : DWORD { - DICS_FLAG_GLOBAL = 1, - DICS_FLAG_CONFIGSPECIFIC = 2, - DICS_FLAG_CONFIGGENERAL = 4 -} - -alias UINT DI_FUNCTION; - -enum : DI_FUNCTION { - DIF_SELECTDEVICE = 1, - DIF_INSTALLDEVICE, - DIF_ASSIGNRESOURCES, - DIF_PROPERTIES, - DIF_REMOVE, - DIF_FIRSTTIMESETUP, - DIF_FOUNDDEVICE, - DIF_SELECTCLASSDRIVERS, - DIF_VALIDATECLASSDRIVERS, - DIF_INSTALLCLASSDRIVERS, - DIF_CALCDISKSPACE, - DIF_DESTROYPRIVATEDATA, - DIF_VALIDATEDRIVER, - DIF_MOVEDEVICE, - DIF_DETECT, - DIF_INSTALLWIZARD, - DIF_DESTROYWIZARDDATA, - DIF_PROPERTYCHANGE, - DIF_ENABLECLASS, - DIF_DETECTVERIFY, - DIF_INSTALLDEVICEFILES, - DIF_UNREMOVE, - DIF_SELECTBESTCOMPATDRV, - DIF_ALLOW_INSTALL, - DIF_REGISTERDEVICE, - DIF_NEWDEVICEWIZARD_PRESELECT, - DIF_NEWDEVICEWIZARD_SELECT, - DIF_NEWDEVICEWIZARD_PREANALYZE, - DIF_NEWDEVICEWIZARD_POSTANALYZE, - DIF_NEWDEVICEWIZARD_FINISHINSTALL, - DIF_UNUSED1, - DIF_INSTALLINTERFACES, - DIF_DETECTCANCEL, - DIF_REGISTER_COINSTALLERS, - DIF_ADDPROPERTYPAGE_ADVANCED, - DIF_ADDPROPERTYPAGE_BASIC, - DIF_RESERVED1, - DIF_TROUBLESHOOTER, - DIF_POWERMESSAGEWAKE // = 39 -} - -enum : DWORD { - DIGCF_DEFAULT = 0x00000001, - DIGCF_PRESENT = 0x00000002, - DIGCF_ALLCLASSES = 0x00000004, - DIGCF_PROFILE = 0x00000008, - DIGCF_DEVICEINTERFACE = 0x00000010 -} - -deprecated enum : DWORD { - DIGCF_INTERFACEDEVICE = DIGCF_DEVICEINTERFACE -} - -enum : DWORD { - DIGCDP_FLAG_BASIC = 0x00000001, - DIGCDP_FLAG_ADVANCED = 0x00000002 -} - -enum : DWORD { - DIOCR_INSTALLER = 0x00000001, - DIOCR_INTERFACE = 0x00000002 -} - -enum : DWORD { - DIODI_NO_ADD = 0x00000001 -} - -enum : DWORD { - DIOD_INHERIT_CLASSDRVS = 0x00000002, - DIOD_CANCEL_REMOVE = 0x00000004 -} - -enum : DWORD { - DIREG_DEV = 0x00000001, - DIREG_DRV = 0x00000002, - DIREG_BOTH = 0x00000004 -} - -enum : int { - DIRID_ABSOLUTE = -1, - DIRID_NULL = 0, - DIRID_SRCPATH = 1, - DIRID_WINDOWS = 10, - DIRID_SYSTEM = 11, - DIRID_DRIVERS = 12, - DIRID_IOSUBSYS = DIRID_DRIVERS, - DIRID_INF = 17, - DIRID_HELP = 18, - DIRID_FONTS = 20, - DIRID_VIEWERS = 21, - DIRID_COLOR = 23, - DIRID_APPS = 24, - DIRID_SHARED = 25, - DIRID_BOOT = 30, - DIRID_SYSTEM16 = 50, - DIRID_SPOOL = 51, - DIRID_SPOOLDRIVERS = 52, - DIRID_USERPROFILE = 53, - DIRID_LOADER = 54, - DIRID_PRINTPROCESSOR = 55, - DIRID_DEFAULT = DIRID_SYSTEM -} - -enum : int { - DIRID_COMMON_STARTMENU = 16406, - DIRID_COMMON_PROGRAMS = 16407, - DIRID_COMMON_STARTUP = 16408, - DIRID_COMMON_DESKTOPDIRECTORY = 16409, - DIRID_COMMON_FAVORITES = 16415, - DIRID_COMMON_APPDATA = 16419, - DIRID_PROGRAM_FILES = 16422, - DIRID_SYSTEM_X86 = 16425, - DIRID_PROGRAM_FILES_X86 = 16426, - DIRID_PROGRAM_FILES_COMMON = 16427, - DIRID_PROGRAM_FILES_COMMONX86 = 16428, - DIRID_COMMON_TEMPLATES = 16429, - DIRID_COMMON_DOCUMENTS = 16430, - DIRID_USER = 0x8000, - DIRID_ABSOLUTE_16BIT = 0xffff -} - -enum : DWORD { - DMI_MASK = 0x00000001, - DMI_BKCOLOR = 0x00000002, - DMI_USERECT = 0x00000004 -} - -enum : DWORD { - DNF_DUPDESC = 0x00000001, - DNF_OLDDRIVER = 0x00000002, - DNF_EXCLUDEFROMLIST = 0x00000004, - DNF_NODRIVER = 0x00000008, - DNF_LEGACYINF = 0x00000010, - DNF_CLASS_DRIVER = 0x00000020, - DNF_COMPATIBLE_DRIVER = 0x00000040, - DNF_INET_DRIVER = 0x00000080, - DNF_UNUSED1 = 0x00000100, - DNF_INDEXED_DRIVER = 0x00000200, - DNF_OLD_INET_DRIVER = 0x00000400, - DNF_BAD_DRIVER = 0x00000800, - DNF_DUPPROVIDER = 0x00001000 -} - -enum : UINT { - DPROMPT_SUCCESS, - DPROMPT_CANCEL, - DPROMPT_SKIPFILE, - DPROMPT_BUFFERTOOSMALL, - DPROMPT_OUTOFMEMORY // = 4 -} - -enum : DWORD { - DRIVER_HARDWAREID_RANK = 0x00000FFF, - DRIVER_COMPATID_RANK = 0x00003FFF, - DRIVER_UNTRUSTED_RANK = 0x00008000, - DRIVER_UNTRUSTED_HARDWAREID_RANK = 0x00008FFF, - DRIVER_UNTRUSTED_COMPATID_RANK = 0x0000BFFF, - DRIVER_W9X_SUSPECT_RANK = 0x0000C000, - DRIVER_W9X_SUSPECT_HARDWAREID_RANK = 0x0000CFFF, - DRIVER_W9X_SUSPECT_COMPATID_RANK = 0x0000FFFF -} - -enum : DWORD { - DYNAWIZ_FLAG_PAGESADDED = 0x00000001, - DYNAWIZ_FLAG_INSTALLDET_NEXT = 0x00000002, - DYNAWIZ_FLAG_INSTALLDET_PREV = 0x00000004, - DYNAWIZ_FLAG_ANALYZE_HANDLECONFLICT = 0x00000008 -} - -enum : WORD { - ENABLECLASS_QUERY, - ENABLECLASS_SUCCESS, - ENABLECLASS_FAILURE // = 2 -} - -enum : DWORD { - ERROR_EXPECTED_SECTION_NAME = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0, - ERROR_BAD_SECTION_NAME_LINE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 1, - ERROR_SECTION_NAME_TOO_LONG = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 2, - ERROR_GENERAL_SYNTAX = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 3, - ERROR_WRONG_INF_STYLE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x100, - ERROR_NOT_INSTALLED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x1000, - ERROR_SECTION_NOT_FOUND = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x101, - ERROR_LINE_NOT_FOUND = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x102, - ERROR_NO_BACKUP = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x103, - ERROR_NO_ASSOCIATED_CLASS = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x200, - ERROR_CLASS_MISMATCH = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x201, - ERROR_DUPLICATE_FOUND = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x202, - ERROR_NO_DRIVER_SELECTED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x203, - ERROR_KEY_DOES_NOT_EXIST = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x204, - ERROR_INVALID_DEVINST_NAME = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x205, - ERROR_INVALID_CLASS = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x206, - ERROR_DEVINST_ALREADY_EXISTS = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x207, - ERROR_DEVINFO_NOT_REGISTERED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x208, - ERROR_INVALID_REG_PROPERTY = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x209, - ERROR_NO_INF = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x20A, - ERROR_NO_SUCH_DEVINST = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x20B, - ERROR_CANT_LOAD_CLASS_ICON = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x20C, - ERROR_INVALID_CLASS_INSTALLER = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x20D, - ERROR_DI_DO_DEFAULT = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x20E, - ERROR_DI_NOFILECOPY = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x20F, - ERROR_INVALID_HWPROFILE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x210, - ERROR_NO_DEVICE_SELECTED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x211, - ERROR_DEVINFO_LIST_LOCKED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x212, - ERROR_DEVINFO_DATA_LOCKED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x213, - ERROR_DI_BAD_PATH = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x214, - ERROR_NO_CLASSINSTALL_PARAMS = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x215, - ERROR_FILEQUEUE_LOCKED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x216, - ERROR_BAD_SERVICE_INSTALLSECT = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x217, - ERROR_NO_CLASS_DRIVER_LIST = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x218, - ERROR_NO_ASSOCIATED_SERVICE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x219, - ERROR_NO_DEFAULT_DEVICE_INTERFACE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x21A, - ERROR_DEVICE_INTERFACE_ACTIVE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x21B, - ERROR_DEVICE_INTERFACE_REMOVED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x21C, - ERROR_BAD_INTERFACE_INSTALLSECT = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x21D, - ERROR_NO_SUCH_INTERFACE_CLASS = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x21E, - ERROR_INVALID_REFERENCE_STRING = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x21F, - ERROR_INVALID_MACHINENAME = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x220, - ERROR_REMOTE_COMM_FAILURE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x221, - ERROR_MACHINE_UNAVAILABLE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x222, - ERROR_NO_CONFIGMGR_SERVICES = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x223, - ERROR_INVALID_PROPPAGE_PROVIDER = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x224, - ERROR_NO_SUCH_DEVICE_INTERFACE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x225, - ERROR_DI_POSTPROCESSING_REQUIRED = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x226, - ERROR_INVALID_COINSTALLER = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x227, - ERROR_NO_COMPAT_DRIVERS = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x228, - ERROR_NO_DEVICE_ICON = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x229, - ERROR_INVALID_INF_LOGCONFIG = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x22A, - ERROR_DI_DONT_INSTALL = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x22B, - ERROR_INVALID_FILTER_DRIVER = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x22C, - ERROR_NON_WINDOWS_NT_DRIVER = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x22D, - ERROR_NON_WINDOWS_DRIVER = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x22E, - ERROR_NO_CATALOG_FOR_OEM_INF = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x22F, - ERROR_DEVINSTALL_QUEUE_NONNATIVE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x230, - ERROR_NOT_DISABLEABLE = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x231, - ERROR_CANT_REMOVE_DEVINST = APPLICATION_ERROR_MASK | ERROR_SEVERITY_ERROR | 0x232 -} - -deprecated enum : DWORD { - ERROR_NO_DEFAULT_INTERFACE_DEVICE = ERROR_NO_DEFAULT_DEVICE_INTERFACE, - ERROR_INTERFACE_DEVICE_ACTIVE = ERROR_DEVICE_INTERFACE_ACTIVE, - ERROR_INTERFACE_DEVICE_REMOVED = ERROR_DEVICE_INTERFACE_REMOVED, - ERROR_NO_SUCH_INTERFACE_DEVICE = ERROR_NO_SUCH_DEVICE_INTERFACE, -} - -enum : UINT { - FILEOP_COPY, - FILEOP_RENAME, - FILEOP_DELETE, - FILEOP_BACKUP, - FILEOP_NEWPATH, // = 4 - FILEOP_ABORT = 0, - FILEOP_DOIT, - FILEOP_SKIP, // = 2 - FILEOP_RETRY = FILEOP_DOIT -} - -enum : UINT { - FILE_COMPRESSION_NONE, - FILE_COMPRESSION_WINLZA, - FILE_COMPRESSION_MSZIP, - FILE_COMPRESSION_NTCAB // = 3 -} - -enum : DWORD { - FLG_ADDREG_TYPE_SZ = 0x00000000, - FLG_ADDREG_BINVALUETYPE = 0x00000001, - FLG_ADDREG_NOCLOBBER = 0x00000002, - FLG_ADDREG_DELVAL = 0x00000004, - FLG_ADDREG_APPEND = 0x00000008, - FLG_ADDREG_KEYONLY = 0x00000010, - FLG_ADDREG_OVERWRITEONLY = 0x00000020, - FLG_ADDREG_TYPE_MULTI_SZ = 0x00010000, - FLG_ADDREG_TYPE_EXPAND_SZ = 0x00020000, - FLG_ADDREG_TYPE_BINARY = 0x00000000 | FLG_ADDREG_BINVALUETYPE, - FLG_ADDREG_TYPE_DWORD = 0x00010000 | FLG_ADDREG_BINVALUETYPE, - FLG_ADDREG_TYPE_NONE = 0x00020000 | FLG_ADDREG_BINVALUETYPE, - FLG_ADDREG_TYPE_MASK = 0xFFFF0000 | FLG_ADDREG_BINVALUETYPE -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - FLG_ADDREG_64BITKEY = 0x00001000, - FLG_ADDREG_KEYONLY_COMMON = 0x00002000, - FLG_ADDREG_32BITKEY = 0x00004000, - FLG_ADDREG_DELREG_BIT = 0x00008000 - } -} - -enum : DWORD { - FLG_DELREG_VALUE = 0x00000000 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - FLG_DELREG_TYPE_MASK = FLG_ADDREG_TYPE_MASK, - FLG_DELREG_TYPE_SZ = FLG_ADDREG_TYPE_SZ, - FLG_DELREG_TYPE_MULTI_SZ = FLG_ADDREG_TYPE_MULTI_SZ, - FLG_DELREG_TYPE_EXPAND_SZ = FLG_ADDREG_TYPE_EXPAND_SZ, - FLG_DELREG_TYPE_BINARY = FLG_ADDREG_TYPE_BINARY, - FLG_DELREG_TYPE_DWORD = FLG_ADDREG_TYPE_DWORD, - FLG_DELREG_TYPE_NONE = FLG_ADDREG_TYPE_NONE, - FLG_DELREG_64BITKEY = FLG_ADDREG_64BITKEY, - FLG_DELREG_KEYONLY_COMMON = FLG_ADDREG_KEYONLY_COMMON, - FLG_DELREG_32BITKEY = FLG_ADDREG_32BITKEY, - FLG_DELREG_OPERATION_MASK = 0x000000FE, - FLG_DELREG_MULTI_SZ_DELSTRING = 0x00000002 | FLG_DELREG_TYPE_MULTI_SZ | FLG_ADDREG_DELREG_BIT - } -} - -enum : DWORD { - FLG_BITREG_CLEARBITS = 0x00000000, - FLG_BITREG_SETBITS = 0x00000001 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - FLG_BITREG_64BITKEY = 0x00001000, - FLG_BITREG_32BITKEY = 0x00004000 - } -} - -enum : DWORD { - FLG_PROFITEM_CURRENTUSER = 0x00000001, - FLG_PROFITEM_DELETE = 0x00000002, - FLG_PROFITEM_GROUP = 0x00000004, - FLG_PROFITEM_CSIDL = 0x00000008 -} - -enum : DWORD { - FLG_REGSVR_DLLREGISTER = 0x00000001, - FLG_REGSVR_DLLINSTALL = 0x00000002 -} - -enum { - IDD_DYNAWIZ_FIRSTPAGE = 10000, - IDD_DYNAWIZ_SELECT_PREVPAGE, - IDD_DYNAWIZ_SELECT_NEXTPAGE, - IDD_DYNAWIZ_ANALYZE_PREVPAGE, - IDD_DYNAWIZ_ANALYZE_NEXTPAGE, // = 1004 - IDD_DYNAWIZ_INSTALLDETECTED_PREVPAGE = 10006, - IDD_DYNAWIZ_INSTALLDETECTED_NEXTPAGE, - IDD_DYNAWIZ_INSTALLDETECTED_NODEVS, - IDD_DYNAWIZ_SELECTDEV_PAGE, - IDD_DYNAWIZ_ANALYZEDEV_PAGE, - IDD_DYNAWIZ_INSTALLDETECTEDDEVS_PAGE, - IDD_DYNAWIZ_SELECTCLASS_PAGE, // = 10012 - MIN_IDD_DYNAWIZ_RESOURCE_ID = 10000, - MAX_IDD_DYNAWIZ_RESOURCE_ID = 11000 -} - -enum : DWORD { - IDF_NOBROWSE = 0x00000001, - IDF_NOSKIP = 0x00000002, - IDF_NODETAILS = 0x00000004, - IDF_NOCOMPRESSED = 0x00000008, - IDF_CHECKFIRST = 0x00000100, - IDF_NOBEEP = 0x00000200, - IDF_NOFOREGROUND = 0x00000400, - IDF_WARNIFSKIP = 0x00000800 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - IDF_NOREMOVABLEMEDIAPROMPT = 0x00001000, - IDF_USEDISKNAMEASPROMPT = 0x00002000, - IDF_OEMDISK = 0x80000000 - } -} - -enum { - IDI_RESOURCEFIRST = 159, - IDI_RESOURCE = 159, - IDI_RESOURCELAST = 161, - IDI_RESOURCEOVERLAYFIRST = 161, - IDI_RESOURCEOVERLAYLAST = 161, - IDI_CONFLICT = 161, - IDI_PROBLEM_OVL = 500, - IDI_DISABLED_OVL = 501, - IDI_FORCED_OVL = 502, - IDI_CLASSICON_OVERLAYFIRST = 500, - IDI_CLASSICON_OVERLAYLAST = 502 -} - -enum : DWORD { - INF_STYLE_NONE = 0x00000000, - INF_STYLE_OLDNT = 0x00000001, - INF_STYLE_WIN4 = 0x00000002, - INF_STYLE_CACHE_ENABLE = 0x00000010, - INF_STYLE_CACHE_DISABLE = 0x00000020 -} - -enum : DWORD { - INFINFO_INF_SPEC_IS_HINF = 1, - INFINFO_INF_NAME_IS_ABSOLUTE, - INFINFO_DEFAULT_SEARCH, - INFINFO_REVERSE_DEFAULT_SEARCH, - INFINFO_INF_PATH_LIST_SEARCH // = 5 -} - -alias DWORD LogSeverity; -enum : LogSeverity { - LogSevInformation, - LogSevWarning, - LogSevError, - LogSevFatalError, - LogSevMaximum // = 4 -} - -const MAX_INSTALLWIZARD_DYNAPAGES = 20; - -enum : DWORD { - NDW_INSTALLFLAG_DIDFACTDEFS = 0x00000001, - NDW_INSTALLFLAG_HARDWAREALLREADYIN = 0x00000002, - NDW_INSTALLFLAG_NEEDSHUTDOWN = 0x00000200, - NDW_INSTALLFLAG_EXPRESSINTRO = 0x00000400, - NDW_INSTALLFLAG_SKIPISDEVINSTALLED = 0x00000800, - NDW_INSTALLFLAG_NODETECTEDDEVS = 0x00001000, - NDW_INSTALLFLAG_INSTALLSPECIFIC = 0x00002000, - NDW_INSTALLFLAG_SKIPCLASSLIST = 0x00004000, - NDW_INSTALLFLAG_CI_PICKED_OEM = 0x00008000, - NDW_INSTALLFLAG_PCMCIAMODE = 0x00010000, - NDW_INSTALLFLAG_PCMCIADEVICE = 0x00020000, - NDW_INSTALLFLAG_USERCANCEL = 0x00040000, - NDW_INSTALLFLAG_KNOWNCLASS = 0x00080000, - NDW_INSTALLFLAG_NEEDRESTART = 0x00000080, - NDW_INSTALLFLAG_NEEDREBOOT = 0x00000100 -} - -enum : DWORD { - SETDIRID_NOT_FULL_PATH = 0x00000001 -} - -enum : DWORD { - SP_COPY_DELETESOURCE = 0x0000001, - SP_COPY_REPLACEONLY = 0x0000002, - SP_COPY_NEWER = 0x0000004, - SP_COPY_NEWER_OR_SAME = 0x0000004, - SP_COPY_NOOVERWRITE = 0x0000008, - SP_COPY_NODECOMP = 0x0000010, - SP_COPY_LANGUAGEAWARE = 0x0000020, - SP_COPY_SOURCE_ABSOLUTE = 0x0000040, - SP_COPY_SOURCEPATH_ABSOLUTE = 0x0000080, - SP_COPY_IN_USE_NEEDS_REBOOT = 0x0000100, - SP_COPY_FORCE_IN_USE = 0x0000200, - SP_COPY_NOSKIP = 0x0000400, - SP_FLAG_CABINETCONTINUATION = 0x0000800, - SP_COPY_FORCE_NOOVERWRITE = 0x0001000, - SP_COPY_FORCE_NEWER = 0x0002000, - SP_COPY_WARNIFSKIP = 0x0004000, - SP_COPY_NOBROWSE = 0x0008000, - SP_COPY_NEWER_ONLY = 0x0010000, - SP_COPY_SOURCE_SIS_MASTER = 0x0020000, - SP_COPY_OEMINF_CATALOG_ONLY = 0x0040000, - SP_COPY_REPLACE_BOOT_FILE = 0x0080000, - SP_COPY_NOPRUNE = 0x0100000 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - SP_COPY_OEM_F6_INF = 0x0200000 - } -} - -enum : DWORD { - SPCRP_SECURITY = 23, - SPCRP_SECURITY_SDS, - SPCRP_DEVTYPE, - SPCRP_EXCLUSIVE, - SPCRP_CHARACTERISTICS, - SPCRP_MAXIMUM_PROPERTY // = 28 -} - -enum : DWORD { - SPDIT_NODRIVER, - SPDIT_CLASSDRIVER, - SPDIT_COMPATDRIVER // = 2 -} - -enum : DWORD { - SPDRP_DEVICEDESC, - SPDRP_HARDWAREID, - SPDRP_COMPATIBLEIDS, - SPDRP_UNUSED0, - SPDRP_SERVICE, - SPDRP_UNUSED1, - SPDRP_UNUSED2, - SPDRP_CLASS, - SPDRP_CLASSGUID, - SPDRP_DRIVER, - SPDRP_CONFIGFLAGS, - SPDRP_MFG, - SPDRP_FRIENDLYNAME, - SPDRP_LOCATION_INFORMATION, - SPDRP_PHYSICAL_DEVICE_OBJECT_NAME, - SPDRP_CAPABILITIES, - SPDRP_UI_NUMBER, - SPDRP_UPPERFILTERS, - SPDRP_LOWERFILTERS, - SPDRP_BUSTYPEGUID, - SPDRP_LEGACYBUSTYPE, - SPDRP_BUSNUMBER, - SPDRP_ENUMERATOR_NAME, - SPDRP_SECURITY, - SPDRP_SECURITY_SDS, - SPDRP_DEVTYPE, - SPDRP_EXCLUSIVE, - SPDRP_CHARACTERISTICS, - SPDRP_ADDRESS, // = 28 - SPDRP_UI_NUMBER_DESC_FORMAT = 30, - SPDRP_MAXIMUM_PROPERTY = 31 -} - -enum : UINT { - SPDSL_IGNORE_DISK = 1, - SPDSL_DISALLOW_NEGATIVE_ADJUST -} - -enum : UINT { - SPFILENOTIFY_STARTQUEUE = 1, - SPFILENOTIFY_ENDQUEUE, - SPFILENOTIFY_STARTSUBQUEUE, - SPFILENOTIFY_ENDSUBQUEUE, - SPFILENOTIFY_STARTDELETE, - SPFILENOTIFY_ENDDELETE, - SPFILENOTIFY_DELETEERROR, - SPFILENOTIFY_STARTRENAME, - SPFILENOTIFY_ENDRENAME, - SPFILENOTIFY_RENAMEERROR, - SPFILENOTIFY_STARTCOPY, - SPFILENOTIFY_ENDCOPY, - SPFILENOTIFY_COPYERROR, - SPFILENOTIFY_NEEDMEDIA, - SPFILENOTIFY_QUEUESCAN, - SPFILENOTIFY_CABINETINFO, - SPFILENOTIFY_FILEINCABINET, - SPFILENOTIFY_NEEDNEWCABINET, - SPFILENOTIFY_FILEEXTRACTED, - SPFILENOTIFY_FILEOPDELAYED, - SPFILENOTIFY_STARTBACKUP, - SPFILENOTIFY_BACKUPERROR, - SPFILENOTIFY_ENDBACKUP, - SPFILENOTIFY_QUEUESCAN_EX, - SPFILENOTIFY_STARTREGISTRATION, // = 25 - SPFILENOTIFY_ENDREGISTRATION = 32, - SPFILENOTIFY_LANGMISMATCH = 0x00010000, - SPFILENOTIFY_TARGETEXISTS = 0x00020000, - SPFILENOTIFY_TARGETNEWER = 0x00040000 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : UINT { - SPFILENOTIFY_QUEUESCAN_SIGNERINFO = 0x00000040 - } -} - -enum : DWORD { - SPFILELOG_SYSTEMLOG = 0x00000001, - SPFILELOG_OEMFILE = 0x00000001, - SPFILELOG_FORCENEW = 0x00000002, - SPFILELOG_QUERYONLY = 0x00000004 -} - -enum : INT { - SPFILEQ_FILE_IN_USE = 0x00000001, - SPFILEQ_REBOOT_RECOMMENDED = 0x00000002, - SPFILEQ_REBOOT_IN_PROGRESS = 0x00000004 -} - -enum : DWORD { - SPINT_ACTIVE = 0x00000001, - SPINT_DEFAULT = 0x00000002, - SPINT_REMOVED = 0x00000004 -} - -deprecated enum : DWORD { - SPID_ACTIVE = SPINT_ACTIVE, - SPID_DEFAULT = SPINT_DEFAULT, - SPID_REMOVED = SPINT_REMOVED -} - -enum : UINT { - SPINST_LOGCONFIG = 0x00000001, - SPINST_INIFILES = 0x00000002, - SPINST_REGISTRY = 0x00000004, - SPINST_INI2REG = 0x00000008, - SPINST_FILES = 0x00000010, - SPINST_BITREG = 0x00000020, - SPINST_REGSVR = 0x00000040, - SPINST_UNREGSVR = 0x00000080, - SPINST_PROFILEITEMS = 0x00000100, - SPINST_SINGLESECTION = 0x00010000, - SPINST_LOGCONFIG_IS_FORCED = 0x00020000, - SPINST_LOGCONFIGS_ARE_OVERRIDES = 0x00040000 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : UINT { - SPINST_COPYINF = 0x00000200, - SPINST_ALL = 0x000003ff, - SPINST_REGISTERCALLBACKAWARE = 0x00080000 - } -} else { - enum : UINT { - SPINST_ALL = 0x000001ff - } -} - -enum : DWORD { - SPOST_NONE, - SPOST_PATH, - SPOST_URL, - SPOST_MAX // = 3 -} - -enum : DWORD { - SPPSR_SELECT_DEVICE_RESOURCES = 1, - SPPSR_ENUM_BASIC_DEVICE_PROPERTIES, - SPPSR_ENUM_ADV_DEVICE_PROPERTIES -} - -enum : DWORD { - SPQ_SCAN_FILE_PRESENCE = 0x00000001, - SPQ_SCAN_FILE_VALIDITY = 0x00000002, - SPQ_SCAN_USE_CALLBACK = 0x00000004, - SPQ_SCAN_USE_CALLBACKEX = 0x00000008, - SPQ_SCAN_INFORM_USER = 0x00000010, - SPQ_SCAN_PRUNE_COPY_QUEUE = 0x00000020 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - SPQ_SCAN_USE_CALLBACK_SIGNERINFO = 0x00000040, - SPQ_SCAN_PRUNE_DELREN = 0x00000080 - } -} - -enum : UINT_PTR { - SPQ_DELAYED_COPY = 0x00000001 -} - -enum : DWORD { - SPRDI_FIND_DUPS = 0x00000001, -} - -enum : DWORD { - SPSVCINST_TAGTOFRONT = 0x00000001, - SPSVCINST_ASSOCSERVICE = 0x00000002, - SPSVCINST_DELETEEVENTLOGENTRY = 0x00000004, - SPSVCINST_NOCLOBBER_DISPLAYNAME = 0x00000008, - SPSVCINST_NOCLOBBER_STARTTYPE = 0x00000010, - SPSVCINST_NOCLOBBER_ERRORCONTROL = 0x00000020, - SPSVCINST_NOCLOBBER_LOADORDERGROUP = 0x00000040, - SPSVCINST_NOCLOBBER_DEPENDENCIES = 0x00000080, - SPSVCINST_NOCLOBBER_DESCRIPTION = 0x00000100, - SPSVCINST_STOPSERVICE = 0x00000200 -} - -static if(_SETUPAPI_VER >= 0x0501) { - enum : DWORD { - SPSVCINST_CLOBBER_SECURITY = 0x00000400 - } -} - -enum : DWORD { - SPWPT_SELECTDEVICE = 0x00000001 -} - -enum : DWORD { - SPWP_USE_DEVINFO_DATA = 0x00000001 -} - -enum : UINT { - SRCINFO_PATH = 1, - SRCINFO_TAGFILE, - SRCINFO_DESCRIPTION, - SRCINFO_FLAGS // = 4 -} - -enum : DWORD { - SRCLIST_TEMPORARY = 0x00000001, - SRCLIST_NOBROWSE = 0x00000002, - SRCLIST_SYSTEM = 0x00000010, - SRCLIST_USER = 0x00000020, - SRCLIST_SYSIFADMIN = 0x00000040, - SRCLIST_SUBDIRS = 0x00000100, - SRCLIST_APPEND = 0x00000200, - SRCLIST_NOSTRIPPLATFORM = 0x00000400 -} - -alias PVOID HINF; -alias PVOID HDSKSPC; -mixin DECLARE_HANDLE!("HDEVINFO"); -alias PVOID HSPFILEQ; -alias PVOID HSPFILELOG; - -enum SetupFileLogInfo { - SetupFileLogSourceFilename, - SetupFileLogChecksum, - SetupFileLogDiskTagfile, - SetupFileLogDiskDescription, - SetupFileLogOtherInfo, - SetupFileLogMax -} - -align(1): - -struct INFCONTEXT { - PVOID Inf; - PVOID CurrentInf; - UINT Section; - UINT Line; -} -alias INFCONTEXT* PINFCONTEXT; - -struct SP_INF_INFORMATION { - DWORD InfStyle; - DWORD InfCount; - BYTE[1] _VersionData; - BYTE* VersionData() { return _VersionData.ptr; } -} -alias SP_INF_INFORMATION* PSP_INF_INFORMATION; - -struct SP_ALTPLATFORM_INFO { - DWORD cbSize = SP_ALTPLATFORM_INFO.sizeof; - DWORD Platform; - DWORD MajorVersion; - DWORD MinorVersion; - WORD ProcessorArchitecture; - WORD Reserved; -} -alias SP_ALTPLATFORM_INFO* PSP_ALTPLATFORM_INFO; - -struct SP_ORIGINAL_FILE_INFO_A { - DWORD cbSize = SP_ORIGINAL_FILE_INFO_A.sizeof; - CHAR[MAX_PATH] OriginalInfName; - CHAR[MAX_PATH] OriginalCatalogName; -} -alias SP_ORIGINAL_FILE_INFO_A* PSP_ORIGINAL_FILE_INFO_A; - -struct SP_ORIGINAL_FILE_INFO_W { - DWORD cbSize = SP_ORIGINAL_FILE_INFO_W.sizeof; - WCHAR[MAX_PATH] OriginalInfName; - WCHAR[MAX_PATH] OriginalCatalogName; -} -alias SP_ORIGINAL_FILE_INFO_W* PSP_ORIGINAL_FILE_INFO_W; - -struct FILEPATHS_A { - PCSTR Target; - PCSTR Source; - UINT Win32Error; - DWORD Flags; -} -alias FILEPATHS_A* PFILEPATHS_A; - -struct FILEPATHS_W { - PCWSTR Target; - PCWSTR Source; - UINT Win32Error; - DWORD Flags; -} -alias FILEPATHS_W* PFILEPATHS_W; - -struct SOURCE_MEDIA_A { - PCSTR Reserved; - PCSTR Tagfile; - PCSTR Description; - PCSTR SourcePath; - PCSTR SourceFile; - DWORD Flags; -} -alias SOURCE_MEDIA_A* PSOURCE_MEDIA_A; - -struct SOURCE_MEDIA_W { - PCWSTR Reserved; - PCWSTR Tagfile; - PCWSTR Description; - PCWSTR SourcePath; - PCWSTR SourceFile; - DWORD Flags; -} -alias SOURCE_MEDIA_W* PSOURCE_MEDIA_W; - -struct CABINET_INFO_A { - PCSTR CabinetPath; - PCSTR CabinetFile; - PCSTR DiskName; - USHORT SetId; - USHORT CabinetNumber; -} -alias CABINET_INFO_A* PCABINET_INFO_A; - -struct CABINET_INFO_W { - PCWSTR CabinetPath; - PCWSTR CabinetFile; - PCWSTR DiskName; - USHORT SetId; - USHORT CabinetNumber; -} -alias CABINET_INFO_W* PCABINET_INFO_W; - -struct FILE_IN_CABINET_INFO_A { - PCSTR NameInCabinet; - DWORD FileSize; - DWORD Win32Error; - WORD DosDate; - WORD DosTime; - WORD DosAttribs; - CHAR[MAX_PATH] FullTargetName; -} -alias FILE_IN_CABINET_INFO_A* PFILE_IN_CABINET_INFO_A; - -struct FILE_IN_CABINET_INFO_W { - PCWSTR NameInCabinet; - DWORD FileSize; - DWORD Win32Error; - WORD DosDate; - WORD DosTime; - WORD DosAttribs; - WCHAR[MAX_PATH] FullTargetName; -} -alias FILE_IN_CABINET_INFO_W* PFILE_IN_CABINET_INFO_W; - -struct SP_FILE_COPY_PARAMS_A { - DWORD cbSize = SP_FILE_COPY_PARAMS_A.sizeof; - HSPFILEQ QueueHandle; - PCSTR SourceRootPath; - PCSTR SourcePath; - PCSTR SourceFilename; - PCSTR SourceDescription; - PCSTR SourceTagfile; - PCSTR TargetDirectory; - PCSTR TargetFilename; - DWORD CopyStyle; - HINF LayoutInf; - PCSTR SecurityDescriptor; -} -alias SP_FILE_COPY_PARAMS_A* PSP_FILE_COPY_PARAMS_A; - -struct SP_FILE_COPY_PARAMS_W { - DWORD cbSize = SP_FILE_COPY_PARAMS_W.sizeof; - HSPFILEQ QueueHandle; - PCWSTR SourceRootPath; - PCWSTR SourcePath; - PCWSTR SourceFilename; - PCWSTR SourceDescription; - PCWSTR SourceTagfile; - PCWSTR TargetDirectory; - PCWSTR TargetFilename; - DWORD CopyStyle; - HINF LayoutInf; - PCWSTR SecurityDescriptor; -} -alias SP_FILE_COPY_PARAMS_W* PSP_FILE_COPY_PARAMS_W; - -struct SP_DEVINFO_DATA { - DWORD cbSize = SP_DEVINFO_DATA.sizeof; - GUID ClassGuid; - DWORD DevInst; - ULONG_PTR Reserved; -} -alias SP_DEVINFO_DATA* PSP_DEVINFO_DATA; - -struct SP_DEVICE_INTERFACE_DATA { - DWORD cbSize = SP_DEVICE_INTERFACE_DATA.sizeof; - GUID InterfaceClassGuid; - DWORD Flags; - ULONG_PTR Reserved; -} -alias SP_DEVICE_INTERFACE_DATA* PSP_DEVICE_INTERFACE_DATA; -deprecated alias SP_DEVICE_INTERFACE_DATA SP_INTERFACE_DEVICE_DATA; -deprecated alias SP_DEVICE_INTERFACE_DATA* PSP_INTERFACE_DEVICE_DATA; - -struct SP_DEVICE_INTERFACE_DETAIL_DATA_A { - DWORD cbSize = SP_DEVICE_INTERFACE_DETAIL_DATA_A.sizeof; - CHAR[1] _DevicePath; - CHAR* DevicePath() { return _DevicePath.ptr; } -} -alias SP_DEVICE_INTERFACE_DETAIL_DATA_A* PSP_DEVICE_INTERFACE_DETAIL_DATA_A; - -struct SP_DEVICE_INTERFACE_DETAIL_DATA_W { - DWORD cbSize = SP_DEVICE_INTERFACE_DETAIL_DATA_W.sizeof; - WCHAR[1] _DevicePath; - WCHAR* DevicePath() { return _DevicePath.ptr; } -} -alias SP_DEVICE_INTERFACE_DETAIL_DATA_W* PSP_DEVICE_INTERFACE_DETAIL_DATA_W; - -deprecated alias SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA_A; -deprecated alias SP_DEVICE_INTERFACE_DETAIL_DATA_A* PSP_INTERFACE_DEVICE_DETAIL_DATA_A; -deprecated alias SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA_W; -deprecated alias SP_DEVICE_INTERFACE_DETAIL_DATA_W* PSP_INTERFACE_DEVICE_DETAIL_DATA_W; - -struct SP_DEVINFO_LIST_DETAIL_DATA_A { - DWORD cbSize = SP_DEVINFO_LIST_DETAIL_DATA_A.sizeof; - GUID ClassGuid; - HANDLE RemoteMachineHandle; - CHAR[SP_MAX_MACHINENAME_LENGTH] RemoteMachineName; -} -alias SP_DEVINFO_LIST_DETAIL_DATA_A* PSP_DEVINFO_LIST_DETAIL_DATA_A; - -struct SP_DEVINFO_LIST_DETAIL_DATA_W { - DWORD cbSize = SP_DEVINFO_LIST_DETAIL_DATA_W.sizeof; - GUID ClassGuid; - HANDLE RemoteMachineHandle; - WCHAR[SP_MAX_MACHINENAME_LENGTH] RemoteMachineName; -} -alias SP_DEVINFO_LIST_DETAIL_DATA_W* PSP_DEVINFO_LIST_DETAIL_DATA_W; - -extern(Windows) alias UINT function(PVOID, UINT, UINT_PTR, UINT_PTR) PSP_FILE_CALLBACK_A; -extern(Windows) alias UINT function(PVOID, UINT, UINT_PTR, UINT_PTR) PSP_FILE_CALLBACK_W; - -struct SP_DEVINSTALL_PARAMS_A { - DWORD cbSize = SP_DEVINSTALL_PARAMS_A.sizeof; - DWORD Flags; - DWORD FlagsEx; - HWND hwndParent; - PSP_FILE_CALLBACK_A InstallMsgHandler; - PVOID InstallMsgHandlerContext; - HSPFILEQ FileQueue; - ULONG_PTR ClassInstallReserved; - DWORD Reserved; - CHAR[MAX_PATH] DriverPath; -} -alias SP_DEVINSTALL_PARAMS_A* PSP_DEVINSTALL_PARAMS_A; - -struct SP_DEVINSTALL_PARAMS_W { - DWORD cbSize = SP_DEVINSTALL_PARAMS_W.sizeof; - DWORD Flags; - DWORD FlagsEx; - HWND hwndParent; - PSP_FILE_CALLBACK_W InstallMsgHandler; - PVOID InstallMsgHandlerContext; - HSPFILEQ FileQueue; - ULONG_PTR ClassInstallReserved; - DWORD Reserved; - WCHAR[MAX_PATH] DriverPath; -} -alias SP_DEVINSTALL_PARAMS_W* PSP_DEVINSTALL_PARAMS_W; - -struct SP_CLASSINSTALL_HEADER { - DWORD cbSize = SP_CLASSINSTALL_HEADER.sizeof; - DI_FUNCTION InstallFunction; -} -alias SP_CLASSINSTALL_HEADER* PSP_CLASSINSTALL_HEADER; - -struct SP_ENABLECLASS_PARAMS { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - GUID ClassGuid; - DWORD EnableMessage; -} -alias SP_ENABLECLASS_PARAMS* PSP_ENABLECLASS_PARAMS; - -struct SP_MOVEDEV_PARAMS { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - SP_DEVINFO_DATA SourceDeviceInfoData; -} -alias SP_MOVEDEV_PARAMS* PSP_MOVEDEV_PARAMS; - -struct SP_PROPCHANGE_PARAMS { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - DWORD StateChange; - DWORD Scope; - DWORD HwProfile; -} -alias SP_PROPCHANGE_PARAMS* PSP_PROPCHANGE_PARAMS; - -struct SP_REMOVEDEVICE_PARAMS { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - DWORD Scope; - DWORD HwProfile; -} -alias SP_REMOVEDEVICE_PARAMS* PSP_REMOVEDEVICE_PARAMS; - -struct SP_UNREMOVEDEVICE_PARAMS { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - DWORD Scope; - DWORD HwProfile; -} -alias SP_UNREMOVEDEVICE_PARAMS* PSP_UNREMOVEDEVICE_PARAMS; - -struct SP_SELECTDEVICE_PARAMS_A { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - CHAR[MAX_TITLE_LEN] Title; - CHAR[MAX_INSTRUCTION_LEN] Instructions; - CHAR[MAX_LABEL_LEN] ListLabel; - CHAR[MAX_SUBTITLE_LEN] SubTitle; - BYTE[2] Reserved; -} -alias SP_SELECTDEVICE_PARAMS_A* PSP_SELECTDEVICE_PARAMS_A; - -struct SP_SELECTDEVICE_PARAMS_W { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - WCHAR[MAX_TITLE_LEN] Title; - WCHAR[MAX_INSTRUCTION_LEN] Instructions; - WCHAR[MAX_LABEL_LEN] ListLabel; - WCHAR[MAX_SUBTITLE_LEN] SubTitle; -} -alias SP_SELECTDEVICE_PARAMS_W* PSP_SELECTDEVICE_PARAMS_W; - -extern(Windows) alias BOOL function(PVOID, DWORD) PDETECT_PROGRESS_NOTIFY; - -struct SP_DETECTDEVICE_PARAMS { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - PDETECT_PROGRESS_NOTIFY DetectProgressNotify; - PVOID ProgressNotifyParam; -} -alias SP_DETECTDEVICE_PARAMS* PSP_DETECTDEVICE_PARAMS; - -struct SP_INSTALLWIZARD_DATA { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - DWORD Flags; - HPROPSHEETPAGE[MAX_INSTALLWIZARD_DYNAPAGES] DynamicPages; - DWORD NumDynamicPages; - DWORD DynamicPageFlags; - DWORD PrivateFlags; - LPARAM PrivateData; - HWND hwndWizardDlg; -} -alias SP_INSTALLWIZARD_DATA* PSP_INSTALLWIZARD_DATA; - -struct SP_NEWDEVICEWIZARD_DATA { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - DWORD Flags; - HPROPSHEETPAGE[MAX_INSTALLWIZARD_DYNAPAGES] DynamicPages; - DWORD NumDynamicPages; - HWND hwndWizardDlg; -} -alias SP_NEWDEVICEWIZARD_DATA* PSP_NEWDEVICEWIZARD_DATA; -alias SP_NEWDEVICEWIZARD_DATA SP_ADDPROPERTYPAGE_DATA; -alias SP_NEWDEVICEWIZARD_DATA* PSP_ADDPROPERTYPAGE_DATA; - -struct SP_TROUBLESHOOTER_PARAMS_A { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - CHAR[MAX_PATH] ChmFile; - CHAR[MAX_PATH] HtmlTroubleShooter; -} -alias SP_TROUBLESHOOTER_PARAMS_A* PSP_TROUBLESHOOTER_PARAMS_A; - -struct SP_TROUBLESHOOTER_PARAMS_W { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - WCHAR[MAX_PATH] ChmFile; - WCHAR[MAX_PATH] HtmlTroubleShooter; -} -alias SP_TROUBLESHOOTER_PARAMS_W* PSP_TROUBLESHOOTER_PARAMS_W; - -struct SP_POWERMESSAGEWAKE_PARAMS_A { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - CHAR PowerMessageWake[LINE_LEN*2]; -} -alias SP_POWERMESSAGEWAKE_PARAMS_A* PSP_POWERMESSAGEWAKE_PARAMS_A; - -struct SP_POWERMESSAGEWAKE_PARAMS_W { - SP_CLASSINSTALL_HEADER ClassInstallHeader; - WCHAR PowerMessageWake[LINE_LEN*2]; -} -alias SP_POWERMESSAGEWAKE_PARAMS_W* PSP_POWERMESSAGEWAKE_PARAMS_W; - -struct SP_DRVINFO_DATA_V2_A { - DWORD cbSize = SP_DRVINFO_DATA_V2_A.sizeof; - DWORD DriverType; - ULONG_PTR Reserved; - CHAR[LINE_LEN] Description; - CHAR[LINE_LEN] MfgName; - CHAR[LINE_LEN] ProviderName; - FILETIME DriverDate; - DWORDLONG DriverVersion; -} -alias SP_DRVINFO_DATA_V2_A* PSP_DRVINFO_DATA_V2_A; - -struct SP_DRVINFO_DATA_V2_W { - DWORD cbSize = SP_DRVINFO_DATA_V2_A.sizeof; - DWORD DriverType; - ULONG_PTR Reserved; - WCHAR[LINE_LEN] Description; - WCHAR[LINE_LEN] MfgName; - WCHAR[LINE_LEN] ProviderName; - FILETIME DriverDate; - DWORDLONG DriverVersion; -} -alias SP_DRVINFO_DATA_V2_W* PSP_DRVINFO_DATA_V2_W; - -struct SP_DRVINFO_DATA_V1_A { - DWORD cbSize = SP_DRVINFO_DATA_V1_A.sizeof; - DWORD DriverType; - ULONG_PTR Reserved; - CHAR[LINE_LEN] Description; - CHAR[LINE_LEN] MfgName; - CHAR[LINE_LEN] ProviderName; -} -alias SP_DRVINFO_DATA_V1_A* PSP_DRVINFO_DATA_V1_A; - -struct SP_DRVINFO_DATA_V1_W { - DWORD cbSize = SP_DRVINFO_DATA_V1_W.sizeof; - DWORD DriverType; - ULONG_PTR Reserved; - WCHAR[LINE_LEN] Description; - WCHAR[LINE_LEN] MfgName; - WCHAR[LINE_LEN] ProviderName; -} -alias SP_DRVINFO_DATA_V1_W* PSP_DRVINFO_DATA_V1_W; - -version (Unicode) { - alias SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_V1; - alias SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_V2; -} else { - alias SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_V1; - alias SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_V2; -} -alias SP_DRVINFO_DATA_V1* PSP_DRVINFO_DATA_V1; -alias SP_DRVINFO_DATA_V2* PSP_DRVINFO_DATA_V2; - -static if(USE_SP_DRVINFO_DATA_V1) { - alias SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_A; - alias SP_DRVINFO_DATA_V1_A* PSP_DRVINFO_DATA_A; - alias SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_W; - alias SP_DRVINFO_DATA_V1_W* PSP_DRVINFO_DATA_W; - alias SP_DRVINFO_DATA_V1 SP_DRVINFO_DATA; - alias SP_DRVINFO_DATA_V1* PSP_DRVINFO_DATA; -} else { - alias SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_A; - alias SP_DRVINFO_DATA_V2_A* PSP_DRVINFO_DATA_A; - alias SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_W; - alias SP_DRVINFO_DATA_V2_W* PSP_DRVINFO_DATA_W; - alias SP_DRVINFO_DATA_V2 SP_DRVINFO_DATA; - alias SP_DRVINFO_DATA_V2* PSP_DRVINFO_DATA; -} - -extern(Windows) alias DWORD function(HDEVINFO, PSP_DEVINFO_DATA, PSP_DEVINFO_DATA, PVOID) PSP_DETSIG_CMPPROC; - -struct SP_DRVINFO_DETAIL_DATA_A { - DWORD cbSize = SP_DRVINFO_DETAIL_DATA_A.sizeof; - FILETIME InfDate; - DWORD CompatIDsOffset; - DWORD CompatIDsLength; - ULONG_PTR Reserved; - CHAR[LINE_LEN] SectionName; - CHAR[MAX_PATH] InfFileName; - CHAR[LINE_LEN] DrvDescription; - CHAR[1] _HardwareID; - CHAR* HardwareID() { return _HardwareID.ptr; } -} -alias SP_DRVINFO_DETAIL_DATA_A* PSP_DRVINFO_DETAIL_DATA_A; - -struct SP_DRVINFO_DETAIL_DATA_W { - DWORD cbSize = SP_DRVINFO_DETAIL_DATA_W.sizeof; - FILETIME InfDate; - DWORD CompatIDsOffset; - DWORD CompatIDsLength; - ULONG_PTR Reserved; - WCHAR[LINE_LEN] SectionName; - WCHAR[MAX_PATH] InfFileName; - WCHAR[LINE_LEN] DrvDescription; - WCHAR[1] _HardwareID; - WCHAR* HardwareID() { return _HardwareID.ptr; } -} -alias SP_DRVINFO_DETAIL_DATA_W* PSP_DRVINFO_DETAIL_DATA_W; - -struct SP_DRVINSTALL_PARAMS { - DWORD cbSize = SP_DRVINSTALL_PARAMS.sizeof; - DWORD Rank; - DWORD Flags; - DWORD_PTR PrivateData; - DWORD Reserved; -} -alias SP_DRVINSTALL_PARAMS* PSP_DRVINSTALL_PARAMS; - -struct COINSTALLER_CONTEXT_DATA { - BOOL PostProcessing; - DWORD InstallResult; - PVOID PrivateData; -} -alias COINSTALLER_CONTEXT_DATA* PCOINSTALLER_CONTEXT_DATA; - -struct SP_CLASSIMAGELIST_DATA { - DWORD cbSize = SP_CLASSIMAGELIST_DATA.sizeof; - HIMAGELIST ImageList; - ULONG_PTR Reserved; -} -alias SP_CLASSIMAGELIST_DATA* PSP_CLASSIMAGELIST_DATA; - -struct SP_PROPSHEETPAGE_REQUEST { - DWORD cbSize = SP_PROPSHEETPAGE_REQUEST.sizeof; - DWORD PageRequested; - HDEVINFO DeviceInfoSet; - PSP_DEVINFO_DATA DeviceInfoData; -} -alias SP_PROPSHEETPAGE_REQUEST* PSP_PROPSHEETPAGE_REQUEST; - -struct SP_BACKUP_QUEUE_PARAMS_A { - DWORD cbSize = SP_BACKUP_QUEUE_PARAMS_A.sizeof; - CHAR[MAX_PATH] FullInfPath; - INT FilenameOffset; -} -alias SP_BACKUP_QUEUE_PARAMS_A* PSP_BACKUP_QUEUE_PARAMS_A; - -struct SP_BACKUP_QUEUE_PARAMS_W { - DWORD cbSize = SP_BACKUP_QUEUE_PARAMS_W.sizeof; - WCHAR[MAX_PATH] FullInfPath; - INT FilenameOffset; -} -alias SP_BACKUP_QUEUE_PARAMS_W* PSP_BACKUP_QUEUE_PARAMS_W; - -version (Unicode) { - alias SP_ORIGINAL_FILE_INFO_W SP_ORIGINAL_FILE_INFO; - alias SP_ORIGINAL_FILE_INFO_W* PSP_ORIGINAL_FILE_INFO; - alias FILEPATHS_W FILEPATHS; - alias FILEPATHS_W* PFILEPATHS; - alias SOURCE_MEDIA_W SOURCE_MEDIA; - alias SOURCE_MEDIA_W* PSOURCE_MEDIA; - alias CABINET_INFO_W CABINET_INFO; - alias CABINET_INFO_W* PCABINET_INFO; - alias FILE_IN_CABINET_INFO_W FILE_IN_CABINET_INFO; - alias FILE_IN_CABINET_INFO_W* PFILE_IN_CABINET_INFO; - alias SP_FILE_COPY_PARAMS_W SP_FILE_COPY_PARAMS; - alias SP_FILE_COPY_PARAMS_W* PSP_FILE_COPY_PARAMS; - alias SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_DEVICE_INTERFACE_DETAIL_DATA; - alias SP_DEVICE_INTERFACE_DETAIL_DATA_W* PSP_DEVICE_INTERFACE_DETAIL_DATA; - deprecated { - alias SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA; - alias SP_DEVICE_INTERFACE_DETAIL_DATA_W* PSP_INTERFACE_DEVICE_DETAIL_DATA; - } - alias SP_DEVINFO_LIST_DETAIL_DATA_W SP_DEVINFO_LIST_DETAIL_DATA; - alias SP_DEVINFO_LIST_DETAIL_DATA_W *PSP_DEVINFO_LIST_DETAIL_DATA; - alias SP_DEVINSTALL_PARAMS_W SP_DEVINSTALL_PARAMS; - alias SP_DEVINSTALL_PARAMS_W* PSP_DEVINSTALL_PARAMS; - alias SP_SELECTDEVICE_PARAMS_W SP_SELECTDEVICE_PARAMS; - alias SP_SELECTDEVICE_PARAMS_W* PSP_SELECTDEVICE_PARAMS; - alias SP_TROUBLESHOOTER_PARAMS_W SP_TROUBLESHOOTER_PARAMS; - alias SP_TROUBLESHOOTER_PARAMS_W* PSP_TROUBLESHOOTER_PARAMS; - alias SP_POWERMESSAGEWAKE_PARAMS_W SP_POWERMESSAGEWAKE_PARAMS; - alias SP_POWERMESSAGEWAKE_PARAMS_W* PSP_POWERMESSAGEWAKE_PARAMS; - alias SP_DRVINFO_DETAIL_DATA_W SP_DRVINFO_DETAIL_DATA; - alias SP_DRVINFO_DETAIL_DATA_W* PSP_DRVINFO_DETAIL_DATA; - alias SP_BACKUP_QUEUE_PARAMS_W SP_BACKUP_QUEUE_PARAMS; - alias SP_BACKUP_QUEUE_PARAMS_W* PSP_BACKUP_QUEUE_PARAMS; -} else { - alias SP_ORIGINAL_FILE_INFO_A SP_ORIGINAL_FILE_INFO; - alias SP_ORIGINAL_FILE_INFO_A* PSP_ORIGINAL_FILE_INFO; - alias FILEPATHS_A FILEPATHS; - alias FILEPATHS_A* PFILEPATHS; - alias SOURCE_MEDIA_A SOURCE_MEDIA; - alias SOURCE_MEDIA_A* PSOURCE_MEDIA; - alias CABINET_INFO_A CABINET_INFO; - alias CABINET_INFO_A* PCABINET_INFO; - alias FILE_IN_CABINET_INFO_A FILE_IN_CABINET_INFO; - alias FILE_IN_CABINET_INFO_A* PFILE_IN_CABINET_INFO; - alias SP_FILE_COPY_PARAMS_A SP_FILE_COPY_PARAMS; - alias SP_FILE_COPY_PARAMS_A* PSP_FILE_COPY_PARAMS; - alias SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_DEVICE_INTERFACE_DETAIL_DATA; - alias SP_DEVICE_INTERFACE_DETAIL_DATA_A* PSP_DEVICE_INTERFACE_DETAIL_DATA; - deprecated { - alias SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA; - alias SP_DEVICE_INTERFACE_DETAIL_DATA_A* PSP_INTERFACE_DEVICE_DETAIL_DATA; - } - alias SP_DEVINFO_LIST_DETAIL_DATA_A SP_DEVINFO_LIST_DETAIL_DATA; - alias SP_DEVINFO_LIST_DETAIL_DATA_A* PSP_DEVINFO_LIST_DETAIL_DATA; - alias SP_DEVINSTALL_PARAMS_A SP_DEVINSTALL_PARAMS; - alias SP_DEVINSTALL_PARAMS_A* PSP_DEVINSTALL_PARAMS; - alias SP_SELECTDEVICE_PARAMS_A SP_SELECTDEVICE_PARAMS; - alias SP_SELECTDEVICE_PARAMS_A* PSP_SELECTDEVICE_PARAMS; - alias SP_TROUBLESHOOTER_PARAMS_A SP_TROUBLESHOOTER_PARAMS; - alias SP_TROUBLESHOOTER_PARAMS_A* PSP_TROUBLESHOOTER_PARAMS; - alias SP_POWERMESSAGEWAKE_PARAMS_A SP_POWERMESSAGEWAKE_PARAMS; - alias SP_POWERMESSAGEWAKE_PARAMS_A* PSP_POWERMESSAGEWAKE_PARAMS; - alias SP_DRVINFO_DETAIL_DATA_A SP_DRVINFO_DETAIL_DATA; - alias SP_DRVINFO_DETAIL_DATA_A* PSP_DRVINFO_DETAIL_DATA; - alias SP_BACKUP_QUEUE_PARAMS_A SP_BACKUP_QUEUE_PARAMS; - alias SP_BACKUP_QUEUE_PARAMS_A* PSP_BACKUP_QUEUE_PARAMS; -} - -extern (Windows) { - BOOL SetupAddInstallSectionToDiskSpaceListA(HDSKSPC, HINF, HINF, PCSTR, PVOID, UINT); - BOOL SetupAddInstallSectionToDiskSpaceListW(HDSKSPC, HINF, HINF, PCWSTR, PVOID, UINT); - BOOL SetupAddSectionToDiskSpaceListA(HDSKSPC, HINF, HINF, PCSTR, UINT, PVOID, UINT); - BOOL SetupAddSectionToDiskSpaceListW(HDSKSPC, HINF, HINF, PCWSTR, UINT, PVOID, UINT); - BOOL SetupAddToDiskSpaceListA(HDSKSPC, PCSTR, LONGLONG, UINT, PVOID, UINT); - BOOL SetupAddToDiskSpaceListW(HDSKSPC, PCWSTR, LONGLONG, UINT, PVOID, UINT); - BOOL SetupAddToSourceListA(DWORD, PCSTR); - BOOL SetupAddToSourceListW(DWORD, PCWSTR); - BOOL SetupQuerySourceListA(DWORD, PCSTR**List, PUINT); - BOOL SetupQuerySourceListW(DWORD, PCWSTR**List, PUINT); - BOOL SetupFreeSourceListA(PCSTR**List, UINT); - BOOL SetupFreeSourceListW(PCWSTR**List, UINT); - BOOL SetupAdjustDiskSpaceListA(HDSKSPC, LPCSTR, LONGLONG, PVOID, UINT); - BOOL SetupAdjustDiskSpaceListW(HDSKSPC, LPCWSTR, LONGLONG, PVOID, UINT); - UINT SetupBackupErrorA(HWND, PCSTR, PCSTR, PCSTR, UINT, DWORD); - UINT SetupBackupErrorW(HWND, PCWSTR, PCWSTR, PCWSTR, UINT, DWORD); - BOOL SetupCancelTemporary(); - BOOL SetupCloseFileQueue(HSPFILEQ); - VOID SetupCloseInfFile(HINF); - VOID SetupCloseLog(); - BOOL SetupCommitFileQueueA(HWND, HSPFILEQ, PSP_FILE_CALLBACK_A, PVOID); - BOOL SetupCommitFileQueueW(HWND, HSPFILEQ, PSP_FILE_CALLBACK_W, PVOID); - UINT SetupCopyErrorA(HWND, PCSTR, PCSTR, PCSTR, PCSTR, PCSTR, UINT, DWORD, PSTR, DWORD, PDWORD); - UINT SetupCopyErrorW(HWND, PCWSTR, PCWSTR, PCWSTR, PCWSTR, PCWSTR, UINT, DWORD, PWSTR, DWORD, PDWORD); - BOOL SetupCopyOEMInfA(PCSTR, PCSTR, DWORD, DWORD, PSTR, DWORD, PDWORD, PSTR*); - BOOL SetupCopyOEMInfW(PCWSTR, PCWSTR, DWORD, DWORD, PWSTR, DWORD, PDWORD, PWSTR*); - HDSKSPC SetupCreateDiskSpaceListA(PVOID, DWORD, UINT); - HDSKSPC SetupCreateDiskSpaceListW(PVOID, DWORD, UINT); - DWORD SetupDecompressOrCopyFileA(PCSTR, PCSTR, PUINT); - DWORD SetupDecompressOrCopyFileW(PCWSTR, PCWSTR, PUINT); - UINT SetupDefaultQueueCallbackA(PVOID, UINT, UINT_PTR, UINT_PTR); - UINT SetupDefaultQueueCallbackW(PVOID, UINT, UINT_PTR, UINT_PTR); - UINT SetupDeleteErrorA(HWND, PCSTR, PCSTR, UINT, DWORD); - UINT SetupDeleteErrorW(HWND, PCWSTR, PCWSTR, UINT, DWORD); - BOOL SetupDestroyDiskSpaceList(HDSKSPC); - BOOL SetupDiAskForOEMDisk(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiBuildClassInfoList(DWORD, LPGUID, DWORD, PDWORD); - BOOL SetupDiBuildClassInfoListExA(DWORD, LPGUID, DWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiBuildClassInfoListExW(DWORD, LPGUID, DWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiBuildDriverInfoList(HDEVINFO, PSP_DEVINFO_DATA, DWORD); - BOOL SetupDiCallClassInstaller(DI_FUNCTION, HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiCancelDriverInfoSearch(HDEVINFO); - BOOL SetupDiChangeState(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiClassGuidsFromNameA(PCSTR, LPGUID, DWORD, PDWORD); - BOOL SetupDiClassGuidsFromNameW(PCWSTR, LPGUID, DWORD, PDWORD); - BOOL SetupDiClassGuidsFromNameExA(PCSTR, LPGUID, DWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiClassGuidsFromNameExW(PCWSTR, LPGUID, DWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiClassNameFromGuidA(const(GUID)*, PSTR, DWORD, PDWORD); - BOOL SetupDiClassNameFromGuidW(const(GUID)*, PWSTR, DWORD, PDWORD); - BOOL SetupDiClassNameFromGuidExA(const(GUID)*, PSTR, DWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiClassNameFromGuidExW(const(GUID)*, PWSTR, DWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiCreateDeviceInfoA(HDEVINFO, PCSTR, const(GUID)*, PCSTR, HWND, DWORD, PSP_DEVINFO_DATA); - BOOL SetupDiCreateDeviceInfoW(HDEVINFO, PCWSTR, const(GUID)*, PCWSTR, HWND, DWORD, PSP_DEVINFO_DATA); - HDEVINFO SetupDiCreateDeviceInfoList(const(GUID)*, HWND); - HDEVINFO SetupDiCreateDeviceInfoListExA(const(GUID)*, HWND, PCSTR, PVOID); - HDEVINFO SetupDiCreateDeviceInfoListExW(const(GUID)*, HWND, PCWSTR, PVOID); - BOOL SetupDiCreateDeviceInterfaceA(HDEVINFO, PSP_DEVINFO_DATA, const(GUID)*, PCSTR, DWORD, PSP_DEVICE_INTERFACE_DATA); - BOOL SetupDiCreateDeviceInterfaceW(HDEVINFO, PSP_DEVINFO_DATA, const(GUID)*, PCWSTR, DWORD, PSP_DEVICE_INTERFACE_DATA); - HKEY SetupDiCreateDeviceInterfaceRegKeyA(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, DWORD, REGSAM, HINF, PCSTR); - HKEY SetupDiCreateDeviceInterfaceRegKeyW(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, DWORD, REGSAM, HINF, PCWSTR); - HKEY SetupDiCreateDevRegKeyA(HDEVINFO, PSP_DEVINFO_DATA, DWORD, DWORD, DWORD, HINF, PCSTR); - HKEY SetupDiCreateDevRegKeyW(HDEVINFO, PSP_DEVINFO_DATA, DWORD, DWORD, DWORD, HINF, PCWSTR); - BOOL SetupDiDeleteDeviceInfo(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiDeleteDeviceInterfaceData(HDEVINFO, PSP_DEVICE_INTERFACE_DATA); - BOOL SetupDiDeleteDeviceInterfaceRegKey(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, DWORD); - BOOL SetupDiDeleteDevRegKey(HDEVINFO, PSP_DEVINFO_DATA, DWORD, DWORD, DWORD); - BOOL SetupDiDestroyClassImageList(PSP_CLASSIMAGELIST_DATA); - BOOL SetupDiDestroyDeviceInfoList(HDEVINFO); - BOOL SetupDiDestroyDriverInfoList(HDEVINFO, PSP_DEVINFO_DATA, DWORD); - INT SetupDiDrawMiniIcon(HDC, RECT, INT, DWORD); - BOOL SetupDiEnumDeviceInfo(HDEVINFO, DWORD, PSP_DEVINFO_DATA); - BOOL SetupDiEnumDeviceInterfaces(HDEVINFO, PSP_DEVINFO_DATA, const(GUID)*, DWORD, PSP_DEVICE_INTERFACE_DATA); - BOOL SetupDiEnumDriverInfoA(HDEVINFO, PSP_DEVINFO_DATA, DWORD, DWORD, PSP_DRVINFO_DATA_A); - BOOL SetupDiEnumDriverInfoW(HDEVINFO, PSP_DEVINFO_DATA, DWORD, DWORD, PSP_DRVINFO_DATA_W); - BOOL SetupDiGetActualSectionToInstallA(HINF, PCSTR, PSTR, DWORD, PDWORD, PSTR*); - BOOL SetupDiGetActualSectionToInstallW(HINF, PCWSTR, PWSTR, DWORD, PDWORD, PWSTR*); - BOOL SetupDiGetClassBitmapIndex(const(GUID)*, PINT); - BOOL SetupDiGetClassDescriptionA(const(GUID)*, PSTR, DWORD, PDWORD); - BOOL SetupDiGetClassDescriptionW(const(GUID)*, PWSTR, DWORD, PDWORD); - BOOL SetupDiGetClassDescriptionExA(const(GUID)*, PSTR, DWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiGetClassDescriptionExW(const(GUID)*, PWSTR, DWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiGetClassDevPropertySheetsA(HDEVINFO, PSP_DEVINFO_DATA, LPPROPSHEETHEADERA, DWORD, PDWORD, DWORD); - BOOL SetupDiGetClassDevPropertySheetsW(HDEVINFO, PSP_DEVINFO_DATA, LPPROPSHEETHEADERW, DWORD, PDWORD, DWORD); - HDEVINFO SetupDiGetClassDevsA(const(GUID)*, PCSTR, HWND, DWORD); - HDEVINFO SetupDiGetClassDevsW(const(GUID)*, PCWSTR, HWND, DWORD); - HDEVINFO SetupDiGetClassDevsExA(const(GUID)*, PCSTR, HWND, DWORD, HDEVINFO, PCSTR, PVOID); - HDEVINFO SetupDiGetClassDevsExW(const(GUID)*, PCWSTR, HWND, DWORD, HDEVINFO, PCWSTR, PVOID); - BOOL SetupDiGetClassImageIndex(PSP_CLASSIMAGELIST_DATA, const(GUID)*, PINT); - BOOL SetupDiGetClassImageList(PSP_CLASSIMAGELIST_DATA); - BOOL SetupDiGetClassImageListExA(PSP_CLASSIMAGELIST_DATA, PCSTR, PVOID); - BOOL SetupDiGetClassImageListExW(PSP_CLASSIMAGELIST_DATA, PCWSTR, PVOID); - BOOL SetupDiGetClassInstallParamsA(HDEVINFO, PSP_DEVINFO_DATA, PSP_CLASSINSTALL_HEADER, DWORD, PDWORD); - BOOL SetupDiGetClassInstallParamsW(HDEVINFO, PSP_DEVINFO_DATA, PSP_CLASSINSTALL_HEADER, DWORD, PDWORD); - BOOL SetupDiGetClassRegistryPropertyA(LPGUID, DWORD, PDWORD, PBYTE, DWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiGetClassRegistryPropertyW(LPGUID, DWORD, PDWORD, PBYTE, DWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiGetDeviceInfoListClass(HDEVINFO, LPGUID); - BOOL SetupDiGetDeviceInfoListDetailA(HDEVINFO, PSP_DEVINFO_LIST_DETAIL_DATA_A); - BOOL SetupDiGetDeviceInfoListDetailW(HDEVINFO, PSP_DEVINFO_LIST_DETAIL_DATA_W); - BOOL SetupDiGetDeviceInstallParamsA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DEVINSTALL_PARAMS_A); - BOOL SetupDiGetDeviceInstallParamsW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DEVINSTALL_PARAMS_W); - BOOL SetupDiGetDeviceInstanceIdA(HDEVINFO, PSP_DEVINFO_DATA, PSTR, DWORD, PDWORD); - BOOL SetupDiGetDeviceInstanceIdW(HDEVINFO, PSP_DEVINFO_DATA, PWSTR, DWORD, PDWORD); - BOOL SetupDiGetDeviceInterfaceAlias(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, const(GUID)*, PSP_DEVICE_INTERFACE_DATA); - BOOL SetupDiGetDeviceInterfaceDetailA(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, PSP_DEVICE_INTERFACE_DETAIL_DATA_A, DWORD, PDWORD, PSP_DEVINFO_DATA); - BOOL SetupDiGetDeviceInterfaceDetailW(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, PSP_DEVICE_INTERFACE_DETAIL_DATA_W, DWORD, PDWORD, PSP_DEVINFO_DATA); - BOOL SetupDiGetDeviceRegistryPropertyA(HDEVINFO, PSP_DEVINFO_DATA, DWORD, PDWORD, PBYTE, DWORD, PDWORD); - BOOL SetupDiGetDeviceRegistryPropertyW(HDEVINFO, PSP_DEVINFO_DATA, DWORD, PDWORD, PBYTE, DWORD, PDWORD); - BOOL SetupDiGetDriverInfoDetailA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_A, PSP_DRVINFO_DETAIL_DATA_A, DWORD, PDWORD); - BOOL SetupDiGetDriverInfoDetailW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_W, PSP_DRVINFO_DETAIL_DATA_W, DWORD, PDWORD); - BOOL SetupDiGetDriverInstallParamsA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_A, PSP_DRVINSTALL_PARAMS); - BOOL SetupDiGetDriverInstallParamsW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_W, PSP_DRVINSTALL_PARAMS); - BOOL SetupDiGetHwProfileFriendlyNameA(DWORD, PSTR, DWORD, PDWORD); - BOOL SetupDiGetHwProfileFriendlyNameExA(DWORD, PSTR, DWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiGetHwProfileFriendlyNameExW(DWORD, PWSTR, DWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiGetHwProfileFriendlyNameW(DWORD, PWSTR, DWORD, PDWORD); - BOOL SetupDiGetHwProfileList(PDWORD, DWORD, PDWORD, PDWORD); - BOOL SetupDiGetHwProfileListExA(PDWORD, DWORD, PDWORD, PDWORD, PCSTR, PVOID); - BOOL SetupDiGetHwProfileListExW(PDWORD, DWORD, PDWORD, PDWORD, PCWSTR, PVOID); - BOOL SetupDiGetINFClassA(PCSTR, LPGUID, PSTR, DWORD, PDWORD); - BOOL SetupDiGetINFClassW(PCWSTR, LPGUID, PWSTR, DWORD, PDWORD); - BOOL SetupDiGetSelectedDevice(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiGetSelectedDriverA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_A); - BOOL SetupDiGetSelectedDriverW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_W); - HPROPSHEETPAGE SetupDiGetWizardage(HDEVINFO, PSP_DEVINFO_DATA, PSP_INSTALLWIZARD_DATA, DWORD, DWORD); - BOOL SetupDiInstallClassA(HWND, PCSTR, DWORD, HSPFILEQ); - BOOL SetupDiInstallClassW(HWND, PCWSTR, DWORD, HSPFILEQ); - BOOL SetupDiInstallClassExA(HWND, PCSTR, DWORD, HSPFILEQ, const(GUID)*, PVOID, PVOID); - BOOL SetupDiInstallClassExW(HWND, PCWSTR, DWORD, HSPFILEQ, const(GUID)*, PVOID, PVOID); - BOOL SetupDiInstallDevice(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiInstallDeviceInterfaces(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiInstallDriverFiles(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiLoadClassIcon(const(GUID)*, HICON*, PINT); - BOOL SetupDiMoveDuplicateDevice(HDEVINFO, PSP_DEVINFO_DATA); - HKEY SetupDiOpenClassRegKey(const(GUID)*, REGSAM); - HKEY SetupDiOpenClassRegKeyExA(const(GUID)*, REGSAM, DWORD, PCSTR, PVOID); - HKEY SetupDiOpenClassRegKeyExW(const(GUID)*, REGSAM, DWORD, PCWSTR, PVOID); - BOOL SetupDiOpenDeviceInfoA(HDEVINFO, PCSTR, HWND, DWORD, PSP_DEVINFO_DATA); - BOOL SetupDiOpenDeviceInfoW(HDEVINFO, PCWSTR, HWND, DWORD, PSP_DEVINFO_DATA); - BOOL SetupDiOpenDeviceInterfaceA(HDEVINFO, PCSTR, DWORD, PSP_DEVICE_INTERFACE_DATA); - BOOL SetupDiOpenDeviceInterfaceW(HDEVINFO, PCWSTR, DWORD, PSP_DEVICE_INTERFACE_DATA); - HKEY SetupDiOpenDeviceInterfaceRegKey(HDEVINFO, PSP_DEVICE_INTERFACE_DATA, DWORD, REGSAM); - HKEY SetupDiOpenDevRegKey(HDEVINFO, PSP_DEVINFO_DATA, DWORD, DWORD, DWORD, REGSAM); - BOOL SetupDiRegisterCoDeviceInstallers(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiRegisterDeviceInfo(HDEVINFO, PSP_DEVINFO_DATA, DWORD, PSP_DETSIG_CMPPROC, PVOID, PSP_DEVINFO_DATA); - BOOL SetupDiRemoveDevice(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiRemoveDeviceInterface(HDEVINFO, PSP_DEVICE_INTERFACE_DATA); - BOOL SetupDiSelectBestCompatDrv(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiSelectDevice(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiSelectOEMDrv(HWND, HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiSetClassInstallParamsA(HDEVINFO, PSP_DEVINFO_DATA, PSP_CLASSINSTALL_HEADER, DWORD); - BOOL SetupDiSetClassInstallParamsW(HDEVINFO, PSP_DEVINFO_DATA, PSP_CLASSINSTALL_HEADER, DWORD); - BOOL SetupDiSetClassRegistryPropertyA(LPGUID, DWORD, const(BYTE)*, DWORD, PCSTR, PVOID); - BOOL SetupDiSetClassRegistryPropertyW(LPGUID, DWORD, const(BYTE)*, DWORD, PCWSTR, PVOID); - BOOL SetupDiSetDeviceInstallParamsA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DEVINSTALL_PARAMS_A); - BOOL SetupDiSetDeviceInstallParamsW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DEVINSTALL_PARAMS_W); - BOOL SetupDiSetDeviceRegistryPropertyA(HDEVINFO, PSP_DEVINFO_DATA, DWORD, const(BYTE)*, DWORD); - BOOL SetupDiSetDeviceRegistryPropertyW(HDEVINFO, PSP_DEVINFO_DATA, DWORD, const(BYTE)*, DWORD); - BOOL SetupDiSetDriverInstallParamsA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_A, PSP_DRVINSTALL_PARAMS); - BOOL SetupDiSetDriverInstallParamsW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_W, PSP_DRVINSTALL_PARAMS); - BOOL SetupDiSetSelectedDevice(HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupDiSetSelectedDriverA(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_A); - BOOL SetupDiSetSelectedDriverW(HDEVINFO, PSP_DEVINFO_DATA, PSP_DRVINFO_DATA_W); - BOOL SetupDiUnremoveDevice(HDEVINFO, PSP_DEVINFO_DATA); - HDSKSPC SetupDuplicateDiskSpaceListA(HDSKSPC, PVOID, DWORD, UINT); - HDSKSPC SetupDuplicateDiskSpaceListW(HDSKSPC, PVOID, DWORD, UINT); - BOOL SetupFindFirstLineA(HINF, PCSTR, PCSTR, PINFCONTEXT); - BOOL SetupFindFirstLineW(HINF, PCWSTR, PCWSTR, PINFCONTEXT); - BOOL SetupFindNextLine(PINFCONTEXT, PINFCONTEXT); - BOOL SetupFindNextMatchLineA(PINFCONTEXT, PCSTR, PINFCONTEXT); - BOOL SetupFindNextMatchLineW(PINFCONTEXT, PCWSTR, PINFCONTEXT); - BOOL SetupFreeA(PCSTR**, UINT); - BOOL SetupFreeW(PCWSTR**, UINT); - BOOL SetupGetBackupInformationA(HSPFILEQ, PSP_BACKUP_QUEUE_PARAMS_A); - BOOL SetupGetBackupInformationW(HSPFILEQ, PSP_BACKUP_QUEUE_PARAMS_W); - BOOL SetupGetBinaryField(PINFCONTEXT, DWORD, PBYTE, DWORD, LPDWORD); - DWORD SetupGetFieldCount(PINFCONTEXT); - DWORD SetupGetFileCompressionInfoA(PCSTR, PSTR*, PDWORD, PDWORD, PUINT); - DWORD SetupGetFileCompressionInfoW(PCWSTR, PWSTR*, PDWORD, PDWORD, PUINT); - BOOL SetupGetInfFileListA(PCSTR, DWORD, PSTR, DWORD, PDWORD); - BOOL SetupGetInfFileListW(PCWSTR, DWORD, PWSTR, DWORD, PDWORD); - BOOL SetupGetInfInformationA(LPCVOID, DWORD, PSP_INF_INFORMATION, DWORD, PDWORD); - BOOL SetupGetInfInformationW(LPCVOID, DWORD, PSP_INF_INFORMATION, DWORD, PDWORD); - BOOL SetupGetIntField(PINFCONTEXT, DWORD, PINT); - BOOL SetupGetLineByIndexA(HINF, PCSTR, DWORD, PINFCONTEXT); - BOOL SetupGetLineByIndexW(HINF, PCWSTR, DWORD, PINFCONTEXT); - LONG SetupGetLineCountA(HINF, PCSTR); - LONG SetupGetLineCountW(HINF, PCWSTR); - BOOL SetupGetLineTextA(PINFCONTEXT, HINF, PCSTR, PCSTR, PSTR, DWORD, PDWORD); - BOOL SetupGetLineTextW(PINFCONTEXT, HINF, PCWSTR, PCWSTR, PWSTR, DWORD, PDWORD); - BOOL SetupGetMultiSzFieldA(PINFCONTEXT, DWORD, PSTR, DWORD, LPDWORD); - BOOL SetupGetMultiSzFieldW(PINFCONTEXT, DWORD, PWSTR, DWORD, LPDWORD); - BOOL SetupGetSourceFileLocationA(HINF, PINFCONTEXT, PCSTR, PUINT, PSTR, DWORD, PDWORD); - BOOL SetupGetSourceFileLocationW(HINF, PINFCONTEXT, PCWSTR, PUINT, PWSTR, DWORD, PDWORD); - BOOL SetupGetSourceFileSizeA(HINF, PINFCONTEXT, PCSTR, PCSTR, PDWORD, UINT); - BOOL SetupGetSourceFileSizeW(HINF, PINFCONTEXT, PCWSTR, PCWSTR, PDWORD, UINT); - BOOL SetupGetSourceInfoA(HINF, UINT, UINT, PSTR, DWORD, PDWORD); - BOOL SetupGetSourceInfoW(HINF, UINT, UINT, PWSTR, DWORD, PDWORD); - BOOL SetupGetStringFieldA(PINFCONTEXT, DWORD, PSTR, DWORD, PDWORD); - BOOL SetupGetStringFieldW(PINFCONTEXT, DWORD, PWSTR, DWORD, PDWORD); - BOOL SetupGetTargetPathA(HINF, PINFCONTEXT, PCSTR, PSTR, DWORD, PDWORD); - BOOL SetupGetTargetPathW(HINF, PINFCONTEXT, PCWSTR, PWSTR, DWORD, PDWORD); - PVOID SetupInitDefaultQueueCallback(HWND); - PVOID SetupInitDefaultQueueCallbackEx(HWND, HWND, UINT, DWORD, PVOID); - HSPFILELOG SetupInitializeFileLogA(PCSTR, DWORD); - HSPFILELOG SetupInitializeFileLogW(PCWSTR, DWORD); - BOOL SetupInstallFileA(HINF, PINFCONTEXT, PCSTR, PCSTR, PCSTR, DWORD, PSP_FILE_CALLBACK_A, PVOID); - BOOL SetupInstallFileW(HINF, PINFCONTEXT, PCWSTR, PCWSTR, PCWSTR, DWORD, PSP_FILE_CALLBACK_W, PVOID); - BOOL SetupInstallFileExA(HINF, PINFCONTEXT, PCSTR, PCSTR, PCSTR, DWORD, PSP_FILE_CALLBACK_A, PVOID, PBOOL); - BOOL SetupInstallFileExW(HINF, PINFCONTEXT, PCWSTR, PCWSTR, PCWSTR, DWORD, PSP_FILE_CALLBACK_W, PVOID, PBOOL); - BOOL SetupInstallFilesFromInfSectionA(HINF, HINF, HSPFILEQ, PCSTR, PCSTR, UINT); - BOOL SetupInstallFilesFromInfSectionW(HINF, HINF, HSPFILEQ, PCWSTR, PCWSTR, UINT); - BOOL SetupInstallFromInfSectionA(HWND, HINF, PCSTR, UINT, HKEY, PCSTR, UINT, PSP_FILE_CALLBACK_A, PVOID, HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupInstallFromInfSectionW(HWND, HINF, PCWSTR, UINT, HKEY, PCWSTR, UINT, PSP_FILE_CALLBACK_W, PVOID, HDEVINFO, PSP_DEVINFO_DATA); - BOOL SetupInstallServicesFromInfSectionA(HINF, PCSTR, DWORD); - BOOL SetupInstallServicesFromInfSectionW(HINF, PCWSTR, DWORD); - BOOL SetupInstallServicesFromInfSectionExA(HINF, PCSTR, DWORD, HDEVINFO, PSP_DEVINFO_DATA, PVOID, PVOID); - BOOL SetupInstallServicesFromInfSectionExW(HINF, PCWSTR, DWORD, HDEVINFO, PSP_DEVINFO_DATA, PVOID, PVOID); - BOOL SetupIterateCabinetA(PCSTR, DWORD, PSP_FILE_CALLBACK_A, PVOID); - BOOL SetupIterateCabinetW(PCWSTR, DWORD, PSP_FILE_CALLBACK_W, PVOID); - BOOL SetupLogErrorA(LPCSTR, LogSeverity); - BOOL SetupLogErrorW(LPCWSTR, LogSeverity); - BOOL SetupLogFileA(HSPFILELOG, PCSTR, PCSTR, PCSTR, DWORD, PCSTR, PCSTR, PCSTR, DWORD); - BOOL SetupLogFileW(HSPFILELOG, PCWSTR, PCWSTR, PCWSTR, DWORD, PCWSTR, PCWSTR, PCWSTR, DWORD); - BOOL SetupOpenAppendInfFileA(PCSTR, HINF, PUINT); - BOOL SetupOpenAppendInfFileW(PCWSTR, HINF, PUINT); - HSPFILEQ SetupOpenFileQueue(); - HINF SetupOpenInfFileA(PCSTR, PCSTR, DWORD, PUINT); - HINF SetupOpenInfFileW(PCWSTR, PCWSTR, DWORD, PUINT); - BOOL SetupOpenLog(BOOL); - HINF SetupOpenMasterInf(); - UINT SetupPromptForDiskA(HWND, PCSTR, PCSTR, PCSTR, PCSTR, PCSTR, DWORD, PSTR, DWORD, PDWORD); - UINT SetupPromptForDiskW(HWND, PCWSTR, PCWSTR, PCWSTR, PCWSTR, PCWSTR, DWORD, PWSTR, DWORD, PDWORD); - INT SetupPromptReboot(HSPFILEQ, HWND, BOOL); - BOOL SetupQueryA(DWORD, PCSTR**, PUINT); - BOOL SetupQueryW(DWORD, PCWSTR**, PUINT); - BOOL SetupQueryDrivesInDiskSpaceListA(HDSKSPC, PSTR, DWORD, PDWORD); - BOOL SetupQueryDrivesInDiskSpaceListW(HDSKSPC, PWSTR, DWORD, PDWORD); - BOOL SetupQueryFileLogA(HSPFILELOG, PCSTR, PCSTR, SetupFileLogInfo, PSTR, DWORD, PDWORD); - BOOL SetupQueryFileLogW(HSPFILELOG, PCWSTR, PCWSTR, SetupFileLogInfo, PWSTR, DWORD, PDWORD); - BOOL SetupQueryInfFileInformationA(PSP_INF_INFORMATION, UINT, PSTR, DWORD, PDWORD); - BOOL SetupQueryInfFileInformationW(PSP_INF_INFORMATION, UINT, PWSTR, DWORD, PDWORD); - BOOL SetupQueryInfOriginalFileInformationA(PSP_INF_INFORMATION, UINT, PSP_ALTPLATFORM_INFO, PSP_ORIGINAL_FILE_INFO_A); - BOOL SetupQueryInfOriginalFileInformationW(PSP_INF_INFORMATION, UINT, PSP_ALTPLATFORM_INFO, PSP_ORIGINAL_FILE_INFO_W); - BOOL SetupQueryInfVersionInformationA(PSP_INF_INFORMATION, UINT, PSTR, PSTR, DWORD, PDWORD); - BOOL SetupQueryInfVersionInformationW(PSP_INF_INFORMATION, UINT, PCWSTR, PWSTR, DWORD, PDWORD); - BOOL SetupQuerySpaceRequiredOnDriveA(HDSKSPC, PCSTR, LONGLONG*, PVOID, UINT); - BOOL SetupQuerySpaceRequiredOnDriveW(HDSKSPC, PCWSTR, LONGLONG*, PVOID, UINT); - BOOL SetupQueueCopyA(HSPFILEQ, PCSTR, PCSTR, PCSTR, PCSTR, PCSTR, PCSTR, PCSTR, DWORD); - BOOL SetupQueueCopyW(HSPFILEQ, PCWSTR, PCWSTR, PCWSTR, PCWSTR, PCWSTR, PCWSTR, PCWSTR, DWORD); - BOOL SetupQueueCopyIndirectA(PSP_FILE_COPY_PARAMS_A); - BOOL SetupQueueCopyIndirectW(PSP_FILE_COPY_PARAMS_W); - BOOL SetupQueueCopySectionA(HSPFILEQ, PCSTR, HINF, HINF, PCSTR, DWORD); - BOOL SetupQueueCopySectionW(HSPFILEQ, PCWSTR, HINF, HINF, PCWSTR, DWORD); - BOOL SetupQueueDefaultCopyA(HSPFILEQ, HINF, PCSTR, PCSTR, PCSTR, DWORD); - BOOL SetupQueueDefaultCopyW(HSPFILEQ, HINF, PCWSTR, PCWSTR, PCWSTR, DWORD); - BOOL SetupQueueDeleteA(HSPFILEQ, PCSTR, PCSTR); - BOOL SetupQueueDeleteW(HSPFILEQ, PCWSTR, PCWSTR); - BOOL SetupQueueDeleteSectionA(HSPFILEQ, HINF, HINF, PCSTR); - BOOL SetupQueueDeleteSectionW(HSPFILEQ, HINF, HINF, PCWSTR); - BOOL SetupQueueRenameA(HSPFILEQ, PCSTR, PCSTR, PCSTR, PCSTR); - BOOL SetupQueueRenameW(HSPFILEQ, PCWSTR, PCWSTR, PCWSTR, PCWSTR); - BOOL SetupQueueRenameSectionA(HSPFILEQ, HINF, HINF, PCSTR); - BOOL SetupQueueRenameSectionW(HSPFILEQ, HINF, HINF, PCWSTR); - BOOL SetupRemoveFileLogEntryA(HSPFILELOG, PCSTR, PCSTR); - BOOL SetupRemoveFileLogEntryW(HSPFILELOG, PCWSTR, PCWSTR); - BOOL SetupRemoveFromDiskSpaceListA(HDSKSPC, PCSTR, UINT, PVOID, UINT); - BOOL SetupRemoveFromDiskSpaceListW(HDSKSPC, PCWSTR, UINT, PVOID, UINT); - BOOL SetupRemoveFromSourceListA(DWORD, PCSTR); - BOOL SetupRemoveFromSourceListW(DWORD, PCWSTR); - BOOL SetupRemoveInstallSectionFromDiskSpaceListA(HDSKSPC, HINF, HINF, PCSTR, PVOID, UINT); - BOOL SetupRemoveInstallSectionFromDiskSpaceListW(HDSKSPC, HINF, HINF, PCWSTR, PVOID, UINT); - BOOL SetupRemoveSectionFromDiskSpaceListA(HDSKSPC, HINF, HINF, PCSTR, UINT, PVOID, UINT); - BOOL SetupRemoveSectionFromDiskSpaceListW(HDSKSPC, HINF, HINF, PCWSTR, UINT, PVOID, UINT); - UINT SetupRenameErrorA(HWND, PCSTR, PCSTR, PCSTR, UINT, DWORD); - UINT SetupRenameErrorW(HWND, PCWSTR, PCWSTR, PCWSTR, UINT, DWORD); - BOOL SetupScanFileQueueA(HSPFILEQ, DWORD, HWND, PSP_FILE_CALLBACK_A, PVOID, PDWORD); - BOOL SetupScanFileQueueW(HSPFILEQ, DWORD, HWND, PSP_FILE_CALLBACK_W, PVOID, PDWORD); - BOOL SetupSetDirectoryIdA(HINF, DWORD, PCSTR); - BOOL SetupSetDirectoryIdW(HINF, DWORD, PCWSTR); - BOOL SetupSetDirectoryIdExA(HINF, DWORD, PCSTR, DWORD, DWORD, PVOID); - BOOL SetupSetDirectoryIdExW(HINF, DWORD, PCWSTR, DWORD, DWORD, PVOID); - BOOL SetupSetFileQueueAlternatePlatformA(HSPFILEQ, PSP_ALTPLATFORM_INFO, PCSTR); - BOOL SetupSetFileQueueAlternatePlatformW(HSPFILEQ, PSP_ALTPLATFORM_INFO, PCWSTR); - BOOL SetupSetPlatformPathOverrideA(PCSTR); - BOOL SetupSetPlatformPathOverrideW(PCWSTR); - BOOL SetupSetSourceListA(DWORD, PCSTR*, UINT); - BOOL SetupSetSourceListW(DWORD, PCWSTR*, UINT); - VOID SetupTermDefaultQueueCallback(PVOID); - BOOL SetupTerminateFileLog(HSPFILELOG); -} - -deprecated { - alias SetupDiCreateDeviceInterfaceW SetupDiCreateInterfaceDeviceW; - alias SetupDiCreateDeviceInterfaceRegKeyW SetupDiCreateInterfaceDeviceRegKeyW; - alias SetupDiOpenDeviceInterfaceW SetupDiOpenInterfaceDeviceW; - alias SetupDiGetDeviceInterfaceDetailW SetupDiGetInterfaceDeviceDetailW; - alias SetupDiCreateDeviceInterfaceA SetupDiCreateInterfaceDeviceA; - alias SetupDiCreateDeviceInterfaceRegKeyA SetupDiCreateInterfaceDeviceRegKeyA; - alias SetupDiOpenDeviceInterfaceA SetupDiOpenInterfaceDeviceA; - alias SetupDiGetDeviceInterfaceDetailA SetupDiGetInterfaceDeviceDetailA; -} - -version (Unicode) { - alias PSP_FILE_CALLBACK_W PSP_FILE_CALLBACK; - alias SetupAddInstallSectionToDiskSpaceListW SetupAddInstallSectionToDiskSpaceList; - alias SetupAddSectionToDiskSpaceListW SetupAddSectionToDiskSpaceList; - alias SetupAddToDiskSpaceListW SetupAddToDiskSpaceList; - alias SetupAddToSourceListW SetupAddToSourceList; - alias SetupAdjustDiskSpaceListW SetupAdjustDiskSpaceList; - alias SetupBackupErrorW SetupBackupError; - alias SetupCommitFileQueueW SetupCommitFileQueue; - alias SetupCopyErrorW SetupCopyError; - alias SetupCopyOEMInfW SetupCopyOEMInf; - alias SetupCreateDiskSpaceListW SetupCreateDiskSpaceList; - alias SetupDecompressOrCopyFileW SetupDecompressOrCopyFile; - alias SetupDefaultQueueCallbackW SetupDefaultQueueCallback; - alias SetupDeleteErrorW SetupDeleteError; - alias SetupDiBuildClassInfoListExW SetupDiBuildClassInfoListEx; - alias SetupDiClassGuidsFromNameExW SetupDiClassGuidsFromNameEx; - alias SetupDiClassGuidsFromNameW SetupDiClassGuidsFromName; - alias SetupDiClassNameFromGuidExW SetupDiClassNameFromGuidEx; - alias SetupDiClassNameFromGuidW SetupDiClassNameFromGuid; - alias SetupDiCreateDeviceInfoListExW SetupDiCreateDeviceInfoListEx; - alias SetupDiCreateDeviceInfoW SetupDiCreateDeviceInfo; - alias SetupDiCreateDeviceInterfaceRegKeyW SetupDiCreateDeviceInterfaceRegKey; - deprecated alias SetupDiCreateDeviceInterfaceRegKeyW SetupDiCreateInterfaceDeviceRegKey; - alias SetupDiCreateDeviceInterfaceW SetupDiCreateDeviceInterface; - deprecated alias SetupDiCreateDeviceInterfaceW SetupDiCreateInterfaceDevice; - alias SetupDiCreateDevRegKeyW SetupDiCreateDevRegKey; - alias SetupDiEnumDriverInfoW SetupDiEnumDriverInfo; - alias SetupDiGetActualSectionToInstallW SetupDiGetActualSectionToInstall; - alias SetupDiGetClassDescriptionExW SetupDiGetClassDescriptionEx; - alias SetupDiGetClassDescriptionW SetupDiGetClassDescription; - alias SetupDiGetClassDevPropertySheetsW SetupDiGetClassDevPropertySheets; - alias SetupDiGetClassDevsExW SetupDiGetClassDevsEx; - alias SetupDiGetClassDevsW SetupDiGetClassDevs; - alias SetupDiGetClassImageListExW SetupDiGetClassImageListEx; - alias SetupDiGetClassInstallParamsW SetupDiGetClassInstallParams; - alias SetupDiGetClassRegistryPropertyW SetupDiGetClassRegistryProperty; - alias SetupDiGetDeviceInfoListDetailW SetupDiGetDeviceInfoListDetail; - alias SetupDiGetDeviceInstallParamsW SetupDiGetDeviceInstallParams; - alias SetupDiGetDeviceInstanceIdW SetupDiGetDeviceInstanceId; - alias SetupDiGetDeviceInterfaceDetailW SetupDiGetDeviceInterfaceDetail; - deprecated alias SetupDiGetDeviceInterfaceDetailW SetupDiGetInterfaceDeviceDetail; - alias SetupDiGetDeviceRegistryPropertyW SetupDiGetDeviceRegistryProperty; - alias SetupDiGetDriverInfoDetailW SetupDiGetDriverInfoDetail; - alias SetupDiGetDriverInstallParamsW SetupDiGetDriverInstallParams; - alias SetupDiGetHwProfileFriendlyNameExW SetupDiGetHwProfileFriendlyNameEx; - alias SetupDiGetHwProfileFriendlyNameW SetupDiGetHwProfileFriendlyName; - alias SetupDiGetHwProfileListExW SetupDiGetHwProfileListEx; - alias SetupDiGetINFClassW SetupDiGetINFClass; - alias SetupDiGetSelectedDriverW SetupDiGetSelectedDriver; - alias SetupDiInstallClassExW SetupDiInstallClassEx; - alias SetupDiInstallClassW SetupDiInstallClass; - alias SetupDiOpenClassRegKeyExW SetupDiOpenClassRegKeyEx; - alias SetupDiOpenDeviceInfoW SetupDiOpenDeviceInfo; - alias SetupDiOpenDeviceInterfaceW SetupDiOpenDeviceInterface; - deprecated alias SetupDiOpenDeviceInterfaceW SetupDiOpenInterfaceDevice; - alias SetupDiSetClassInstallParamsW SetupDiSetClassInstallParams; - alias SetupDiSetClassRegistryPropertyW SetupDiSetClassRegistryProperty; - alias SetupDiSetDeviceInstallParamsW SetupDiSetDeviceInstallParams; - alias SetupDiSetDeviceRegistryPropertyW SetupDiSetDeviceRegistryProperty; - alias SetupDiSetDriverInstallParamsW SetupDiSetDriverInstallParams; - alias SetupDiSetSelectedDriverW SetupDiSetSelectedDriver; - alias SetupDuplicateDiskSpaceListW SetupDuplicateDiskSpaceList; - alias SetupFindFirstLineW SetupFindFirstLine; - alias SetupFindNextMatchLineW SetupFindNextMatchLine; - alias SetupFreeSourceListW SetupFreeSourceList; - alias SetupGetBackupInformationW SetupGetBackupInformation; - alias SetupGetFileCompressionInfoW SetupGetFileCompressionInfo; - alias SetupGetInfFileListW SetupGetInfFileList; - alias SetupGetInfInformationW SetupGetInfInformation; - alias SetupGetLineByIndexW SetupGetLineByIndex; - alias SetupGetLineCountW SetupGetLineCount; - alias SetupGetLineTextW SetupGetLineText; - alias SetupGetMultiSzFieldW SetupGetMultiSzField; - alias SetupGetSourceFileLocationW SetupGetSourceFileLocation; - alias SetupGetSourceFileSizeW SetupGetSourceFileSize; - alias SetupGetSourceInfoW SetupGetSourceInfo; - alias SetupGetStringFieldW SetupGetStringField; - alias SetupGetTargetPathW SetupGetTargetPath; - alias SetupInitializeFileLogW SetupInitializeFileLog; - alias SetupInstallFileExW SetupInstallFileEx; - alias SetupInstallFilesFromInfSectionW SetupInstallFilesFromInfSection; - alias SetupInstallFileW SetupInstallFile; - alias SetupInstallFromInfSectionW SetupInstallFromInfSection; - alias SetupInstallServicesFromInfSectionExW SetupInstallServicesFromInfSectionEx; - alias SetupInstallServicesFromInfSectionW SetupInstallServicesFromInfSection; - alias SetupIterateCabinetW SetupIterateCabinet; - alias SetupLogErrorW SetupLogError; - alias SetupLogFileW SetupLogFile; - alias SetupOpenAppendInfFileW SetupOpenAppendInfFile; - alias SetupOpenInfFileW SetupOpenInfFile; - alias SetupPromptForDiskW SetupPromptForDisk; - alias SetupQueryDrivesInDiskSpaceListW SetupQueryDrivesInDiskSpaceList; - alias SetupQueryFileLogW SetupQueryFileLog; - alias SetupQueryInfFileInformationW SetupQueryInfFileInformation; - alias SetupQueryInfOriginalFileInformationW SetupQueryInfOriginalFileInformation; - alias SetupQueryInfVersionInformationW SetupQueryInfVersionInformation; - alias SetupQuerySourceListW SetupQuerySourceList; - alias SetupQuerySpaceRequiredOnDriveW SetupQuerySpaceRequiredOnDrive; - alias SetupQueueCopyIndirectW SetupQueueCopyIndirect; - alias SetupQueueCopySectionW SetupQueueCopySection; - alias SetupQueueCopyW SetupQueueCopy; - alias SetupQueueDefaultCopyW SetupQueueDefaultCopy; - alias SetupQueueDeleteSectionW SetupQueueDeleteSection; - alias SetupQueueDeleteW SetupQueueDelete; - alias SetupQueueRenameSectionW SetupQueueRenameSection; - alias SetupQueueRenameW SetupQueueRename; - alias SetupRemoveFileLogEntryW SetupRemoveFileLogEntry; - alias SetupRemoveFromDiskSpaceListW SetupRemoveFromDiskSpaceList; - alias SetupRemoveFromSourceListW SetupRemoveFromSourceList; - alias SetupRemoveInstallSectionFromDiskSpaceListW SetupRemoveInstallSectionFromDiskSpaceList; - alias SetupRemoveSectionFromDiskSpaceListW SetupRemoveSectionFromDiskSpaceList; - alias SetupRenameErrorW SetupRenameError; - alias SetupScanFileQueueW SetupScanFileQueue; - alias SetupSetDirectoryIdExW SetupSetDirectoryIdEx; - alias SetupSetDirectoryIdW SetupSetDirectoryId; - alias SetupSetFileQueueAlternatePlatformW SetupSetFileQueueAlternatePlatform; - alias SetupSetPlatformPathOverrideW SetupSetPlatformPathOverride; - alias SetupSetSourceListW SetupSetSourceList; -} else { - alias PSP_FILE_CALLBACK_A PSP_FILE_CALLBACK; - alias SetupAddInstallSectionToDiskSpaceListA SetupAddInstallSectionToDiskSpaceList; - alias SetupAddSectionToDiskSpaceListA SetupAddSectionToDiskSpaceList; - alias SetupAddToDiskSpaceListA SetupAddToDiskSpaceList; - alias SetupAddToSourceListA SetupAddToSourceList; - alias SetupAdjustDiskSpaceListA SetupAdjustDiskSpaceList; - alias SetupBackupErrorA SetupBackupError; - alias SetupCommitFileQueueA SetupCommitFileQueue; - alias SetupCopyErrorA SetupCopyError; - alias SetupCopyOEMInfA SetupCopyOEMInf; - alias SetupCreateDiskSpaceListA SetupCreateDiskSpaceList; - alias SetupDecompressOrCopyFileA SetupDecompressOrCopyFile; - alias SetupDefaultQueueCallbackA SetupDefaultQueueCallback; - alias SetupDeleteErrorA SetupDeleteError; - alias SetupDiBuildClassInfoListExA SetupDiBuildClassInfoListEx; - alias SetupDiClassGuidsFromNameA SetupDiClassGuidsFromName; - alias SetupDiClassGuidsFromNameExA SetupDiClassGuidsFromNameEx; - alias SetupDiClassNameFromGuidA SetupDiClassNameFromGuid; - alias SetupDiClassNameFromGuidExA SetupDiClassNameFromGuidEx; - alias SetupDiCreateDeviceInfoA SetupDiCreateDeviceInfo; - alias SetupDiCreateDeviceInfoListExA SetupDiCreateDeviceInfoListEx; - alias SetupDiCreateDeviceInterfaceA SetupDiCreateDeviceInterface; - deprecated alias SetupDiCreateDeviceInterfaceA SetupDiCreateInterfaceDevice; - alias SetupDiCreateDeviceInterfaceRegKeyA SetupDiCreateDeviceInterfaceRegKey; - deprecated alias SetupDiCreateDeviceInterfaceRegKeyA SetupDiCreateInterfaceDeviceRegKey; - alias SetupDiCreateDevRegKeyA SetupDiCreateDevRegKey; - alias SetupDiDeleteDeviceInterfaceData SetupDiDeleteInterfaceDeviceData; - alias SetupDiEnumDriverInfoA SetupDiEnumDriverInfo; - alias SetupDiGetActualSectionToInstallA SetupDiGetActualSectionToInstall; - alias SetupDiGetClassDescriptionA SetupDiGetClassDescription; - alias SetupDiGetClassDescriptionExA SetupDiGetClassDescriptionEx; - alias SetupDiGetClassDevPropertySheetsA SetupDiGetClassDevPropertySheets; - alias SetupDiGetClassDevsA SetupDiGetClassDevs; - alias SetupDiGetClassDevsExA SetupDiGetClassDevsEx; - alias SetupDiGetClassImageListExA SetupDiGetClassImageListEx; - alias SetupDiGetClassInstallParamsA SetupDiGetClassInstallParams; - alias SetupDiGetClassRegistryPropertyA SetupDiGetClassRegistryProperty; - alias SetupDiGetDeviceInfoListDetailA SetupDiGetDeviceInfoListDetail; - alias SetupDiGetDeviceInstallParamsA SetupDiGetDeviceInstallParams; - alias SetupDiGetDeviceInstanceIdA SetupDiGetDeviceInstanceId; - alias SetupDiGetDeviceInterfaceDetailA SetupDiGetDeviceInterfaceDetail; - deprecated alias SetupDiGetDeviceInterfaceDetailA SetupDiGetInterfaceDeviceDetail; - alias SetupDiGetDeviceRegistryPropertyA SetupDiGetDeviceRegistryProperty; - alias SetupDiGetDriverInfoDetailA SetupDiGetDriverInfoDetail; - alias SetupDiGetDriverInstallParamsA SetupDiGetDriverInstallParams; - alias SetupDiGetHwProfileFriendlyNameA SetupDiGetHwProfileFriendlyName; - alias SetupDiGetHwProfileFriendlyNameExA SetupDiGetHwProfileFriendlyNameEx; - alias SetupDiGetHwProfileListExA SetupDiGetHwProfileListEx; - alias SetupDiGetINFClassA SetupDiGetINFClass; - alias SetupDiGetSelectedDriverA SetupDiGetSelectedDriver; - alias SetupDiInstallClassA SetupDiInstallClass; - alias SetupDiInstallClassExA SetupDiInstallClassEx; - alias SetupDiOpenClassRegKeyExA SetupDiOpenClassRegKeyEx; - alias SetupDiOpenDeviceInfoA SetupDiOpenDeviceInfo; - alias SetupDiOpenDeviceInterfaceA SetupDiOpenDeviceInterface; - deprecated alias SetupDiOpenDeviceInterfaceA SetupDiOpenInterfaceDevice; - alias SetupDiSetClassInstallParamsA SetupDiSetClassInstallParams; - alias SetupDiSetClassRegistryPropertyA SetupDiSetClassRegistryProperty; - alias SetupDiSetDeviceInstallParamsA SetupDiSetDeviceInstallParams; - alias SetupDiSetDeviceRegistryPropertyA SetupDiSetDeviceRegistryProperty; - alias SetupDiSetDriverInstallParamsA SetupDiSetDriverInstallParams; - alias SetupDiSetSelectedDriverA SetupDiSetSelectedDriver; - alias SetupDuplicateDiskSpaceListA SetupDuplicateDiskSpaceList; - alias SetupFindFirstLineA SetupFindFirstLine; - alias SetupFindNextMatchLineA SetupFindNextMatchLine; - alias SetupFreeSourceListA SetupFreeSourceList; - alias SetupGetBackupInformationA SetupGetBackupInformation; - alias SetupGetFileCompressionInfoA SetupGetFileCompressionInfo; - alias SetupGetInfFileListA SetupGetInfFileList; - alias SetupGetInfInformationA SetupGetInfInformation; - alias SetupGetLineByIndexA SetupGetLineByIndex; - alias SetupGetLineCountA SetupGetLineCount; - alias SetupGetLineTextA SetupGetLineText; - alias SetupGetMultiSzFieldA SetupGetMultiSzField; - alias SetupGetSourceFileLocationA SetupGetSourceFileLocation; - alias SetupGetSourceFileSizeA SetupGetSourceFileSize; - alias SetupGetSourceInfoA SetupGetSourceInfo; - alias SetupGetStringFieldA SetupGetStringField; - alias SetupGetTargetPathA SetupGetTargetPath; - alias SetupInitializeFileLogA SetupInitializeFileLog; - alias SetupInstallFileA SetupInstallFile; - alias SetupInstallFileExA SetupInstallFileEx; - alias SetupInstallFilesFromInfSectionA SetupInstallFilesFromInfSection; - alias SetupInstallFromInfSectionA SetupInstallFromInfSection; - alias SetupInstallServicesFromInfSectionA SetupInstallServicesFromInfSection; - alias SetupInstallServicesFromInfSectionExA SetupInstallServicesFromInfSectionEx; - alias SetupIterateCabinetA SetupIterateCabinet; - alias SetupLogErrorA SetupLogError; - alias SetupLogFileA SetupLogFile; - alias SetupOpenAppendInfFileA SetupOpenAppendInfFile; - alias SetupOpenInfFileA SetupOpenInfFile; - alias SetupPromptForDiskA SetupPromptForDisk; - alias SetupQueryDrivesInDiskSpaceListA SetupQueryDrivesInDiskSpaceList; - alias SetupQueryFileLogA SetupQueryFileLog; - alias SetupQueryInfFileInformationA SetupQueryInfFileInformation; - alias SetupQueryInfOriginalFileInformationA SetupQueryInfOriginalFileInformation; - alias SetupQueryInfVersionInformationA SetupQueryInfVersionInformation; - alias SetupQuerySourceListA SetupQuerySourceList; - alias SetupQuerySpaceRequiredOnDriveA SetupQuerySpaceRequiredOnDrive; - alias SetupQueueCopyA SetupQueueCopy; - alias SetupQueueCopyIndirectA SetupQueueCopyIndirect; - alias SetupQueueCopySectionA SetupQueueCopySection; - alias SetupQueueDefaultCopyA SetupQueueDefaultCopy; - alias SetupQueueDeleteA SetupQueueDelete; - alias SetupQueueDeleteSectionA SetupQueueDeleteSection; - alias SetupQueueRenameA SetupQueueRename; - alias SetupQueueRenameSectionA SetupQueueRenameSection; - alias SetupRemoveFileLogEntryA SetupRemoveFileLogEntry; - alias SetupRemoveFromDiskSpaceListA SetupRemoveFromDiskSpaceList; - alias SetupRemoveFromSourceListA SetupRemoveFromSourceList; - alias SetupRemoveInstallSectionFromDiskSpaceListA SetupRemoveInstallSectionFromDiskSpaceList; - alias SetupRemoveSectionFromDiskSpaceListA SetupRemoveSectionFromDiskSpaceList; - alias SetupRenameErrorA SetupRenameError; - alias SetupScanFileQueueA SetupScanFileQueue; - alias SetupSetDirectoryIdA SetupSetDirectoryId; - alias SetupSetDirectoryIdExA SetupSetDirectoryIdEx; - alias SetupSetFileQueueAlternatePlatformA SetupSetFileQueueAlternatePlatform; - alias SetupSetPlatformPathOverrideA SetupSetPlatformPathOverride; - alias SetupSetSourceListA SetupSetSourceList; -} diff --git a/3rdparty-extra/win32/shldisp.d b/3rdparty-extra/win32/shldisp.d deleted file mode 100644 index 15f4e3f4e..000000000 --- a/3rdparty-extra/win32/shldisp.d +++ /dev/null @@ -1,28 +0,0 @@ -/***********************************************************************\ -* shldisp.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.shldisp; -version(Windows): - -private import win32.unknwn, win32.windef, win32.wtypes; - -// options for IAutoComplete2 -const DWORD ACO_AUTOSUGGEST = 0x01; - -interface IAutoComplete : IUnknown { - HRESULT Init(HWND, IUnknown, LPCOLESTR, LPCOLESTR); - HRESULT Enable(BOOL); -} -alias IAutoComplete LPAUTOCOMPLETE; - -interface IAutoComplete2 : IAutoComplete { - HRESULT SetOptions(DWORD); - HRESULT GetOptions(DWORD*); -} -alias IAutoComplete2 LPAUTOCOMPLETE2; diff --git a/3rdparty-extra/win32/shlwapi.d b/3rdparty-extra/win32/shlwapi.d deleted file mode 100644 index a5167870b..000000000 --- a/3rdparty-extra/win32/shlwapi.d +++ /dev/null @@ -1,731 +0,0 @@ -/***********************************************************************\ -* shlwapi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.shlwapi; -version(Windows): -pragma(lib, "shlwapi"); - -/* Changes compared to MinGW: -wnsprintf functions are not included. -// Macros unneeded for D -#define StrCmpIA lstrcmpiA; -#define StrCmpA lstrcmpA; -#define StrCpyA lstrcpyA; -#define StrCpyNA lstrcpynA; -#define MAKEDLLVERULL(major, minor, build, qfe) \ - (((ULONGLONG)(major) << 48) | \ - ((ULONGLONG)(minor) << 32) | \ - ((ULONGLONG)(build) << 16) | \ - ((ULONGLONG)( qfe) << 0)) -*/ - -import win32.objbase, win32.shlobj; -private import win32.basetyps, win32.objidl, win32.unknwn, win32.windef, - win32.winbase, win32.winreg; - -const DLLVER_PLATFORM_WINDOWS = 0x00000001; -const DLLVER_PLATFORM_NT = 0x00000002; - -const URL_DONT_ESCAPE_EXTRA_INFO = 0x02000000; -const URL_DONT_SIMPLIFY = 0x08000000; -const URL_ESCAPE_PERCENT = 0x00001000; -const URL_ESCAPE_SEGMENT_ONLY = 0x00002000; -const URL_ESCAPE_SPACES_ONLY = 0x04000000; -const URL_ESCAPE_UNSAFE = 0x20000000; -const URL_INTERNAL_PATH = 0x00800000; -const URL_PARTFLAG_KEEPSCHEME = 0x00000001; -const URL_PLUGGABLE_PROTOCOL = 0x40000000; -const URL_UNESCAPE = 0x10000000; -const URL_UNESCAPE_HIGH_ANSI_ONLY = 0x00400000; -const URL_UNESCAPE_INPLACE = 0x00100000; - -align(1): -struct DLLVERSIONINFO -{ - DWORD cbSize = this.sizeof; - DWORD dwMajorVersion; - DWORD dwMinorVersion; - DWORD dwBuildNumber; - DWORD dwPlatformID; -} - -struct DLLVERSIONINFO2 -{ - DLLVERSIONINFO info1; - DWORD dwFlags; - ULONGLONG ullVersion; -} - -enum ASSOCSTR { - ASSOCSTR_COMMAND, - ASSOCSTR_EXECUTABLE, - ASSOCSTR_FRIENDLYDOCNAME, - ASSOCSTR_FRIENDLYAPPNAME, - ASSOCSTR_NOOPEN, - ASSOCSTR_SHELLNEWVALUE, - ASSOCSTR_DDECOMMAND, - ASSOCSTR_DDEIFEXEC, - ASSOCSTR_DDEAPPLICATION, - ASSOCSTR_DDETOPIC -} - -enum ASSOCKEY -{ - ASSOCKEY_SHELLEXECCLASS = 1, - ASSOCKEY_APP, - ASSOCKEY_CLASS, - ASSOCKEY_BASECLASS -} - -enum ASSOCDATA -{ - ASSOCDATA_MSIDESCRIPTOR = 1, - ASSOCDATA_NOACTIVATEHANDLER, - ASSOCDATA_QUERYCLASSSTORE -} - -alias DWORD ASSOCF; - -enum SHREGDEL_FLAGS -{ - SHREGDEL_DEFAULT = 0x00000000, - SHREGDEL_HKCU = 0x00000001, - SHREGDEL_HKLM = 0x00000010, - SHREGDEL_BOTH = 0x00000011 -} - -enum SHREGENUM_FLAGS -{ - SHREGENUM_DEFAULT = 0x00000000, - SHREGENUM_HKCU = 0x00000001, - SHREGENUM_HKLM = 0x00000010, - SHREGENUM_BOTH = 0x00000011 -} - -enum URLIS -{ - URLIS_URL, - URLIS_OPAQUE, - URLIS_NOHISTORY, - URLIS_FILEURL, - URLIS_APPLIABLE, - URLIS_DIRECTORY, - URLIS_HASQUERY -} - -mixin DECLARE_HANDLE!("HUSKEY"); -alias HUSKEY* PHUSKEY; - -extern (Windows) -{ - alias HRESULT function (DLLVERSIONINFO *) DLLGETVERSIONPROC; -} - - -BOOL IntlStrEqNA(LPCSTR pStr1, LPCSTR pStr2, int nChar) -{ - return IntlStrEqWorkerA(TRUE, pStr1, pStr2, nChar); -} - -BOOL IntlStrEqNW(LPCWSTR pStr1, LPCWSTR pStr2, int nChar) -{ - return IntlStrEqWorkerW(TRUE, pStr1, pStr2, nChar); -} - -BOOL IntlStrEqNIA(LPCSTR pStr1, LPCSTR pStr2, int nChar) -{ - return IntlStrEqWorkerA(FALSE, pStr1, pStr2, nChar); -} - -BOOL IntlStrEqNIW(LPCWSTR pStr1, LPCWSTR pStr2, int nChar) -{ - return IntlStrEqWorkerW(FALSE, pStr1, pStr2, nChar); -} - -BOOL UrlIsFileUrlA(LPCSTR pszURL) -{ - return UrlIsA(pszURL, URLIS.URLIS_FILEURL); -} - -BOOL UrlIsFileUrlW(LPCWSTR pszURL) -{ - return UrlIsW(pszURL, URLIS.URLIS_FILEURL); -} - -HRESULT UrlUnescapeInPlaceA(LPSTR pszUrl, DWORD dwFlags) -{ - return UrlUnescapeA(pszUrl, null, null, dwFlags | URL_UNESCAPE_INPLACE); -} -HRESULT UrlUnescapeInPlaceW(LPWSTR pszUrl, DWORD dwFlags) -{ - return UrlUnescapeW(pszUrl, null, null, dwFlags | URL_UNESCAPE_INPLACE); -} - -extern (Windows): -BOOL ChrCmpIA(WORD, WORD); -BOOL ChrCmpIW(WCHAR, WCHAR); -BOOL IntlStrEqWorkerA(BOOL, LPCSTR, LPCSTR, int); -BOOL IntlStrEqWorkerW(BOOL, LPCWSTR, LPCWSTR, int); -HRESULT SHStrDupA(LPCSTR, LPWSTR*); -HRESULT SHStrDupW(LPCWSTR, LPWSTR*); -LPSTR StrCatA(LPSTR, LPCSTR); -LPWSTR StrCatW(LPWSTR, LPCWSTR); -LPSTR StrCatBuffA(LPSTR, LPCSTR, int); -LPWSTR StrCatBuffW(LPWSTR, LPCWSTR, int); -DWORD StrCatChainW(LPWSTR, DWORD, DWORD, LPCWSTR); -LPSTR StrChrA(LPCSTR, WORD); -LPWSTR StrChrW(LPCWSTR, WCHAR); -LPSTR StrChrIA(LPCSTR, WORD); -LPWSTR StrChrIW(LPCWSTR, WCHAR); -int StrCmpIW(LPCWSTR, LPCWSTR); -int StrCmpW(LPCWSTR, LPCWSTR); -LPWSTR StrCpyW(LPWSTR, LPCWSTR); -LPWSTR StrCpyNW(LPWSTR, LPCWSTR, int); -int StrCmpNA(LPCSTR, LPCSTR, int); -int StrCmpNW(LPCWSTR, LPCWSTR, int); -int StrCmpNIA(LPCSTR, LPCSTR, int); -int StrCmpNIW(LPCWSTR, LPCWSTR, int); -int StrCSpnA(LPCSTR, LPCSTR); -int StrCSpnW(LPCWSTR, LPCWSTR); -int StrCSpnIA(LPCSTR, LPCSTR); -int StrCSpnIW(LPCWSTR, LPCWSTR); -LPSTR StrDupA(LPCSTR); -LPWSTR StrDupW(LPCWSTR); -LPSTR StrFormatByteSize64A(LONGLONG, LPSTR, UINT); -LPSTR StrFormatByteSizeA(DWORD, LPSTR, UINT); -LPWSTR StrFormatByteSizeW(LONGLONG, LPWSTR, UINT); -LPSTR StrFormatKBSizeA(LONGLONG, LPSTR, UINT); -LPWSTR StrFormatKBSizeW(LONGLONG, LPWSTR, UINT); -int StrFromTimeIntervalA(LPSTR, UINT, DWORD, int); -int StrFromTimeIntervalW(LPWSTR, UINT, DWORD, int); -BOOL StrIsIntlEqualA(BOOL, LPCSTR, LPCSTR, int); -BOOL StrIsIntlEqualW(BOOL, LPCWSTR, LPCWSTR, int); -LPSTR StrNCatA(LPSTR, LPCSTR, int); -LPWSTR StrNCatW(LPWSTR, LPCWSTR, int); -LPSTR StrPBrkA(LPCSTR, LPCSTR); -LPWSTR StrPBrkW(LPCWSTR, LPCWSTR); -LPSTR StrRChrA(LPCSTR, LPCSTR, WORD); -LPWSTR StrRChrW(LPCWSTR, LPCWSTR, WCHAR); -LPSTR StrRChrIA(LPCSTR, LPCSTR, WORD); -LPWSTR StrRChrIW(LPCWSTR, LPCWSTR, WCHAR); -LPSTR StrRStrIA(LPCSTR, LPCSTR, LPCSTR); -LPWSTR StrRStrIW(LPCWSTR, LPCWSTR, LPCWSTR); -int StrSpnA(LPCSTR, LPCSTR); -int StrSpnW(LPCWSTR, LPCWSTR); -LPSTR StrStrA(LPCSTR, LPCSTR); -LPSTR StrStrIA(LPCSTR, LPCSTR); -LPWSTR StrStrIW(LPCWSTR, LPCWSTR); -LPWSTR StrStrW(LPCWSTR, LPCWSTR); -int StrToIntA(LPCSTR); -int StrToIntW(LPCWSTR); -BOOL StrToIntExA(LPCSTR, DWORD, int*); -BOOL StrToIntExW(LPCWSTR, DWORD, int*); -BOOL StrTrimA(LPSTR, LPCSTR); -BOOL StrTrimW(LPWSTR, LPCWSTR); -LPSTR PathAddBackslashA(LPSTR); -LPWSTR PathAddBackslashW(LPWSTR); -BOOL PathAddExtensionA(LPSTR, LPCSTR); -BOOL PathAddExtensionW(LPWSTR, LPCWSTR); -BOOL PathAppendA(LPSTR, LPCSTR); -BOOL PathAppendW(LPWSTR, LPCWSTR); -LPSTR PathBuildRootA(LPSTR, int); -LPWSTR PathBuildRootW(LPWSTR, int); -BOOL PathCanonicalizeA(LPSTR, LPCSTR); -BOOL PathCanonicalizeW(LPWSTR, LPCWSTR); -LPSTR PathCombineA(LPSTR, LPCSTR, LPCSTR); -LPWSTR PathCombineW(LPWSTR, LPCWSTR, LPCWSTR); -int PathCommonPrefixA(LPCSTR, LPCSTR, LPSTR); -int PathCommonPrefixW(LPCWSTR, LPCWSTR, LPWSTR); -BOOL PathCompactPathA(HDC, LPSTR, UINT); -BOOL PathCompactPathW(HDC, LPWSTR, UINT); -BOOL PathCompactPathExA(LPSTR, LPCSTR, UINT, DWORD); -BOOL PathCompactPathExW(LPWSTR, LPCWSTR, UINT, DWORD); -HRESULT PathCreateFromUrlA(LPCSTR, LPSTR, LPDWORD, DWORD); -HRESULT PathCreateFromUrlW(LPCWSTR, LPWSTR, LPDWORD, DWORD); -BOOL PathFileExistsA(LPCSTR); -BOOL PathFileExistsW(LPCWSTR); -LPSTR PathFindExtensionA(LPCSTR); -LPWSTR PathFindExtensionW(LPCWSTR); -LPSTR PathFindFileNameA(LPCSTR); -LPWSTR PathFindFileNameW(LPCWSTR); -LPSTR PathFindNextComponentA(LPCSTR); -LPWSTR PathFindNextComponentW(LPCWSTR); -BOOL PathFindOnPathA(LPSTR, LPCSTR*); -BOOL PathFindOnPathW(LPWSTR, LPCWSTR*); -LPCSTR PathFindSuffixArrayA(LPCSTR, LPCSTR*, int); -LPCWSTR PathFindSuffixArrayW(LPCWSTR, LPCWSTR*, int); -LPSTR PathGetArgsA(LPCSTR); -LPWSTR PathGetArgsW(LPCWSTR); -UINT PathGetCharTypeA(UCHAR); -UINT PathGetCharTypeW(WCHAR); -int PathGetDriveNumberA(LPCSTR); -int PathGetDriveNumberW(LPCWSTR); -BOOL PathIsContentTypeA(LPCSTR, LPCSTR); -BOOL PathIsContentTypeW(LPCWSTR, LPCWSTR); -BOOL PathIsDirectoryA(LPCSTR); -BOOL PathIsDirectoryEmptyA(LPCSTR); -BOOL PathIsDirectoryEmptyW(LPCWSTR); -BOOL PathIsDirectoryW(LPCWSTR); -BOOL PathIsFileSpecA(LPCSTR); -BOOL PathIsFileSpecW(LPCWSTR); -BOOL PathIsLFNFileSpecA(LPCSTR); -BOOL PathIsLFNFileSpecW(LPCWSTR); -BOOL PathIsNetworkPathA(LPCSTR); -BOOL PathIsNetworkPathW(LPCWSTR); -BOOL PathIsPrefixA(LPCSTR, LPCSTR); -BOOL PathIsPrefixW(LPCWSTR, LPCWSTR); -BOOL PathIsRelativeA(LPCSTR); -BOOL PathIsRelativeW(LPCWSTR); -BOOL PathIsRootA(LPCSTR); -BOOL PathIsRootW(LPCWSTR); -BOOL PathIsSameRootA(LPCSTR, LPCSTR); -BOOL PathIsSameRootW(LPCWSTR, LPCWSTR); -BOOL PathIsSystemFolderA(LPCSTR, DWORD); -BOOL PathIsSystemFolderW(LPCWSTR, DWORD); -BOOL PathIsUNCA(LPCSTR); -BOOL PathIsUNCServerA(LPCSTR); -BOOL PathIsUNCServerShareA(LPCSTR); -BOOL PathIsUNCServerShareW(LPCWSTR); -BOOL PathIsUNCServerW(LPCWSTR); -BOOL PathIsUNCW(LPCWSTR); -BOOL PathIsURLA(LPCSTR); -BOOL PathIsURLW(LPCWSTR); -BOOL PathMakePrettyA(LPSTR); -BOOL PathMakePrettyW(LPWSTR); -BOOL PathMakeSystemFolderA(LPSTR); -BOOL PathMakeSystemFolderW(LPWSTR); -BOOL PathMatchSpecA(LPCSTR, LPCSTR); -BOOL PathMatchSpecW(LPCWSTR, LPCWSTR); -int PathParseIconLocationA(LPSTR); -int PathParseIconLocationW(LPWSTR); -void PathQuoteSpacesA(LPSTR); -void PathQuoteSpacesW(LPWSTR); -BOOL PathRelativePathToA(LPSTR, LPCSTR, DWORD, LPCSTR, DWORD); -BOOL PathRelativePathToW(LPWSTR, LPCWSTR, DWORD, LPCWSTR, DWORD); -void PathRemoveArgsA(LPSTR); -void PathRemoveArgsW(LPWSTR); -LPSTR PathRemoveBackslashA(LPSTR); -LPWSTR PathRemoveBackslashW(LPWSTR); -void PathRemoveBlanksA(LPSTR); -void PathRemoveBlanksW(LPWSTR); -void PathRemoveExtensionA(LPSTR); -void PathRemoveExtensionW(LPWSTR); -BOOL PathRemoveFileSpecA(LPSTR); -BOOL PathRemoveFileSpecW(LPWSTR); -BOOL PathRenameExtensionA(LPSTR, LPCSTR); -BOOL PathRenameExtensionW(LPWSTR, LPCWSTR); -BOOL PathSearchAndQualifyA(LPCSTR, LPSTR, UINT); -BOOL PathSearchAndQualifyW(LPCWSTR, LPWSTR, UINT); -void PathSetDlgItemPathA(HWND, int, LPCSTR); -void PathSetDlgItemPathW(HWND, int, LPCWSTR); -LPSTR PathSkipRootA(LPCSTR); -LPWSTR PathSkipRootW(LPCWSTR); -void PathStripPathA(LPSTR); -void PathStripPathW(LPWSTR); -BOOL PathStripToRootA(LPSTR); -BOOL PathStripToRootW(LPWSTR); -void PathUndecorateA(LPSTR); -void PathUndecorateW(LPWSTR); -BOOL PathUnExpandEnvStringsA(LPCSTR, LPSTR, UINT); -BOOL PathUnExpandEnvStringsW(LPCWSTR, LPWSTR, UINT); -BOOL PathUnmakeSystemFolderA(LPSTR); -BOOL PathUnmakeSystemFolderW(LPWSTR); -void PathUnquoteSpacesA(LPSTR); -void PathUnquoteSpacesW(LPWSTR); -HRESULT SHAutoComplete(HWND, DWORD); -BOOL SHCreateThread(LPTHREAD_START_ROUTINE, void*, DWORD, LPTHREAD_START_ROUTINE); -DWORD SHCopyKeyA(HKEY, LPCSTR, HKEY, DWORD); -DWORD SHCopyKeyW(HKEY, LPCWSTR, HKEY, DWORD); -DWORD SHDeleteEmptyKeyA(HKEY, LPCSTR); -DWORD SHDeleteEmptyKeyW(HKEY, LPCWSTR); -DWORD SHDeleteKeyA(HKEY, LPCSTR); -DWORD SHDeleteKeyW(HKEY, LPCWSTR); -DWORD SHEnumKeyExA(HKEY, DWORD, LPSTR, LPDWORD); -DWORD SHEnumKeyExW(HKEY, DWORD, LPWSTR, LPDWORD); -DWORD SHQueryInfoKeyA(HKEY, LPDWORD, LPDWORD, LPDWORD, LPDWORD); -DWORD SHQueryInfoKeyW(HKEY, LPDWORD, LPDWORD, LPDWORD, LPDWORD); -DWORD SHQueryValueExA(HKEY, LPCSTR, LPDWORD, LPDWORD, LPVOID, LPDWORD); -DWORD SHQueryValueExW(HKEY, LPCWSTR, LPDWORD, LPDWORD, LPVOID, LPDWORD); -HRESULT SHGetThreadRef(IUnknown*); -HRESULT SHSetThreadRef(IUnknown); -BOOL SHSkipJunction(IBindCtx, const(CLSID)*); -DWORD SHEnumValueA(HKEY, DWORD, LPSTR, LPDWORD, LPDWORD, LPVOID, LPDWORD); -DWORD SHEnumValueW(HKEY, DWORD, LPWSTR, LPDWORD, LPDWORD, LPVOID, LPDWORD); -DWORD SHGetValueA(HKEY, LPCSTR, LPCSTR, LPDWORD, LPVOID, LPDWORD); -DWORD SHGetValueW(HKEY, LPCWSTR, LPCWSTR, LPDWORD, LPVOID, LPDWORD); -DWORD SHSetValueA(HKEY, LPCSTR, LPCSTR, DWORD, LPCVOID, DWORD); -DWORD SHSetValueW(HKEY, LPCWSTR, LPCWSTR, DWORD, LPCVOID, DWORD); -DWORD SHDeleteValueA(HKEY, LPCSTR, LPCSTR); -DWORD SHDeleteValueW(HKEY, LPCWSTR, LPCWSTR); -HRESULT AssocCreate(CLSID, const(IID)* , const(LPVOID)*); -HRESULT AssocQueryKeyA(ASSOCF, ASSOCKEY, LPCSTR, LPCSTR, HKEY*); -HRESULT AssocQueryKeyW(ASSOCF, ASSOCKEY, LPCWSTR, LPCWSTR, HKEY*); -HRESULT AssocQueryStringA(ASSOCF, ASSOCSTR, LPCSTR, LPCSTR, LPSTR, DWORD*); -HRESULT AssocQueryStringByKeyA(ASSOCF, ASSOCSTR, HKEY, LPCSTR, LPSTR, DWORD*); -HRESULT AssocQueryStringByKeyW(ASSOCF, ASSOCSTR, HKEY, LPCWSTR, LPWSTR, DWORD*); -HRESULT AssocQueryStringW(ASSOCF, ASSOCSTR, LPCWSTR, LPCWSTR, LPWSTR, DWORD*); -HRESULT UrlApplySchemeA(LPCSTR, LPSTR, LPDWORD, DWORD); -HRESULT UrlApplySchemeW(LPCWSTR, LPWSTR, LPDWORD, DWORD); -HRESULT UrlCanonicalizeA(LPCSTR, LPSTR, LPDWORD, DWORD); -HRESULT UrlCanonicalizeW(LPCWSTR, LPWSTR, LPDWORD, DWORD); -HRESULT UrlCombineA(LPCSTR, LPCSTR, LPSTR, LPDWORD, DWORD); -HRESULT UrlCombineW(LPCWSTR, LPCWSTR, LPWSTR, LPDWORD, DWORD); -int UrlCompareA(LPCSTR, LPCSTR, BOOL); -int UrlCompareW(LPCWSTR, LPCWSTR, BOOL); -HRESULT UrlCreateFromPathA(LPCSTR, LPSTR, LPDWORD, DWORD); -HRESULT UrlCreateFromPathW(LPCWSTR, LPWSTR, LPDWORD, DWORD); -HRESULT UrlEscapeA(LPCSTR, LPSTR, LPDWORD, DWORD); -HRESULT UrlEscapeW(LPCWSTR, LPWSTR, LPDWORD, DWORD); -LPCSTR UrlGetLocationA(LPCSTR); -LPCWSTR UrlGetLocationW(LPCWSTR); -HRESULT UrlGetPartA(LPCSTR, LPSTR, LPDWORD, DWORD, DWORD); -HRESULT UrlGetPartW(LPCWSTR, LPWSTR, LPDWORD, DWORD, DWORD); -HRESULT UrlHashA(LPCSTR, LPBYTE, DWORD); -HRESULT UrlHashW(LPCWSTR, LPBYTE, DWORD); -BOOL UrlIsA(LPCSTR, URLIS); -BOOL UrlIsW(LPCWSTR, URLIS); -BOOL UrlIsNoHistoryA(LPCSTR); -BOOL UrlIsNoHistoryW(LPCWSTR); -BOOL UrlIsOpaqueA(LPCSTR); -BOOL UrlIsOpaqueW(LPCWSTR); -HRESULT UrlUnescapeA(LPSTR, LPSTR, LPDWORD, DWORD); -HRESULT UrlUnescapeW(LPWSTR, LPWSTR, LPDWORD, DWORD); -DWORD SHRegCloseUSKey(HUSKEY); -LONG SHRegCreateUSKeyA(LPCSTR, REGSAM, HUSKEY, PHUSKEY, DWORD); -LONG SHRegCreateUSKeyW(LPCWSTR, REGSAM, HUSKEY, PHUSKEY, DWORD); -LONG SHRegDeleteEmptyUSKeyA(HUSKEY, LPCSTR, SHREGDEL_FLAGS); -LONG SHRegDeleteEmptyUSKeyW(HUSKEY, LPCWSTR, SHREGDEL_FLAGS); -LONG SHRegDeleteUSValueA(HUSKEY, LPCSTR, SHREGDEL_FLAGS); -LONG SHRegDeleteUSValueW(HUSKEY, LPCWSTR, SHREGDEL_FLAGS); -HKEY SHRegDuplicateHKey(HKEY); -DWORD SHRegEnumUSKeyA(HUSKEY, DWORD, LPSTR, LPDWORD, SHREGENUM_FLAGS); -DWORD SHRegEnumUSKeyW(HUSKEY, DWORD, LPWSTR, LPDWORD, SHREGENUM_FLAGS); -DWORD SHRegEnumUSValueA(HUSKEY, DWORD, LPSTR, LPDWORD, LPDWORD, LPVOID, LPDWORD, SHREGENUM_FLAGS); -DWORD SHRegEnumUSValueW(HUSKEY, DWORD, LPWSTR, LPDWORD, LPDWORD, LPVOID, LPDWORD, SHREGENUM_FLAGS); -BOOL SHRegGetBoolUSValueA(LPCSTR, LPCSTR, BOOL, BOOL); -BOOL SHRegGetBoolUSValueW(LPCWSTR, LPCWSTR, BOOL, BOOL); -DWORD SHRegGetPathA(HKEY, LPCSTR, LPCSTR, LPSTR, DWORD); -DWORD SHRegGetPathW(HKEY, LPCWSTR, LPCWSTR, LPWSTR, DWORD); -LONG SHRegGetUSValueA(LPCSTR, LPCSTR, LPDWORD, LPVOID, LPDWORD, BOOL, LPVOID, DWORD); -LONG SHRegGetUSValueW(LPCWSTR, LPCWSTR, LPDWORD, LPVOID, LPDWORD, BOOL, LPVOID, DWORD); -LONG SHRegOpenUSKeyA(LPCSTR, REGSAM, HUSKEY, PHUSKEY, BOOL); -LONG SHRegOpenUSKeyW(LPCWSTR, REGSAM, HUSKEY, PHUSKEY, BOOL); -DWORD SHRegQueryInfoUSKeyA(HUSKEY, LPDWORD, LPDWORD, LPDWORD, LPDWORD, SHREGENUM_FLAGS); -DWORD SHRegQueryInfoUSKeyW(HUSKEY, LPDWORD, LPDWORD, LPDWORD, LPDWORD, SHREGENUM_FLAGS); -LONG SHRegQueryUSValueA(HUSKEY, LPCSTR, LPDWORD, LPVOID, LPDWORD, BOOL, LPVOID, DWORD); -LONG SHRegQueryUSValueW(HUSKEY, LPCWSTR, LPDWORD, LPVOID, LPDWORD, BOOL, LPVOID, DWORD); -DWORD SHRegSetPathA(HKEY, LPCSTR, LPCSTR, LPCSTR, DWORD); -DWORD SHRegSetPathW(HKEY, LPCWSTR, LPCWSTR, LPCWSTR, DWORD); -LONG SHRegSetUSValueA(LPCSTR, LPCSTR, DWORD, LPVOID, DWORD, DWORD); -LONG SHRegSetUSValueW(LPCWSTR, LPCWSTR, DWORD, LPVOID, DWORD, DWORD); -LONG SHRegWriteUSValueA(HUSKEY, LPCSTR, DWORD, LPVOID, DWORD, DWORD); -LONG SHRegWriteUSValueW(HUSKEY, LPCWSTR, DWORD, LPVOID, DWORD, DWORD); -HRESULT HashData(LPBYTE, DWORD, LPBYTE, DWORD); -HPALETTE SHCreateShellPalette(HDC); -COLORREF ColorHLSToRGB(WORD, WORD, WORD); -COLORREF ColorAdjustLuma(COLORREF, int, BOOL); -void ColorRGBToHLS(COLORREF, WORD*, WORD*, WORD*); -/** Should not be necessary for D? -extern (C): -int wnsprintfA(LPSTR, int, LPCSTR, ...); -int wnsprintfW(LPWSTR, int, LPCWSTR, ...); -extern (Windows): -int wvnsprintfA(LPSTR, int, LPCSTR, va_list); -int wvnsprintfW(LPWSTR, int, LPCWSTR, va_list); -*/ - -HINSTANCE MLLoadLibraryA(LPCSTR, HANDLE, DWORD, LPCSTR, BOOL); -HINSTANCE MLLoadLibraryW(LPCWSTR, HANDLE, DWORD, LPCWSTR, BOOL); - -HRESULT DllInstall(BOOL, LPCWSTR); - -HRESULT StrRetToBufA(LPSTRRET, LPCITEMIDLIST, LPSTR, UINT); -HRESULT StrRetToBufW(LPSTRRET, LPCITEMIDLIST, LPWSTR, UINT); -HRESULT StrRetToStrA(LPSTRRET, LPCITEMIDLIST, LPSTR*); -HRESULT StrRetToStrW(LPSTRRET, LPCITEMIDLIST, LPWSTR*); -HRESULT SHCreateStreamOnFileA(LPCSTR, DWORD, IStream*); -HRESULT SHCreateStreamOnFileW(LPCWSTR, DWORD, IStream*); -IStream SHOpenRegStream2A(HKEY, LPCSTR, LPCSTR, DWORD); -IStream SHOpenRegStream2W(HKEY, LPCWSTR, LPCWSTR, DWORD); -IStream SHOpenRegStreamA(HKEY, LPCSTR, LPCSTR, DWORD); -IStream SHOpenRegStreamW(HKEY, LPCWSTR, LPCWSTR, DWORD); - -version(Unicode) { -alias ChrCmpIW ChrCmpI; -alias IntlStrEqNW IntlStrEqN; -alias IntlStrEqNIW IntlStrEqNI; -alias IntlStrEqWorkerW IntlStrEqWorker; -alias SHStrDupW SHStrDup; -alias StrCatW StrCat; -alias StrCatBuffW StrCatBuff; -alias StrChrW StrChr; -alias StrChrIW StrChrI; -alias StrCmpW StrCmp; -alias StrCmpIW StrCmpI; -alias StrCmpNIW StrCmpNI; -alias StrCmpNW StrCmpN; -alias StrCpyNW StrCpyN; -alias StrCpyW StrCpy; -alias StrCSpnIW StrCSpnI; -alias StrCSpnW StrCSpn; -alias StrDupW StrDup; -alias StrFormatByteSizeW StrFormatByteSize; -alias StrFormatKBSizeW StrFormatKBSize; -alias StrFromTimeIntervalW StrFromTimeInterval; -alias StrIsIntlEqualW StrIsIntlEqual; -alias StrNCatW StrNCat; -alias StrPBrkW StrPBrk; -alias StrRChrW StrRChr; -alias StrRChrIW StrRChrI; -alias StrRetToBufW StrRetToBuf; -alias StrRetToStrW StrRetToStr; -alias StrRStrIW StrRStrI; -alias StrSpnW StrSpn; -alias StrStrIW StrStrI; -alias StrStrW StrStr; -alias StrToIntW StrToInt; -alias StrToIntExW StrToIntEx; -alias StrTrimW StrTrim; -alias PathAddBackslashW PathAddBackslash; -alias PathAddExtensionW PathAddExtension; -alias PathAppendW PathAppend; -alias PathBuildRootW PathBuildRoot; -alias PathCanonicalizeW PathCanonicalize; -alias PathCombineW PathCombine; -alias PathCommonPrefixW PathCommonPrefix; -alias PathCompactPathW PathCompactPath; -alias PathCompactPathExW PathCompactPathEx; -alias PathCreateFromUrlW PathCreateFromUrl; -alias PathFileExistsW PathFileExists; -alias PathFindExtensionW PathFindExtension; -alias PathFindFileNameW PathFindFileName; -alias PathFindNextComponentW PathFindNextComponent; -alias PathFindOnPathW PathFindOnPath; -alias PathFindSuffixArrayW PathFindSuffixArray; -alias PathGetArgsW PathGetArgs; -alias PathGetCharTypeW PathGetCharType; -alias PathGetDriveNumberW PathGetDriveNumber; -alias PathIsContentTypeW PathIsContentType; -alias PathIsDirectoryEmptyW PathIsDirectoryEmpty; -alias PathIsDirectoryW PathIsDirectory; -alias PathIsFileSpecW PathIsFileSpec; -alias PathIsLFNFileSpecW PathIsLFNFileSpec; -alias PathIsNetworkPathW PathIsNetworkPath; -alias PathIsPrefixW PathIsPrefix; -alias PathIsRelativeW PathIsRelative; -alias PathIsRootW PathIsRoot; -alias PathIsSameRootW PathIsSameRoot; -alias PathIsSystemFolderW PathIsSystemFolder; -alias PathIsUNCServerShareW PathIsUNCServerShare; -alias PathIsUNCServerW PathIsUNCServer; -alias PathIsUNCW PathIsUNC; -alias PathIsURLW PathIsURL; -alias PathMakePrettyW PathMakePretty; -alias PathMakeSystemFolderW PathMakeSystemFolder; -alias PathMatchSpecW PathMatchSpec; -alias PathParseIconLocationW PathParseIconLocation; -alias PathQuoteSpacesW PathQuoteSpaces; -alias PathRelativePathToW PathRelativePathTo; -alias PathRemoveArgsW PathRemoveArgs; -alias PathRemoveBackslashW PathRemoveBackslash; -alias PathRemoveBlanksW PathRemoveBlanks; -alias PathRemoveExtensionW PathRemoveExtension; -alias PathRemoveFileSpecW PathRemoveFileSpec; -alias PathRenameExtensionW PathRenameExtension; -alias PathSearchAndQualifyW PathSearchAndQualify; -alias PathSetDlgItemPathW PathSetDlgItemPath; -alias PathSkipRootW PathSkipRoot; -alias PathStripPathW PathStripPath; -alias PathStripToRootW PathStripToRoot; -alias PathUndecorateW PathUndecorate; -alias PathUnExpandEnvStringsW PathUnExpandEnvStrings; -alias PathUnmakeSystemFolderW PathUnmakeSystemFolder; -alias PathUnquoteSpacesW PathUnquoteSpaces; -alias SHCreateStreamOnFileW SHCreateStreamOnFile; -alias SHOpenRegStreamW SHOpenRegStream; -alias SHOpenRegStream2W SHOpenRegStream2; -alias SHCopyKeyW SHCopyKey; -alias SHDeleteEmptyKeyW SHDeleteEmptyKey; -alias SHDeleteKeyW SHDeleteKey; -alias SHEnumKeyExW SHEnumKeyEx; -alias SHQueryInfoKeyW SHQueryInfoKey; -alias SHQueryValueExW SHQueryValueEx; -alias SHEnumValueW SHEnumValue; -alias SHGetValueW SHGetValue; -alias SHSetValueW SHSetValue; -alias SHDeleteValueW SHDeleteValue; -alias AssocQueryKeyW AssocQueryKey; -alias AssocQueryStringByKeyW AssocQueryStringByKey; -alias AssocQueryStringW AssocQueryString; -alias UrlApplySchemeW UrlApplyScheme; -alias UrlCanonicalizeW UrlCanonicalize; -alias UrlCombineW UrlCombine; -alias UrlCompareW UrlCompare; -alias UrlCreateFromPathW UrlCreateFromPath; -alias UrlEscapeW UrlEscape; -alias UrlGetLocationW UrlGetLocation; -alias UrlGetPartW UrlGetPart; -alias UrlHashW UrlHash; -alias UrlIsW UrlIs; -alias UrlIsFileUrlW UrlIsFileUrl; -alias UrlIsNoHistoryW UrlIsNoHistory; -alias UrlIsOpaqueW UrlIsOpaque; -alias UrlUnescapeW UrlUnescape; -alias UrlUnescapeInPlaceW UrlUnescapeInPlace; -alias SHRegCreateUSKeyW SHRegCreateUSKey; -alias SHRegDeleteEmptyUSKeyW SHRegDeleteEmptyUSKey; -alias SHRegDeleteUSValueW SHRegDeleteUSValue; -alias SHRegEnumUSKeyW SHRegEnumUSKey; -alias SHRegEnumUSValueW SHRegEnumUSValue; -alias SHRegGetBoolUSValueW SHRegGetBoolUSValue; -alias SHRegGetPathW SHRegGetPath; -alias SHRegGetUSValueW SHRegGetUSValue; -alias SHRegOpenUSKeyW SHRegOpenUSKey; -alias SHRegQueryInfoUSKeyW SHRegQueryInfoUSKey; -alias SHRegQueryUSValueW SHRegQueryUSValue; -alias SHRegSetPathW SHRegSetPath; -alias SHRegSetUSValueW SHRegSetUSValue; -alias SHRegWriteUSValueW SHRegWriteUSValue; -//alias wnsprintfW wnsprintf; -//alias wvnsprintfW wvnsprintf; -} else { -alias ChrCmpIA ChrCmpI; -alias IntlStrEqNA IntlStrEqN; -alias IntlStrEqNIA IntlStrEqNI; -alias IntlStrEqWorkerA IntlStrEqWorker; -alias SHStrDupA SHStrDup; -alias StrCatBuffA StrCatBuff; -alias StrChrA StrChr; -alias StrChrIA StrChrI; -alias StrCmpNIA StrCmpNI; -alias StrCmpNA StrCmpN; -alias StrCSpnIA StrCSpnI; -alias StrCSpnA StrCSpn; -alias StrDupA StrDup; -alias StrFormatByteSizeA StrFormatByteSize; -alias StrFormatKBSizeA StrFormatKBSize; -alias StrFromTimeIntervalA StrFromTimeInterval; -alias StrIsIntlEqualA StrIsIntlEqual; -alias StrNCatA StrNCat; -alias StrPBrkA StrPBrk; -alias StrRChrA StrRChr; -alias StrRChrIA StrRChrI; -alias StrRetToBufA StrRetToBuf; -alias StrRetToStrA StrRetToStr; -alias StrRStrIA StrRStrI; -alias StrSpnA StrSpn; -alias StrStrIA StrStrI; -alias StrStrA StrStr; -alias StrToIntA StrToInt; -alias StrToIntExA StrToIntEx; -alias StrTrimA StrTrim; -alias PathAddBackslashA PathAddBackslash; -alias PathAddExtensionA PathAddExtension; -alias PathAppendA PathAppend; -alias PathBuildRootA PathBuildRoot; -alias PathCanonicalizeA PathCanonicalize; -alias PathCombineA PathCombine; -alias PathCommonPrefixA PathCommonPrefix; -alias PathCompactPathA PathCompactPath; -alias PathCompactPathExA PathCompactPathEx; -alias PathCreateFromUrlA PathCreateFromUrl; -alias PathFileExistsA PathFileExists; -alias PathFindExtensionA PathFindExtension; -alias PathFindFileNameA PathFindFileName; -alias PathFindNextComponentA PathFindNextComponent; -alias PathFindOnPathA PathFindOnPath; -alias PathFindSuffixArrayA PathFindSuffixArray; -alias PathGetArgsA PathGetArgs; -alias PathGetCharTypeA PathGetCharType; -alias PathGetDriveNumberA PathGetDriveNumber; -alias PathIsContentTypeA PathIsContentType; -alias PathIsDirectoryEmptyA PathIsDirectoryEmpty; -alias PathIsDirectoryA PathIsDirectory; -alias PathIsFileSpecA PathIsFileSpec; -alias PathIsLFNFileSpecA PathIsLFNFileSpec; -alias PathIsNetworkPathA PathIsNetworkPath; -alias PathIsPrefixA PathIsPrefix; -alias PathIsRelativeA PathIsRelative; -alias PathIsRootA PathIsRoot; -alias PathIsSameRootA PathIsSameRoot; -alias PathIsSystemFolderA PathIsSystemFolder; -alias PathIsUNCServerShareA PathIsUNCServerShare; -alias PathIsUNCServerA PathIsUNCServer; -alias PathIsUNCA PathIsUNC; -alias PathIsURLA PathIsURL; -alias PathMakePrettyA PathMakePretty; -alias PathMakeSystemFolderA PathMakeSystemFolder; -alias PathMatchSpecA PathMatchSpec; -alias PathParseIconLocationA PathParseIconLocation; -alias PathQuoteSpacesA PathQuoteSpaces; -alias PathRelativePathToA PathRelativePathTo; -alias PathRemoveArgsA PathRemoveArgs; -alias PathRemoveBackslashA PathRemoveBackslash; -alias PathRemoveBlanksA PathRemoveBlanks; -alias PathRemoveExtensionA PathRemoveExtension; -alias PathRemoveFileSpecA PathRemoveFileSpec; -alias PathRenameExtensionA PathRenameExtension; -alias PathSearchAndQualifyA PathSearchAndQualify; -alias PathSetDlgItemPathA PathSetDlgItemPath; -alias PathSkipRootA PathSkipRoot; -alias PathStripPathA PathStripPath; -alias PathStripToRootA PathStripToRoot; -alias PathUndecorateA PathUndecorate; -alias PathUnExpandEnvStringsA PathUnExpandEnvStrings; -alias PathUnmakeSystemFolderA PathUnmakeSystemFolder; -alias PathUnquoteSpacesA PathUnquoteSpaces; -alias SHCreateStreamOnFileA SHCreateStreamOnFile; -alias SHOpenRegStreamA SHOpenRegStream; -alias SHOpenRegStream2A SHOpenRegStream2; -alias SHCopyKeyA SHCopyKey; -alias SHDeleteEmptyKeyA SHDeleteEmptyKey; -alias SHDeleteKeyA SHDeleteKey; -alias SHEnumKeyExA SHEnumKeyEx; -alias SHQueryInfoKeyA SHQueryInfoKey; -alias SHQueryValueExA SHQueryValueEx; -alias SHEnumValueA SHEnumValue; -alias SHGetValueA SHGetValue; -alias SHSetValueA SHSetValue; -alias SHDeleteValueA SHDeleteValue; -alias AssocQueryKeyA AssocQueryKey; -alias AssocQueryStringByKeyA AssocQueryStringByKey; -alias AssocQueryStringA AssocQueryString; -alias UrlApplySchemeA UrlApplyScheme; -alias UrlCanonicalizeA UrlCanonicalize; -alias UrlCombineA UrlCombine; -alias UrlCompareA UrlCompare; -alias UrlCreateFromPathA UrlCreateFromPath; -alias UrlEscapeA UrlEscape; -alias UrlGetLocationA UrlGetLocation; -alias UrlGetPartA UrlGetPart; -alias UrlHashA UrlHash; -alias UrlIsA UrlIs; -alias UrlIsNoHistoryA UrlIsNoHistory; -alias UrlIsOpaqueA UrlIsOpaque; -alias UrlUnescapeA UrlUnescape; -alias UrlUnescapeInPlaceA UrlUnescapeInPlace; -alias SHRegCreateUSKeyA SHRegCreateUSKey; -alias SHRegDeleteEmptyUSKeyA SHRegDeleteEmptyUSKey; -alias SHRegDeleteUSValueA SHRegDeleteUSValue; -alias SHRegEnumUSKeyA SHRegEnumUSKey; -alias SHRegEnumUSValueA SHRegEnumUSValue; -alias SHRegGetBoolUSValueA SHRegGetBoolUSValue; -alias SHRegGetPathA SHRegGetPath; -alias SHRegGetUSValueA SHRegGetUSValue; -alias SHRegOpenUSKeyA SHRegOpenUSKey; -alias SHRegQueryInfoUSKeyA SHRegQueryInfoUSKey; -alias SHRegQueryUSValueA SHRegQueryUSValue; -alias SHRegSetPathA SHRegSetPath; -alias SHRegSetUSValueA SHRegSetUSValue; -alias SHRegWriteUSValueA SHRegWriteUSValue; -//alias wnsprintfA wnsprintf; -//alias wvnsprintfA wvnsprintf; -} - -alias StrToInt StrToLong; diff --git a/3rdparty-extra/win32/snmp.d b/3rdparty-extra/win32/snmp.d deleted file mode 100644 index 7bb322035..000000000 --- a/3rdparty-extra/win32/snmp.d +++ /dev/null @@ -1,270 +0,0 @@ -/***********************************************************************\ -* snmp.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.snmp; -version(Windows): - -private import win32.windows; - -// These are not documented on MSDN -enum { - DEFAULT_SNMP_PORT_UDP = 161, - DEFAULT_SNMP_PORT_IPX = 36879, - DEFAULT_SNMPTRAP_PORT_UDP = 162, - DEFAULT_SNMPTRAP_PORT_IPX = 36880 -} - -enum : BYTE { - ASN_UNIVERSAL = 0x00, - ASN_PRIMITIVE = 0x00, - ASN_CONSTRUCTOR = 0x20, - ASN_APPLICATION = 0x40, - ASN_CONTEXT = 0x80, - ASN_PRIVATE = 0xC0, - - SNMP_PDU_GET = ASN_CONTEXT | ASN_CONSTRUCTOR, - SNMP_PDU_GETNEXT, - SNMP_PDU_RESPONSE, - SNMP_PDU_SET, - SNMP_PDU_GETBULK, // = ASN_CONTEXT | ASN_CONSTRUCTOR | 4 - SNMP_PDU_V1TRAP = ASN_CONTEXT | ASN_CONSTRUCTOR | 4, - SNMP_PDU_INFORM = ASN_CONTEXT | ASN_CONSTRUCTOR | 6, - SNMP_PDU_TRAP, - SNMP_PDU_REPORT, - ASN_INTEGER = ASN_UNIVERSAL | ASN_PRIMITIVE | 2, - ASN_BITS, - ASN_OCTETSTRING, - ASN_NULL, - ASN_OBJECTIDENTIFIER, // = ASN_UNIVERSAL | ASN_PRIMITIVE | 6 - ASN_INTEGER32 = ASN_INTEGER, - ASN_SEQUENCE = ASN_UNIVERSAL | ASN_CONSTRUCTOR | 0x10, - ASN_SEQUENCEOF = ASN_SEQUENCE, - ASN_IPADDRESS = ASN_APPLICATION | ASN_PRIMITIVE, - ASN_COUNTER32, - ASN_GAUGE32, - ASN_TIMETICKS, - ASN_OPAQUE, // = ASN_APPLICATION | ASN_PRIMITIVE | 4 - ASN_COUNTER64 = ASN_APPLICATION | ASN_PRIMITIVE | 6, - ASN_UNSIGNED32, // = ASN_APPLICATION | ASN_PRIMITIVE | 7 - SNMP_EXCEPTION_NOSUCHOBJECT = ASN_CONTEXT | ASN_PRIMITIVE, - SNMP_EXCEPTION_NOSUCHINSTANCE, - SNMP_EXCEPTION_ENDOFMIBVIEW, - SNMP_EXTENSION_GET = SNMP_PDU_GET, - SNMP_EXTENSION_GET_NEXT = SNMP_PDU_GETNEXT, - SNMP_EXTENSION_GET_BULK = SNMP_PDU_GETBULK, - SNMP_EXTENSION_SET_TEST = ASN_PRIVATE | ASN_CONSTRUCTOR, - SNMP_EXTENSION_SET_COMMIT = SNMP_PDU_SET, - SNMP_EXTENSION_SET_UNDO = ASN_PRIVATE | ASN_CONSTRUCTOR | 1, - SNMP_EXTENSION_SET_CLEANUP -} - - -enum : AsnInteger { - SNMP_ERRORSTATUS_NOERROR, - SNMP_ERRORSTATUS_TOOBIG, - SNMP_ERRORSTATUS_NOSUCHNAME, - SNMP_ERRORSTATUS_BADVALUE, - SNMP_ERRORSTATUS_READONLY, - SNMP_ERRORSTATUS_GENERR, - SNMP_ERRORSTATUS_NOACCESS, - SNMP_ERRORSTATUS_WRONGTYPE, - SNMP_ERRORSTATUS_WRONGLENGTH, - SNMP_ERRORSTATUS_WRONGENCODING, - SNMP_ERRORSTATUS_WRONGVALUE, - SNMP_ERRORSTATUS_NOCREATION, - SNMP_ERRORSTATUS_INCONSISTENTVALUE, - SNMP_ERRORSTATUS_RESOURCEUNAVAILABLE, - SNMP_ERRORSTATUS_COMMITFAILED, - SNMP_ERRORSTATUS_UNDOFAILED, - SNMP_ERRORSTATUS_AUTHORIZATIONERROR, - SNMP_ERRORSTATUS_NOTWRITABLE, - SNMP_ERRORSTATUS_INCONSISTENTNAME -} - -enum : AsnInteger { - SNMP_GENERICTRAP_COLDSTART, - SNMP_GENERICTRAP_WARMSTART, - SNMP_GENERICTRAP_LINKDOWN, - SNMP_GENERICTRAP_LINKUP, - SNMP_GENERICTRAP_AUTHFAILURE, - SNMP_GENERICTRAP_EGPNEIGHLOSS, - SNMP_GENERICTRAP_ENTERSPECIFIC -} - -// These are not documented on MSDN -enum { - SNMP_ACCESS_NONE, - SNMP_ACCESS_NOTIFY, - SNMP_ACCESS_READ_ONLY, - SNMP_ACCESS_READ_WRITE, - SNMP_ACCESS_READ_CREATE -} - -enum : BOOL { - SNMPAPI_ERROR = false, - SNMPAPI_NOERROR = true -} - -enum : INT { - SNMP_LOG_SILENT, - SNMP_LOG_FATAL, - SNMP_LOG_ERROR, - SNMP_LOG_WARNING, - SNMP_LOG_TRACE, - SNMP_LOG_VERBOSE -} - -const INT - SNMP_OUTPUT_TO_CONSOLE = 1, - SNMP_OUTPUT_TO_LOGFILE = 2, - SNMP_OUTPUT_TO_EVENTLOG = 4, - SNMP_OUTPUT_TO_DEBUGGER = 8; - -const size_t SNMP_MAX_OID_LEN = 128; - -enum : DWORD { - SNMP_MEM_ALLOC_ERROR = 1, - SNMP_BERAPI_INVALID_LENGTH = 10, - SNMP_BERAPI_INVALID_TAG, - SNMP_BERAPI_OVERFLOW, - SNMP_BERAPI_SHORT_BUFFER, - SNMP_BERAPI_INVALID_OBJELEM, - SNMP_PDUAPI_UNRECOGNIZED_PDU = 20, - SNMP_PDUAPI_INVALID_ES, - SNMP_PDUAPI_INVALID_GT, - SNMP_AUTHAPI_INVALID_VERSION = 30, - SNMP_AUTHAPI_INVALID_MSG_TYPE, - SNMP_AUTHAPI_TRIV_AUTH_FAILED, -} - -alias INT SNMPAPI; -alias LONG AsnInteger32; -alias ULONG AsnUnsigned32, AsnCounter32, AsnGauge32, AsnTimeticks; -alias ULARGE_INTEGER AsnCounter64; - -align (4): - -struct AsnOctetString { - BYTE* stream; - UINT length; - BOOL dynamic; -} -alias AsnOctetString AsnBits, AsnSequence, AsnImplicitSequence, - AsnIPAddress, AsnNetworkAddress, AsnDisplayString, AsnOpaque; - -struct AsnObjectIdentifier { - UINT idLength; - UINT* ids; -} -alias AsnObjectIdentifier AsnObjectName; - -struct AsnAny { - BYTE asnType; - union _asnValue { - AsnInteger32 number; - AsnUnsigned32 unsigned32; - AsnCounter64 counter64; - AsnOctetString string; - AsnBits bits; - AsnObjectIdentifier object; - AsnSequence sequence; - AsnIPAddress address; - AsnCounter32 counter; - AsnGauge32 gauge; - AsnTimeticks ticks; - AsnOpaque arbitrary; - } - _asnValue asnValue; -} -alias AsnAny AsnObjectSyntax; - -struct SnmpVarBind { - AsnObjectName name; - AsnObjectSyntax value; -} - -struct SnmpVarBindList { - SnmpVarBind* list; - UINT len; -} - -extern (Windows) { - VOID SnmpExtensionClose(); - BOOL SnmpExtensionInit(DWORD, HANDLE*, AsnObjectIdentifier*); - BOOL SnmpExtensionInitEx(AsnObjectIdentifier*); - BOOL SnmpExtensionMonitor(LPVOID); - BOOL SnmpExtensionQuery(BYTE, SnmpVarBindList*, AsnInteger32*, - AsnInteger32*); - BOOL SnmpExtensionQueryEx(DWORD, DWORD, SnmpVarBindList*, AsnOctetString*, - AsnInteger32*, AsnInteger32*); - BOOL SnmpExtensionTrap(AsnObjectIdentifier*, AsnInteger32*, AsnInteger32*, - AsnTimeticks*, SnmpVarBindList*); - DWORD SnmpSvcGetUptime(); - VOID SnmpSvcSetLogLevel(INT); - VOID SnmpSvcSetLogType(INT); - SNMPAPI SnmpUtilAsnAnyCpy(AsnAny*, AsnAny*); - VOID SnmpUtilAsnAnyFree(AsnAny*); - VOID SnmpUtilDbgPrint(INT, LPSTR, ...); - LPSTR SnmpUtilIdsToA(UINT*, UINT); - LPVOID SnmpUtilMemAlloc(UINT); - VOID SnmpUtilMemFree(LPVOID); - LPVOID SnmpUtilMemReAlloc(LPVOID, UINT); - SNMPAPI SnmpUtilOctetsCmp(AsnOctetString*, AsnOctetString*); - SNMPAPI SnmpUtilOctetsCpy(AsnOctetString*, AsnOctetString*); - VOID SnmpUtilOctetsFree(AsnOctetString*); - SNMPAPI SnmpUtilOctetsNCmp(AsnOctetString*, AsnOctetString*, UINT); - SNMPAPI SnmpUtilOidAppend(AsnObjectIdentifier*, AsnObjectIdentifier*); - SNMPAPI SnmpUtilOidCmp(AsnObjectIdentifier*, AsnObjectIdentifier*); - SNMPAPI SnmpUtilOidCpy(AsnObjectIdentifier*, AsnObjectIdentifier*); - VOID SnmpUtilOidFree(AsnObjectIdentifier*); - SNMPAPI SnmpUtilOidNCmp(AsnObjectIdentifier*, AsnObjectIdentifier*, UINT); - LPSTR SnmpUtilOidToA(AsnObjectIdentifier*); - VOID SnmpUtilPrintAsnAny(AsnAny*); - VOID SnmpUtilPrintOid(AsnObjectIdentifier*); - SNMPAPI SnmpUtilVarBindCpy(SnmpVarBind*, SnmpVarBind*); - SNMPAPI SnmpUtilVarBindListCpy(SnmpVarBindList*, SnmpVarBindList*); - VOID SnmpUtilVarBindFree(SnmpVarBind*); - VOID SnmpUtilVarBindListFree(SnmpVarBindList*); -} - -alias SnmpUtilMemAlloc SNMP_malloc; -alias SnmpUtilMemFree SNMP_free; -alias SnmpUtilMemReAlloc SNMP_realloc; -alias SnmpUtilMemAlloc SNMP_DBG_malloc; -alias SnmpUtilMemFree SNMP_DBG_free; -alias SnmpUtilMemReAlloc SNMP_DBG_realloc; -alias SnmpUtilOidAppend SNMP_oidappend; -alias SnmpUtilOidCmp SNMP_oidcmp; -alias SnmpUtilOidCpy SNMP_oidcpy; -alias SnmpUtilOidFree SNMP_oidfree; -alias SnmpUtilOidNCmp SNMP_oidncmp; -alias SnmpUtilPrintAsnAny SNMP_printany; -alias SnmpUtilVarBindCpy SNMP_CopyVarBind; -alias SnmpUtilVarBindListCpy SNMP_CopyVarBindList; -alias SnmpUtilVarBindFree SNMP_FreeVarBind; -alias SnmpUtilVarBindListFree SNMP_FreeVarBindList; -alias ASN_IPADDRESS ASN_RFC1155_IPADDRESS; -alias ASN_COUNTER32 ASN_RFC1155_COUNTER; -alias ASN_GAUGE32 ASN_RFC1155_GAUGE; -alias ASN_TIMETICKS ASN_RFC1155_TIMETICKS; -alias ASN_OPAQUE ASN_RFC1155_OPAQUE; -alias ASN_OCTETSTRING ASN_RFC1213_DISPSTRING; -alias SNMP_PDU_GET ASN_RFC1157_GETREQUEST; -alias SNMP_PDU_GETNEXT ASN_RFC1157_GETNEXTREQUEST; -alias SNMP_PDU_RESPONSE ASN_RFC1157_GETRESPONSE; -alias SNMP_PDU_SET ASN_RFC1157_SETREQUEST; -alias SNMP_PDU_V1TRAP ASN_RFC1157_TRAP; -alias ASN_CONTEXT ASN_CONTEXTSPECIFIC; -alias ASN_PRIMITIVE ASN_PRIMATIVE; -alias SnmpVarBindList RFC1157VarBindList; -alias SnmpVarBind RFC1157VarBind; -alias AsnInteger32 AsnInteger; -alias AsnCounter32 AsnCounter; -alias AsnGauge32 AsnGauge; diff --git a/3rdparty-extra/win32/sql.d b/3rdparty-extra/win32/sql.d deleted file mode 100644 index 39561c793..000000000 --- a/3rdparty-extra/win32/sql.d +++ /dev/null @@ -1,435 +0,0 @@ -/***********************************************************************\ -* sql.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.sql; -version(Windows): - -public import win32.sqltypes; -private import win32.windef; - -const ODBCVER = 0x0351; - -const SQL_ACCESSIBLE_PROCEDURES=20; -const SQL_ACCESSIBLE_TABLES=19; -const SQL_ALL_TYPES=0; -const SQL_ALTER_TABLE=86; -const SQL_API_SQLALLOCCONNECT=1; -const SQL_API_SQLALLOCENV=2; -const SQL_API_SQLALLOCSTMT=3; -const SQL_API_SQLBINDCOL=4; -const SQL_API_SQLCANCEL=5; -const SQL_API_SQLCOLUMNS=40; -const SQL_API_SQLCONNECT=7; -const SQL_API_SQLDATASOURCES=57; -const SQL_API_SQLDESCRIBECOL=8; -const SQL_API_SQLDISCONNECT=9; -const SQL_API_SQLERROR=10; -const SQL_API_SQLEXECDIRECT=11; -const SQL_API_SQLEXECUTE=12; -const SQL_API_SQLFETCH=13; -const SQL_API_SQLFREECONNECT=14; -const SQL_API_SQLFREEENV=15; -const SQL_API_SQLFREESTMT=16; -const SQL_API_SQLGETCONNECTOPTION=42; -const SQL_API_SQLGETCURSORNAME=17; -const SQL_API_SQLGETDATA=43; -const SQL_API_SQLGETFUNCTIONS=44; -const SQL_API_SQLGETINFO=45; -const SQL_API_SQLGETSTMTOPTION=46; -const SQL_API_SQLGETTYPEINFO=47; -const SQL_API_SQLNUMRESULTCOLS=18; -const SQL_API_SQLPARAMDATA=48; -const SQL_API_SQLPREPARE=19; -const SQL_API_SQLPUTDATA=49; -const SQL_API_SQLROWCOUNT=20; -const SQL_API_SQLSETCONNECTOPTION=50; -const SQL_API_SQLSETCURSORNAME=21; -const SQL_API_SQLSETPARAM=22; -const SQL_API_SQLSETSTMTOPTION=51; -const SQL_API_SQLSPECIALCOLUMNS=52; -const SQL_API_SQLSTATISTICS=53; -const SQL_API_SQLTABLES=54; -const SQL_API_SQLTRANSACT=23; - -const SQL_CB_DELETE=0; -const SQL_CB_CLOSE=1; -const SQL_CB_PRESERVE=2; - -const SQL_CHAR=1; -const SQL_CLOSE=0; -const SQL_COMMIT=0; -const SQL_CURSOR_COMMIT_BEHAVIOR=23; -const SQL_DATA_AT_EXEC=-2; -const SQL_DATA_SOURCE_NAME=2; -const SQL_DATA_SOURCE_READ_ONLY=25; -const SQL_DBMS_NAME=17; -const SQL_DBMS_VER=18; -const SQL_DECIMAL=3; -const SQL_DEFAULT_TXN_ISOLATION=26; -const SQL_DOUBLE=8; -const SQL_DROP=1; -const SQL_ERROR=-1; - -const SQL_FD_FETCH_NEXT=1; -const SQL_FD_FETCH_FIRST=2; -const SQL_FD_FETCH_LAST=4; -const SQL_FD_FETCH_PRIOR=8; -const SQL_FD_FETCH_ABSOLUTE=16; -const SQL_FD_FETCH_RELATIVE=32; - -const SQL_FETCH_ABSOLUTE=5; -const SQL_FETCH_DIRECTION=8; -const SQL_FETCH_FIRST=2; -const SQL_FETCH_LAST=3; -const SQL_FETCH_NEXT=1; -const SQL_FETCH_PRIOR=4; -const SQL_FETCH_RELATIVE=6; -const SQL_FLOAT=6; -const SQL_GD_ANY_COLUMN=1; -const SQL_GD_ANY_ORDER=2; -const SQL_GETDATA_EXTENSIONS=81; -const SQL_IC_LOWER=2; -const SQL_IC_MIXED=4; -const SQL_IC_SENSITIVE=3; -const SQL_IC_UPPER=1; -const SQL_IDENTIFIER_CASE=28; -const SQL_IDENTIFIER_QUOTE_CHAR=29; - -const SQL_INDEX_ALL=1; -const SQL_INDEX_CLUSTERED=1; -const SQL_INDEX_HASHED=2; -const SQL_INDEX_OTHER=3; -const SQL_INDEX_UNIQUE=0; - -const SQL_INTEGER=4; -const SQL_INTEGRITY=73; -const SQL_INVALID_HANDLE=-2; - -const SQL_MAX_CATALOG_NAME_LEN=34; -const SQL_MAX_COLUMN_NAME_LEN=30; -const SQL_MAX_COLUMNS_IN_GROUP_BY=97; -const SQL_MAX_COLUMNS_IN_INDEX=98; -const SQL_MAX_COLUMNS_IN_ORDER_BY=99; -const SQL_MAX_COLUMNS_IN_SELECT=100; -const SQL_MAX_COLUMNS_IN_TABLE=101; -const SQL_MAX_CURSOR_NAME_LEN=31; -const SQL_MAX_INDEX_SIZE=102; -const SQL_MAX_MESSAGE_LENGTH=512; -const SQL_MAX_ROW_SIZE=104; -const SQL_MAX_SCHEMA_NAME_LEN=32; -const SQL_MAX_STATEMENT_LEN=105; -const SQL_MAX_TABLE_NAME_LEN=35; -const SQL_MAX_TABLES_IN_SELECT=106; -const SQL_MAX_USER_NAME_LEN=107; - -const SQL_MAXIMUM_CATALOG_NAME_LENGTH=SQL_MAX_CATALOG_NAME_LEN; -const SQL_MAXIMUM_COLUMN_NAME_LENGTH=SQL_MAX_COLUMN_NAME_LEN; -const SQL_MAXIMUM_COLUMNS_IN_GROUP_BY=SQL_MAX_COLUMNS_IN_GROUP_BY; -const SQL_MAXIMUM_COLUMNS_IN_INDEX=SQL_MAX_COLUMNS_IN_INDEX; -const SQL_MAXIMUM_COLUMNS_IN_ORDER_BY=SQL_MAX_COLUMNS_IN_ORDER_BY; -const SQL_MAXIMUM_COLUMNS_IN_SELECT=SQL_MAX_COLUMNS_IN_SELECT; -const SQL_MAXIMUM_CURSOR_NAME_LENGTH=SQL_MAX_CURSOR_NAME_LEN; -const SQL_MAXIMUM_INDEX_SIZE=SQL_MAX_INDEX_SIZE; -const SQL_MAXIMUM_ROW_SIZE=SQL_MAX_ROW_SIZE; -const SQL_MAXIMUM_SCHEMA_NAME_LENGTH=SQL_MAX_SCHEMA_NAME_LEN; -const SQL_MAXIMUM_STATEMENT_LENGTH=SQL_MAX_STATEMENT_LEN; -const SQL_MAXIMUM_TABLES_IN_SELECT=SQL_MAX_TABLES_IN_SELECT; -const SQL_MAXIMUM_USER_NAME_LENGTH=SQL_MAX_USER_NAME_LEN; - -const SQL_NC_HIGH=0; -const SQL_NC_LOW=1; -const SQL_NEED_DATA=99; -const SQL_NO_NULLS=0; -const SQL_NTS=-3; -const LONG SQL_NTSL=-3; -const SQL_NULL_COLLATION=85; -const SQL_NULL_DATA=-1; -const SQL_NULL_HDBC=0; -const SQL_NULL_HENV=0; -const SQL_NULL_HSTMT=0; -const SQL_NULLABLE=1; -const SQL_NULLABLE_UNKNOWN=2; -const SQL_NUMERIC=2; -const SQL_ORDER_BY_COLUMNS_IN_SELECT=90; -const SQL_PC_PSEUDO=2; -const SQL_PC_UNKNOWN=0; -const SQL_REAL=7; -const SQL_RESET_PARAMS=3; -const SQL_ROLLBACK=1; -const SQL_SCCO_LOCK=2; -const SQL_SCCO_OPT_ROWVER=4; -const SQL_SCCO_OPT_VALUES=8; -const SQL_SCCO_READ_ONLY=1; -const SQL_SCOPE_CURROW=0; -const SQL_SCOPE_SESSION=2; -const SQL_SCOPE_TRANSACTION=1; -const SQL_SCROLL_CONCURRENCY=43; -const SQL_SEARCH_PATTERN_ESCAPE=14; -const SQL_SERVER_NAME=13; -const SQL_SMALLINT=5; -const SQL_SPECIAL_CHARACTERS=94; -const SQL_STILL_EXECUTING=2; -//MACRO #define SQL_SUCCEEDED(rc) (((rc)&(~1))==0) - -const SQL_SUCCESS=0; -const SQL_SUCCESS_WITH_INFO=1; - -const SQL_TC_ALL=2; -const SQL_TC_DDL_COMMIT=3; -const SQL_TC_DDL_IGNORE=4; -const SQL_TC_DML=1; -const SQL_TC_NONE=0; - - -const SQL_TXN_CAPABLE=46; -const SQL_TXN_ISOLATION_OPTION=72; -const SQL_TXN_READ_COMMITTED=2; -const SQL_TXN_READ_UNCOMMITTED=1; -const SQL_TXN_REPEATABLE_READ=4; -const SQL_TXN_SERIALIZABLE=8; - -const SQL_TRANSACTION_CAPABLE=SQL_TXN_CAPABLE; -const SQL_TRANSACTION_ISOLATION_OPTION=SQL_TXN_ISOLATION_OPTION; -const SQL_TRANSACTION_READ_COMMITTED=SQL_TXN_READ_COMMITTED; -const SQL_TRANSACTION_READ_UNCOMMITTED=SQL_TXN_READ_UNCOMMITTED; -const SQL_TRANSACTION_REPEATABLE_READ=SQL_TXN_REPEATABLE_READ; -const SQL_TRANSACTION_SERIALIZABLE=SQL_TXN_SERIALIZABLE; - -const SQL_UNBIND=2; -const SQL_UNKNOWN_TYPE=0; -const SQL_USER_NAME=47; -const SQL_VARCHAR=12; - -static if (ODBCVER >= 0x0200) { - const SQL_AT_ADD_COLUMN = 1; - const SQL_AT_DROP_COLUMN = 2; -} - -static if (ODBCVER >= 0x0201) { - const SQL_OJ_LEFT = 1; - const SQL_OJ_RIGHT = 2; - const SQL_OJ_FULL = 4; - const SQL_OJ_NESTED = 8; - const SQL_OJ_NOT_ORDERED = 16; - const SQL_OJ_INNER = 32; - const SQL_OJ_ALL_COMPARISON_OPS = 64; -} - -static if (ODBCVER >= 0x0300) { - const SQL_AM_CONNECTION=1; - const SQL_AM_NONE=0; - const SQL_AM_STATEMENT=2; - const SQL_API_SQLALLOCHANDLE=1001; - const SQL_API_SQLBINDPARAM=1002; - const SQL_API_SQLCLOSECURSOR=1003; - const SQL_API_SQLCOLATTRIBUTE=6; - const SQL_API_SQLCOPYDESC=1004; - const SQL_API_SQLENDTRAN=1005; - const SQL_API_SQLFETCHSCROLL=1021; - const SQL_API_SQLFREEHANDLE=1006; - const SQL_API_SQLGETCONNECTATTR=1007; - const SQL_API_SQLGETDESCFIELD=1008; - const SQL_API_SQLGETDESCREC=1009; - const SQL_API_SQLGETDIAGFIELD=1010; - const SQL_API_SQLGETDIAGREC=1011; - const SQL_API_SQLGETENVATTR=1012; - const SQL_API_SQLGETSTMTATTR=1014; - const SQL_API_SQLSETCONNECTATTR=1016; - const SQL_API_SQLSETDESCFIELD=1017; - const SQL_API_SQLSETDESCREC=1018; - const SQL_API_SQLSETENVATTR=1019; - const SQL_API_SQLSETSTMTATTR=1020; - const SQL_ARD_TYPE=-99; - const SQL_AT_ADD_CONSTRAINT=8; - const SQL_ATTR_APP_PARAM_DESC=10011; - const SQL_ATTR_APP_ROW_DESC=10010; - const SQL_ATTR_AUTO_IPD=10001; - const SQL_ATTR_CURSOR_SCROLLABLE=-1; - const SQL_ATTR_CURSOR_SENSITIVITY=-2; - const SQL_ATTR_IMP_PARAM_DESC=10013; - const SQL_ATTR_IMP_ROW_DESC=10012; - const SQL_ATTR_METADATA_ID=10014; - const SQL_ATTR_OUTPUT_NTS=10001; - const SQL_CATALOG_NAME=10003; - const SQL_CODE_DATE=1; - const SQL_CODE_TIME=2; - const SQL_CODE_TIMESTAMP=3; - const SQL_COLLATION_SEQ=10004; - const SQL_CURSOR_SENSITIVITY=10001; - const SQL_DATE_LEN=10; - const SQL_DATETIME=9; - const SQL_DEFAULT=99; - - const SQL_DESC_ALLOC_AUTO=1; - const SQL_DESC_ALLOC_USER=2; - const SQL_DESC_ALLOC_TYPE=1099; - const SQL_DESC_COUNT=1001; - const SQL_DESC_TYPE=1002; - const SQL_DESC_LENGTH=1003; - const SQL_DESC_OCTET_LENGTH_PTR=1004; - const SQL_DESC_PRECISION=1005; - const SQL_DESC_SCALE=1006; - const SQL_DESC_DATETIME_INTERVAL_CODE=1007; - const SQL_DESC_NULLABLE=1008; - const SQL_DESC_INDICATOR_PTR=1009; - const SQL_DESC_DATA_PTR=1010; - const SQL_DESC_NAME=1011; - const SQL_DESC_UNNAMED=1012; - const SQL_DESC_OCTET_LENGTH=1013; - - const SQL_DESCRIBE_PARAMETER=10002; - - const SQL_DIAG_ALTER_DOMAIN=3; - const SQL_DIAG_ALTER_TABLE=4; - const SQL_DIAG_CALL=7; - const SQL_DIAG_CLASS_ORIGIN=8; - const SQL_DIAG_CONNECTION_NAME=10; - const SQL_DIAG_CREATE_ASSERTION=6; - const SQL_DIAG_CREATE_CHARACTER_SET=8; - const SQL_DIAG_CREATE_COLLATION=10; - const SQL_DIAG_CREATE_DOMAIN=23; - const SQL_DIAG_CREATE_INDEX=-1; - const SQL_DIAG_CREATE_SCHEMA=64; - const SQL_DIAG_CREATE_TABLE=77; - const SQL_DIAG_CREATE_TRANSLATION=79; - const SQL_DIAG_CREATE_VIEW=84; - const SQL_DIAG_DELETE_WHERE=19; - const SQL_DIAG_DROP_ASSERTION=24; - const SQL_DIAG_DROP_CHARACTER_SET=25; - const SQL_DIAG_DROP_COLLATION=26; - const SQL_DIAG_DROP_DOMAIN=27; - const SQL_DIAG_DROP_INDEX=(-2); - const SQL_DIAG_DROP_SCHEMA=31; - const SQL_DIAG_DROP_TABLE=32; - const SQL_DIAG_DROP_TRANSLATION=33; - const SQL_DIAG_DROP_VIEW=36; - const SQL_DIAG_DYNAMIC_DELETE_CURSOR=38; - const SQL_DIAG_DYNAMIC_FUNCTION=7; - const SQL_DIAG_DYNAMIC_FUNCTION_CODE=12; - const SQL_DIAG_DYNAMIC_UPDATE_CURSOR=81; - const SQL_DIAG_GRANT=48; - const SQL_DIAG_INSERT=50; - const SQL_DIAG_MESSAGE_TEXT=6; - const SQL_DIAG_NATIVE=5; - const SQL_DIAG_NUMBER=2; - const SQL_DIAG_RETURNCODE=1; - const SQL_DIAG_REVOKE=59; - const SQL_DIAG_ROW_COUNT=3; - const SQL_DIAG_SELECT_CURSOR=85; - const SQL_DIAG_SERVER_NAME=11; - const SQL_DIAG_SQLSTATE=4; - const SQL_DIAG_SUBCLASS_ORIGIN=9; - const SQL_DIAG_UNKNOWN_STATEMENT=0; - const SQL_DIAG_UPDATE_WHERE=82; - - const SQL_FALSE=0; - const SQL_HANDLE_DBC=2; - const SQL_HANDLE_DESC=4; - const SQL_HANDLE_ENV=1; - const SQL_HANDLE_STMT=3; - const SQL_INSENSITIVE=1; - const SQL_MAX_CONCURRENT_ACTIVITIES=1; - const SQL_MAX_DRIVER_CONNECTIONS=0; - const SQL_MAX_IDENTIFIER_LEN=10005; - const SQL_MAXIMUM_CONCURRENT_ACTIVITIES=SQL_MAX_CONCURRENT_ACTIVITIES; - const SQL_MAXIMUM_DRIVER_CONNECTIONS=SQL_MAX_DRIVER_CONNECTIONS; - const SQL_MAXIMUM_IDENTIFIER_LENGTH=SQL_MAX_IDENTIFIER_LEN; - const SQL_NAMED=0; - const SQL_NO_DATA=100; - const SQL_NONSCROLLABLE=0; - const SQL_NULL_HANDLE=0L; - const SQL_NULL_HDESC=0; - const SQL_OJ_CAPABILITIES=115; - const SQL_OUTER_JOIN_CAPABILITIES=SQL_OJ_CAPABILITIES; - const SQL_PC_NON_PSEUDO=1; - - const SQL_PRED_NONE=0; - const SQL_PRED_CHAR=1; - const SQL_PRED_BASIC=2; - - const SQL_ROW_IDENTIFIER=1; - const SQL_SCROLLABLE=1; - const SQL_SENSITIVE=2; - const SQL_TIME_LEN=8; - const SQL_TIMESTAMP_LEN=19; - const SQL_TRUE=1; - const SQL_TYPE_DATE=91; - const SQL_TYPE_TIME=92; - const SQL_TYPE_TIMESTAMP=93; - const SQL_UNNAMED=1; - const SQL_UNSPECIFIED=0; - const SQL_XOPEN_CLI_YEAR=10000; -}//#endif /* ODBCVER >= 0x0300 */ - -extern (Windows) { - deprecated { - SQLRETURN SQLAllocConnect(SQLHENV, SQLHDBC*); - SQLRETURN SQLAllocEnv(SQLHENV*); - SQLRETURN SQLAllocStmt(SQLHDBC, SQLHSTMT*); - SQLRETURN SQLError(SQLHENV, SQLHDBC, SQLHSTMT, SQLCHAR*, SQLINTEGER*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLFreeConnect(SQLHDBC); - SQLRETURN SQLFreeEnv(SQLHENV); - SQLRETURN SQLSetParam(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN*); - SQLRETURN SQLGetConnectOption(SQLHDBC, SQLUSMALLINT, SQLPOINTER); - SQLRETURN SQLGetStmtOption(SQLHSTMT, SQLUSMALLINT, SQLPOINTER); - SQLRETURN SQLSetConnectOption(SQLHDBC, SQLUSMALLINT, SQLULEN); - SQLRETURN SQLSetStmtOption(SQLHSTMT, SQLUSMALLINT, SQLROWCOUNT); - } - SQLRETURN SQLBindCol(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*); - SQLRETURN SQLCancel(SQLHSTMT); - SQLRETURN SQLConnect(SQLHDBC, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLDescribeCol(SQLHSTMT, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLDisconnect(SQLHDBC); - SQLRETURN SQLExecDirect(SQLHSTMT, SQLCHAR*, SQLINTEGER); - SQLRETURN SQLExecute(SQLHSTMT); - SQLRETURN SQLFetch(SQLHSTMT); - SQLRETURN SQLFreeStmt(SQLHSTMT, SQLUSMALLINT); - SQLRETURN SQLGetCursorName(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLNumResultCols(SQLHSTMT, SQLSMALLINT*); - SQLRETURN SQLPrepare(SQLHSTMT, SQLCHAR*, SQLINTEGER); - SQLRETURN SQLRowCount(SQLHSTMT, SQLLEN*); - SQLRETURN SQLSetCursorName(SQLHSTMT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLTransact(SQLHENV, SQLHDBC, SQLUSMALLINT); - SQLRETURN SQLColumns(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLGetData(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*); - SQLRETURN SQLGetFunctions(SQLHDBC, SQLUSMALLINT, SQLUSMALLINT*); - SQLRETURN SQLGetInfo(SQLHDBC, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetTypeInfo(SQLHSTMT, SQLSMALLINT); - SQLRETURN SQLParamData(SQLHSTMT, SQLPOINTER*); - SQLRETURN SQLPutData(SQLHSTMT, SQLPOINTER, SQLLEN); - SQLRETURN SQLSpecialColumns(SQLHSTMT, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLStatistics(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLTables(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLDataSources(SQLHENV, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - - static if (ODBCVER >= 0x0300) { - SQLRETURN SQLAllocHandle(SQLSMALLINT, SQLHANDLE, SQLHANDLE*); - SQLRETURN SQLBindParam(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN*); - SQLRETURN SQLCloseCursor(SQLHSTMT); - SQLRETURN SQLColAttribute(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLPOINTER); - SQLRETURN SQLCopyDesc(SQLHDESC, SQLHDESC); - SQLRETURN SQLEndTran(SQLSMALLINT, SQLHANDLE, SQLSMALLINT); - SQLRETURN SQLFetchScroll(SQLHSTMT, SQLSMALLINT, SQLROWOFFSET); - SQLRETURN SQLFreeHandle(SQLSMALLINT, SQLHANDLE); - SQLRETURN SQLGetConnectAttr(SQLHDBC, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetDescField(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetDescRec(SQLHDESC, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, - SQLSMALLINT*, SQLSMALLINT*, SQLLEN*, SQLSMALLINT*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLGetDiagField(SQLSMALLINT, SQLHANDLE, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetDiagRec(SQLSMALLINT, SQLHANDLE, SQLSMALLINT, SQLCHAR*, SQLINTEGER*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetEnvAttr(SQLHENV, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetStmtAttr(SQLHSTMT, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLSetConnectAttr(SQLHDBC, SQLINTEGER, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetDescField(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetDescRec(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLLEN, SQLSMALLINT, - SQLSMALLINT, SQLPOINTER, SQLLEN*, SQLLEN*); - SQLRETURN SQLSetEnvAttr(SQLHENV, SQLINTEGER, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetStmtAttr(SQLHSTMT, SQLINTEGER, SQLPOINTER, SQLINTEGER); - }/* (ODBCVER >= 0x0300) */ -} \ No newline at end of file diff --git a/3rdparty-extra/win32/sqlext.d b/3rdparty-extra/win32/sqlext.d deleted file mode 100644 index 739482a20..000000000 --- a/3rdparty-extra/win32/sqlext.d +++ /dev/null @@ -1,1296 +0,0 @@ -/***********************************************************************\ -* sqlext.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.sqlext; -version(Windows): - -/* Conversion notes: - The MinGW file was a horrible mess. All of the #defines were sorted alphabetically, - which is crazy. This file needs a lot of work. - In MinGW, sqlext #includes sqlucode, but sqlucode #includes sqlext, - creating a circular dependency! -*/ - -public import win32.sql; -private import win32.windef; - -const SQL_SPEC_MAJOR = 3; -const SQL_SPEC_MINOR = 51; -const char[] SQL_SPEC_STRING = "03.51"; -const SQL_ACCESS_MODE = 101; -const SQL_ACTIVE_CONNECTIONS = 0; -const SQL_ACTIVE_STATEMENTS = 1; - -const SQL_DATE = 9; -const SQL_TIME = 10; -const SQL_SIGNED_OFFSET = -20; -const SQL_TINYINT = -6; -const SQL_TIMESTAMP = 11; -const SQL_UNSIGNED_OFFSET = -22; - -const SQL_ADD = 4; -const SQL_ALL_EXCEPT_LIKE = 2; - -const SQL_API_ALL_FUNCTIONS = 0; -const SQL_API_SQLCOLATTRIBUTES = 6; -const SQL_API_SQLDRIVERCONNECT = 41; -const SQL_API_SQLBROWSECONNECT = 55; -const SQL_API_SQLCOLUMNPRIVILEGES = 56; -const SQL_API_SQLDESCRIBEPARAM = 58; -const SQL_API_SQLEXTENDEDFETCH = 59; -const SQL_API_SQLFOREIGNKEYS = 60; -const SQL_API_SQLMORERESULTS = 61; -const SQL_API_SQLNATIVESQL = 62; -const SQL_API_SQLNUMPARAMS = 63; -const SQL_API_SQLPARAMOPTIONS = 64; -const SQL_API_SQLPRIMARYKEYS = 65; -const SQL_API_SQLPROCEDURECOLUMNS = 66; -const SQL_API_SQLPROCEDURES = 67; -const SQL_API_SQLSETPOS = 68; -const SQL_API_SQLSETSCROLLOPTIONS = 69; -const SQL_API_SQLTABLEPRIVILEGES = 70; -const SQL_API_SQLDRIVERS = 71; -const SQL_API_SQLBINDPARAMETER = 72; -const SQL_API_LOADBYORDINAL = 199; - -const SQL_ASYNC_ENABLE = 4; -const SQL_ASYNC_ENABLE_OFF = 0UL; -const SQL_ASYNC_ENABLE_ON = 1UL; -const SQL_ASYNC_ENABLE_DEFAULT = SQL_ASYNC_ENABLE_OFF; - -const SQL_ATTR_CONNECTION_DEAD = 1209; -const SQL_ATTR_READONLY = 0; -const SQL_ATTR_READWRITE_UNKNOWN = 2; -const SQL_ATTR_WRITE = 1; - -const SQL_AUTOCOMMIT = 102; -const SQL_AUTOCOMMIT_OFF = 0UL; -const SQL_AUTOCOMMIT_ON = 1UL; -const SQL_AUTOCOMMIT_DEFAULT = SQL_AUTOCOMMIT_ON; -const SQL_BEST_ROWID = 1; -const SQL_BIGINT = -5; -const SQL_BINARY = -2; -const SQL_BIND_BY_COLUMN = 0UL; -const SQL_BIND_TYPE = 5; -const SQL_BIND_TYPE_DEFAULT = SQL_BIND_BY_COLUMN; -const SQL_BIT = -7; - -const SQL_BOOKMARK_PERSISTENCE = 82; - -// for BOOKMARK_PERSISTENCE -const SQL_BP_CLOSE = 1; -const SQL_BP_DELETE = 2; -const SQL_BP_DROP = 4; -const SQL_BP_TRANSACTION = 8; -const SQL_BP_UPDATE = 16; -const SQL_BP_OTHER_HSTMT = 32; -const SQL_BP_SCROLL = 64; - -const SQL_C_BINARY = SQL_BINARY; -const SQL_C_BIT = SQL_BIT; -const SQL_C_CHAR = SQL_CHAR; -const SQL_C_DATE = SQL_DATE; -const SQL_C_DOUBLE = SQL_DOUBLE; -const SQL_C_FLOAT = SQL_REAL; -const SQL_C_LONG = SQL_INTEGER; -const SQL_C_SHORT = SQL_SMALLINT; -const SQL_C_SLONG = SQL_C_LONG+SQL_SIGNED_OFFSET; -const SQL_C_SSHORT = SQL_C_SHORT+SQL_SIGNED_OFFSET; -const SQL_C_STINYINT = SQL_TINYINT+SQL_SIGNED_OFFSET; -const SQL_C_TIME = SQL_TIME; -const SQL_C_TIMESTAMP = SQL_TIMESTAMP; -const SQL_C_TINYINT = SQL_TINYINT; -const SQL_C_ULONG = SQL_C_LONG+SQL_UNSIGNED_OFFSET; -const SQL_C_USHORT = SQL_C_SHORT+SQL_UNSIGNED_OFFSET; -const SQL_C_UTINYINT = SQL_TINYINT+SQL_UNSIGNED_OFFSET; -const SQL_C_BOOKMARK = SQL_C_ULONG; -const SQL_C_DEFAULT = 99; - -const SQL_CASCADE = 0; -const SQL_CB_NON_NULL = 1; -const SQL_CB_NULL = 0; -deprecated { -const SQL_CC_CLOSE = SQL_CB_CLOSE;/* deprecated */ -const SQL_CC_DELETE = SQL_CB_DELETE;/* deprecated */ -const SQL_CC_PRESERVE = SQL_CB_PRESERVE;/* deprecated */ -} -const SQL_CD_FALSE = 0L; -const SQL_CD_TRUE = 1L; - -const SQL_CN_ANY = 2; -const SQL_CN_DIFFERENT = 1; -const SQL_CN_NONE = 0; - -const SQL_COLUMN_ALIAS = 87; - -const SQL_COLUMN_COUNT = 0; -const SQL_COLUMN_NAME = 1; -const SQL_COLUMN_DISPLAY_SIZE = 6; -const SQL_COLUMN_LABEL = 18; -const SQL_COLUMN_LENGTH = 3; -const SQL_COLUMN_MONEY = 9; -const SQL_COLUMN_NULLABLE = 7; -const SQL_COLUMN_OWNER_NAME = 16; -const SQL_COLUMN_PRECISION = 4; -const SQL_COLUMN_QUALIFIER_NAME = 17; -const SQL_COLUMN_SCALE = 5; -const SQL_COLUMN_UNSIGNED = 8; -const SQL_COLUMN_UPDATABLE = 10; -const SQL_COLUMN_AUTO_INCREMENT = 11; -const SQL_COLUMN_CASE_SENSITIVE = 12; -const SQL_COLUMN_SEARCHABLE = 13; -const SQL_COLUMN_TYPE = 2; -const SQL_COLUMN_TYPE_NAME = 14; -const SQL_COLUMN_TABLE_NAME = 15; - -const SQL_CONCAT_NULL_BEHAVIOR = 22; - -const SQL_CONCUR_READ_ONLY = 1; -const SQL_CONCUR_DEFAULT = SQL_CONCUR_READ_ONLY; -const SQL_CONCUR_LOCK = 2; -const SQL_CONCUR_ROWVER = 3; -const SQL_CONCUR_TIMESTAMP = SQL_CONCUR_ROWVER;/* deprecated */ -const SQL_CONCUR_VALUES = 4; - -const SQL_CONCURRENCY = 7; -const SQL_CONVERT_BIGINT = 53; -const SQL_CONVERT_BINARY = 54; -const SQL_CONVERT_BIT = 55; -const SQL_CONVERT_CHAR = 56; -const SQL_CONVERT_DATE = 57; -const SQL_CONVERT_DECIMAL = 58; -const SQL_CONVERT_DOUBLE = 59; -const SQL_CONVERT_FLOAT = 60; -const SQL_CONVERT_FUNCTIONS = 48; -const SQL_CONVERT_INTEGER = 61; -const SQL_CONVERT_LONGVARBINARY = 71; -const SQL_CONVERT_LONGVARCHAR = 62; -const SQL_CONVERT_NUMERIC = 63; -const SQL_CONVERT_REAL = 64; -const SQL_CONVERT_SMALLINT = 65; -const SQL_CONVERT_TIME = 66; -const SQL_CONVERT_TIMESTAMP = 67; -const SQL_CONVERT_TINYINT = 68; -const SQL_CONVERT_VARBINARY = 69; -const SQL_CONVERT_VARCHAR = 70; -const SQL_CORRELATION_NAME = 74; -const SQL_CR_CLOSE = SQL_CB_CLOSE;/* deprecated */ -const SQL_CR_DELETE = SQL_CB_DELETE;/* deprecated */ -const SQL_CR_PRESERVE = SQL_CB_PRESERVE;/* deprecated */ - -enum : ULONG { - SQL_CUR_USE_IF_NEEDED = 0, - SQL_CUR_USE_ODBC, - SQL_CUR_USE_DRIVER, - SQL_CUR_DEFAULT = SQL_CUR_USE_DRIVER -} - -const SQL_CURRENT_QUALIFIER = 109; -const SQL_CURSOR_DYNAMIC = 2UL; -const SQL_CURSOR_FORWARD_ONLY = 0UL; -const SQL_CURSOR_KEYSET_DRIVEN = 1UL; -const SQL_CURSOR_ROLLBACK_BEHAVIOR = 24; -const SQL_CURSOR_STATIC = 3UL; -const SQL_CURSOR_TYPE = 6; -const SQL_CURSOR_TYPE_DEFAULT = SQL_CURSOR_FORWARD_ONLY; - -const SQL_CV_CASCADED = 0x00000004L; -const SQL_CV_CHECK_OPTION = 0x00000002L; -const SQL_CV_CREATE_VIEW = 0x00000001L; -const SQL_CV_LOCAL = 0x00000008L; -const SQL_CVT_BIGINT = 0x00004000L; -const SQL_CVT_BINARY = 0x00000400L; -const SQL_CVT_BIT = 0x00001000L; -const SQL_CVT_CHAR = 0x00000001L; -const SQL_CVT_DATE = 0x00008000L; -const SQL_CVT_DECIMAL = 0x00000004L; -const SQL_CVT_DOUBLE = 0x00000080L; -const SQL_CVT_FLOAT = 0x00000020L; -const SQL_CVT_INTEGER = 0x00000008L; -const SQL_CVT_LONGVARBINARY = 0x00040000L; -const SQL_CVT_LONGVARCHAR = 0x00000200L; -const SQL_CVT_NUMERIC = 0x00000002L; -const SQL_CVT_REAL = 0x00000040L; -const SQL_CVT_SMALLINT = 0x00000010L; -const SQL_CVT_TIME = 0x00010000L; -const SQL_CVT_TIMESTAMP = 0x00020000L; -const SQL_CVT_TINYINT = 0x00002000L; -const SQL_CVT_VARBINARY = 0x00000800L; -const SQL_CVT_VARCHAR = 0x00000100L; -const SQL_DATABASE_NAME = 16;/* deprecated */ - -const SQL_DEFAULT_PARAM = -5; -const SQL_DELETE = 3; - -const SQL_DRIVER_COMPLETE = 1; -const SQL_DRIVER_COMPLETE_REQUIRED = 3; -const SQL_DRIVER_HDBC = 3; -const SQL_DRIVER_HENV = 4; -const SQL_DRIVER_HLIB = 76; -const SQL_DRIVER_HSTMT = 5; -const SQL_DRIVER_NAME = 6; -const SQL_DRIVER_NOPROMPT = 0; -const SQL_DRIVER_ODBC_VER = 77; -const SQL_DRIVER_PROMPT = 2; -const SQL_DRIVER_VER = 7; - -const SQL_DTC_ENLIST_EXPENSIVE = 1; -const SQL_DTC_UNENLIST_EXPENSIVE = 2; -const SQL_DTC_TRANSITION_COST = 1750; -const SQL_ENSURE = 1; -const SQL_ENTIRE_ROWSET = 0; -const SQL_EXPRESSIONS_IN_ORDERBY = 27; -const SQL_FD_FETCH_BOOKMARK = 128; -const SQL_FD_FETCH_PREV = SQL_FD_FETCH_PRIOR;/* deprecated */ -const SQL_FD_FETCH_RESUME = 64; -const SQL_FETCH_BOOKMARK = 8; -const SQL_FETCH_PREV = SQL_FETCH_PRIOR;/* deprecated */ -const SQL_FETCH_RESUME = 7;/* deprecated */ - -const SQL_FILE_NOT_SUPPORTED = 0x0000; -const SQL_FILE_TABLE = 0x0001; -const SQL_FILE_QUALIFIER = 0x0002; -const SQL_FILE_CATALOG = SQL_FILE_QUALIFIER; -const SQL_FILE_USAGE = 84; - -const SQL_FN_CVT_CONVERT = 0x00000001L; -const SQL_FN_NUM_ABS = 0x00000001L; -const SQL_FN_NUM_ACOS = 0x00000002L; -const SQL_FN_NUM_ASIN = 0x00000004L; -const SQL_FN_NUM_ATAN = 0x00000008L; -const SQL_FN_NUM_ATAN2 = 0x00000010L; -const SQL_FN_NUM_CEILING = 0x00000020L; -const SQL_FN_NUM_COS = 0x00000040L; -const SQL_FN_NUM_COT = 0x00000080L; -const SQL_FN_NUM_DEGREES = 0x00040000L; -const SQL_FN_NUM_EXP = 0x00000100L; -const SQL_FN_NUM_FLOOR = 0x00000200L; -const SQL_FN_NUM_LOG = 0x00000400L; -const SQL_FN_NUM_LOG10 = 0x00080000L; -const SQL_FN_NUM_MOD = 0x00000800L; -const SQL_FN_NUM_PI = 0x00010000L; -const SQL_FN_NUM_POWER = 0x00100000L; -const SQL_FN_NUM_RADIANS = 0x00200000L; -const SQL_FN_NUM_RAND = 0x00020000L; -const SQL_FN_NUM_ROUND = 0x00400000L; -const SQL_FN_NUM_SIGN = 0x00001000L; -const SQL_FN_NUM_SIN = 0x00002000L; -const SQL_FN_NUM_SQRT = 0x00004000L; -const SQL_FN_NUM_TAN = 0x00008000L; -const SQL_FN_NUM_TRUNCATE = 0x00800000L; -const SQL_FN_STR_ASCII = 0x00002000L; -const SQL_FN_STR_CHAR = 0x00004000L; -const SQL_FN_STR_CONCAT = 0x00000001L; -const SQL_FN_STR_DIFFERENCE = 0x00008000L; -const SQL_FN_STR_INSERT = 0x00000002L; -const SQL_FN_STR_LCASE = 0x00000040L; -const SQL_FN_STR_LEFT = 0x00000004L; -const SQL_FN_STR_LENGTH = 0x00000010L; -const SQL_FN_STR_LOCATE = 0x00000020L; -const SQL_FN_STR_LOCATE_2 = 0x00010000L; -const SQL_FN_STR_LTRIM = 0x00000008L; -const SQL_FN_STR_REPEAT = 0x00000080L; -const SQL_FN_STR_REPLACE = 0x00000100L; -const SQL_FN_STR_RIGHT = 0x00000200L; -const SQL_FN_STR_RTRIM = 0x00000400L; -const SQL_FN_STR_SOUNDEX = 0x00020000L; -const SQL_FN_STR_SPACE = 0x00040000L; -const SQL_FN_STR_SUBSTRING = 0x00000800L; -const SQL_FN_STR_UCASE = 0x00001000L; -const SQL_FN_SYS_DBNAME = 0x00000002L; -const SQL_FN_SYS_IFNULL = 0x00000004L; -const SQL_FN_SYS_USERNAME = 0x00000001L; -const SQL_FN_TD_CURDATE = 0x00000002L; -const SQL_FN_TD_CURTIME = 0x00000200L; -const SQL_FN_TD_DAYNAME = 0x00008000L; -const SQL_FN_TD_DAYOFMONTH = 0x00000004L; -const SQL_FN_TD_DAYOFWEEK = 0x00000008L; -const SQL_FN_TD_DAYOFYEAR = 0x00000010L; -const SQL_FN_TD_HOUR = 0x00000400L; -const SQL_FN_TD_MINUTE = 0x00000800L; -const SQL_FN_TD_MONTH = 0x00000020L; -const SQL_FN_TD_MONTHNAME = 0x00010000L; -const SQL_FN_TD_NOW = 0x00000001L; -const SQL_FN_TD_QUARTER = 0x00000040L; -const SQL_FN_TD_SECOND = 0x00001000L; -const SQL_FN_TD_TIMESTAMPADD = 0x00002000L; -const SQL_FN_TD_TIMESTAMPDIFF = 0x00004000L; -const SQL_FN_TD_WEEK = 0x00000080L; -const SQL_FN_TD_YEAR = 0x00000100L; -const SQL_FN_TSI_DAY = 0x00000010L; -const SQL_FN_TSI_FRAC_SECOND = 0x00000001L; -const SQL_FN_TSI_HOUR = 0x00000008L; -const SQL_FN_TSI_MINUTE = 0x00000004L; -const SQL_FN_TSI_MONTH = 0x00000040L; -const SQL_FN_TSI_QUARTER = 0x00000080L; -const SQL_FN_TSI_SECOND = 0x00000002L; -const SQL_FN_TSI_WEEK = 0x00000020L; -const SQL_FN_TSI_YEAR = 0x00000100L; -const SQL_GB_GROUP_BY_CONTAINS_SELECT = 2; -const SQL_GB_GROUP_BY_EQUALS_SELECT = 1; -const SQL_GB_NO_RELATION = 3; -const SQL_GB_NOT_SUPPORTED = 0; -const SQL_GD_BLOCK = 4; -const SQL_GD_BOUND = 8; -const SQL_GET_BOOKMARK = 13; -const SQL_GROUP_BY = 88; -const SQL_IGNORE = -6; -const SQL_INFO_FIRST = 0; -const SQL_KEYSET_SIZE = 8; -const SQL_KEYSET_SIZE_DEFAULT = 0UL; -const SQL_KEYWORDS = 89; -const SQL_LCK_EXCLUSIVE = 2; -const SQL_LCK_NO_CHANGE = 1; -const SQL_LCK_UNLOCK = 4; - -const SQL_LEN_BINARY_ATTR_OFFSET = -100; -const SQL_LEN_DATA_AT_EXEC_OFFSET = -100; -//MACRO #define SQL_LEN_BINARY_ATTR(length) (-(length)+SQL_LEN_BINARY_ATTR_OFFSET) -//MACRO #define SQL_LEN_DATA_AT_EXEC(length) (-(length)+SQL_LEN_DATA_AT_EXEC_OFFSET) - -const SQL_LIKE_ESCAPE_CLAUSE = 113; -const SQL_LIKE_ONLY = 1; -const SQL_LOCK_EXCLUSIVE = 1; -const SQL_LOCK_NO_CHANGE = 0; -const SQL_LOCK_TYPES = 78; -const SQL_LOCK_UNLOCK = 2; -const SQL_LOGIN_TIMEOUT = 103; -const SQL_LOGIN_TIMEOUT_DEFAULT = 15UL; -const SQL_LONGVARBINARY = -4; -const SQL_LONGVARCHAR = -1; -const SQL_MAX_BINARY_LITERAL_LEN = 112; -const SQL_MAX_CHAR_LITERAL_LEN = 108; -const SQL_MAX_DSN_LENGTH = 32; -const SQL_MAX_LENGTH = 3; -const SQL_MAX_LENGTH_DEFAULT = 0UL; -const SQL_MAX_OPTION_STRING_LENGTH = 256; -const SQL_MAX_OWNER_NAME_LEN = 32; -const SQL_MAX_PROCEDURE_NAME_LEN = 33; -const SQL_MAX_QUALIFIER_NAME_LEN = 34; -const SQL_MAX_ROW_SIZE_INCLUDES_LONG = 103; -const SQL_MAX_ROWS = 1; -const SQL_MAX_ROWS_DEFAULT = 0UL; - -const SQL_MODE_READ_WRITE = 0UL; -const SQL_MODE_READ_ONLY = 1UL; -const SQL_MODE_DEFAULT = SQL_MODE_READ_WRITE; - -const SQL_MULT_RESULT_SETS = 36; -const SQL_MULTIPLE_ACTIVE_TXN = 37; -const SQL_NC_END = 0x0004; -const SQL_NC_START = 0x0002; -const SQL_NEED_LONG_DATA_LEN = 111; -const SQL_NNC_NON_NULL = 0x0001; -const SQL_NNC_NULL = 0x0000; -const SQL_NO_TOTAL = -4; -const SQL_NON_NULLABLE_COLUMNS = 75; - -const SQL_NOSCAN_OFF = 0UL; -const SQL_NOSCAN_ON = 1UL; -const SQL_NOSCAN = 2; -const SQL_NOSCAN_DEFAULT = SQL_NOSCAN_OFF; - -const SQL_NUMERIC_FUNCTIONS = 49; -const SQL_OAC_LEVEL1 = 0x0001; -const SQL_OAC_LEVEL2 = 0x0002; -const SQL_OAC_NONE = 0x0000; -const SQL_ODBC_API_CONFORMANCE = 9; -const SQL_ODBC_CURSORS = 110; -const SQL_ODBC_SAG_CLI_CONFORMANCE = 12; -const SQL_ODBC_SQL_CONFORMANCE = 15; -const SQL_ODBC_SQL_OPT_IEF = 73; -const SQL_ODBC_VER = 10; -const SQL_OPT_TRACE = 104; - -const SQL_OPT_TRACE_FILE_DEFAULT = "\\SQL.LOG"; -const SQL_OPT_TRACE_OFF = 0UL; -const SQL_OPT_TRACE_DEFAULT = SQL_OPT_TRACE_OFF; -const SQL_OPT_TRACE_ON = 1UL; - -const SQL_OPT_TRACEFILE = 105; -const SQL_OSC_CORE = 1; -const SQL_OSC_EXTENDED = 2; -const SQL_OSC_MINIMUM = 0; -const SQL_OSCC_COMPLIANT = 1; -const SQL_OSCC_NOT_COMPLIANT = 0; -const SQL_OU_DML_STATEMENTS = 1; -const SQL_OU_INDEX_DEFINITION = 8; -const SQL_OU_PRIVILEGE_DEFINITION = 16; -const SQL_OU_PROCEDURE_INVOCATION = 2; -const SQL_OU_TABLE_DEFINITION = 4; -const SQL_OUTER_JOINS = 38; -const SQL_OWNER_TERM = 39; -const SQL_OWNER_USAGE = 91; -const SQL_PACKET_SIZE = 112; -const SQL_PARAM_INPUT = 1; -const SQL_PARAM_INPUT_OUTPUT = 2; -const SQL_PARAM_OUTPUT = 4; -const SQL_PARAM_TYPE_DEFAULT = SQL_PARAM_INPUT_OUTPUT; -const SQL_PARAM_TYPE_UNKNOWN = 0; -const SQL_PC_NOT_PSEUDO = 1; -const SQL_POS_ADD = 16; -const SQL_POS_DELETE = 8; -const SQL_POS_OPERATIONS = 79; -const SQL_POS_POSITION = 1; -const SQL_POS_REFRESH = 2; -const SQL_POS_UPDATE = 4; -const SQL_POSITION = 0; -const SQL_POSITIONED_STATEMENTS = 80; -const SQL_PROCEDURE_TERM = 40; -const SQL_PROCEDURES = 21; -const SQL_PS_POSITIONED_DELETE = 1; -const SQL_PS_POSITIONED_UPDATE = 2; -const SQL_PS_SELECT_FOR_UPDATE = 4; -const SQL_PT_FUNCTION = 2; -const SQL_PT_PROCEDURE = 1; -const SQL_PT_UNKNOWN = 0; -const SQL_QL_END = 0x0002; -const SQL_QL_START = 0x0001; -const SQL_QU_DML_STATEMENTS = 1; -const SQL_QU_INDEX_DEFINITION = 8; -const SQL_QU_PRIVILEGE_DEFINITION = 16; -const SQL_QU_PROCEDURE_INVOCATION = 2; -const SQL_QU_TABLE_DEFINITION = 4; -const SQL_QUALIFIER_LOCATION = 114; -const SQL_QUALIFIER_NAME_SEPARATOR = 41; -const SQL_QUALIFIER_TERM = 42; -const SQL_QUALIFIER_USAGE = 92; -const SQL_QUERY_TIMEOUT = 0; -const SQL_QUERY_TIMEOUT_DEFAULT = 0UL; -const SQL_QUICK = 0; -const SQL_QUIET_MODE = 111; -const SQL_QUOTED_IDENTIFIER_CASE = 93; - -const SQL_RD_OFF = 0UL; -const SQL_RD_ON = 1UL; -const SQL_RD_DEFAULT = SQL_RD_ON; - -const SQL_REFRESH = 1; -const SQL_RESTRICT = 1; -const SQL_RESULT_COL = 3; -const SQL_RETRIEVE_DATA = 11; -const SQL_RETURN_VALUE = 5; -const SQL_ROW_ADDED = 4; -const SQL_ROW_DELETED = 1; -const SQL_ROW_ERROR = 5; -const SQL_ROW_NOROW = 3; -const SQL_ROW_NUMBER = 14; -const SQL_ROW_SUCCESS = 0; -const SQL_ROW_UPDATED = 2; -const SQL_ROW_UPDATES = 11; -const SQL_ROWSET_SIZE = 9; -const SQL_ROWSET_SIZE_DEFAULT = 1UL; -const SQL_ROWVER = 2; -const SQL_SC_NON_UNIQUE = 0UL; -const SQL_SC_TRY_UNIQUE = 1UL; -const SQL_SC_UNIQUE = 2UL; -const SQL_SCCO_OPT_TIMESTAMP = SQL_SCCO_OPT_ROWVER;/* deprecated */ -const SQL_SCROLL_DYNAMIC = -2L;/* deprecated */ -const SQL_SCROLL_FORWARD_ONLY = 0L;/* deprecated */ -const SQL_SCROLL_KEYSET_DRIVEN = -1L;/* deprecated */ -const SQL_SCROLL_OPTIONS = 44; -const SQL_SCROLL_STATIC = -3L;/* deprecated */ -const SQL_SEARCHABLE = 3; -const SQL_SET_NULL = 2; -const SQL_SETPARAM_VALUE_MAX = -1L; -const SQL_SETPOS_MAX_LOCK_VALUE = SQL_LOCK_UNLOCK; -const SQL_SETPOS_MAX_OPTION_VALUE = SQL_ADD; -const SQL_SIMULATE_CURSOR = 10; -const SQL_SO_DYNAMIC = 4; -const SQL_SO_FORWARD_ONLY = 1; -const SQL_SO_KEYSET_DRIVEN = 2; -const SQL_SO_MIXED = 8; -const SQL_SO_STATIC = 16; -const SQL_SQ_COMPARISON = 1; -const SQL_SQ_CORRELATED_SUBQUERIES = 16; -const SQL_SQ_EXISTS = 2; -const SQL_SQ_IN = 4; -const SQL_SQ_QUANTIFIED = 8; -const SQL_SQLSTATE_SIZE = 5; -const SQL_SS_ADDITIONS = 1; -const SQL_SS_DELETIONS = 2; -const SQL_SS_UPDATES = 4; -const SQL_STATIC_SENSITIVITY = 83; -const SQL_STRING_FUNCTIONS = 50; -const SQL_SUBQUERIES = 95; -const SQL_SYSTEM_FUNCTIONS = 51; -const SQL_TABLE_STAT = 0; -const SQL_TABLE_TERM = 45; -const SQL_TIMEDATE_ADD_INTERVALS = 109; -const SQL_TIMEDATE_DIFF_INTERVALS = 110; -const SQL_TIMEDATE_FUNCTIONS = 52; -const SQL_TRANSLATE_DLL = 106; -const SQL_TRANSLATE_OPTION = 107; -const SQL_TXN_ISOLATION = 108; -const SQL_TXN_VERSIONING = 16; -const SQL_TYPE_NULL = 0; -const SQL_U_UNION = 1; -const SQL_U_UNION_ALL = 2; - -const SQL_UB_OFF = 0UL; -const SQL_UB_DEFAULT = SQL_UB_OFF; -const SQL_UB_ON = 01UL; - -const SQL_UNION = 96; -const SQL_UNSEARCHABLE = 0; -const SQL_UPDATE = 2; -const SQL_USE_BOOKMARKS = 12; -const SQL_VARBINARY = -3; - -const SQL_COLATT_OPT_MAX = SQL_COLUMN_LABEL; -const SQL_COLATT_OPT_MIN = SQL_COLUMN_COUNT; -const SQL_PRED_SEARCHABLE = SQL_SEARCHABLE; - -//MACRO #define SQL_POSITION_TO(s, r) SQLSetPos(s, r, SQL_POSITION, SQL_LOCK_NO_CHANGE) - -//MACRO #define SQL_LOCK_RECORD(s, r, l) SQLSetPos(s, r, SQL_POSITION, l) - -//MACRO #define SQL_REFRESH_RECORD(s, r, l) SQLSetPos(s, r, SQL_REFRESH, l) - -//MACRO #define SQL_UPDATE_RECORD(s, r) SQLSetPos(s, r, SQL_UPDATE, SQL_LOCK_NO_CHANGE) - -//MACRO #define SQL_DELETE_RECORD(s, r) SQLSetPos(s, r, SQL_DELETE, SQL_LOCK_NO_CHANGE) - -//MACRO #define SQL_ADD_RECORD(s, r) SQLSetPos(s, r, SQL_ADD, SQL_LOCK_NO_CHANGE) - - -static if (ODBCVER < 0x0300) { - const SQL_CONNECT_OPT_DRVR_START = 1000; - const SQL_CONN_OPT_MAX = SQL_PACKET_SIZE; - const SQL_CONN_OPT_MIN = SQL_ACCESS_MODE; - const SQL_STMT_OPT_MAX = SQL_ROW_NUMBER; - const SQL_STMT_OPT_MIN = SQL_QUERY_TIMEOUT; - const SQL_TYPE_DRIVER_START = SQL_INTERVAL_YEAR; - const SQL_TYPE_DRIVER_END = SQL_UNICODE_LONGVARCHAR; - const SQL_TYPE_MIN = SQL_BIT; - const SQL_TYPE_MAX = SQL_VARCHAR; -} - -static if (ODBCVER < 0x0300) { - const SQL_NO_DATA_FOUND = 100; - const SQL_INTERVAL_YEAR = -80; - const SQL_INTERVAL_MONTH = -81; - const SQL_INTERVAL_YEAR_TO_MONTH = -82; - const SQL_INTERVAL_DAY = -83; - const SQL_INTERVAL_HOUR = -84; - const SQL_INTERVAL_MINUTE = -85; - const SQL_INTERVAL_SECOND = -86; - const SQL_INTERVAL_DAY_TO_HOUR = -87; - const SQL_INTERVAL_DAY_TO_MINUTE = -88; - const SQL_INTERVAL_DAY_TO_SECOND = -89; - const SQL_INTERVAL_HOUR_TO_MINUTE = -90; - const SQL_INTERVAL_HOUR_TO_SECOND = -91; - const SQL_INTERVAL_MINUTE_TO_SECOND = -92; -} else { - const SQL_NO_DATA_FOUND = SQL_NO_DATA; - const SQL_CODE_YEAR = 1; - const SQL_CODE_MONTH = 2; - const SQL_CODE_DAY = 3; - const SQL_CODE_HOUR = 4; - const SQL_CODE_MINUTE = 5; - const SQL_CODE_SECOND = 6; - const SQL_CODE_YEAR_TO_MONTH = 7; - const SQL_CODE_DAY_TO_HOUR = 8; - const SQL_CODE_DAY_TO_MINUTE = 9; - const SQL_CODE_DAY_TO_SECOND = 10; - const SQL_CODE_HOUR_TO_MINUTE = 11; - const SQL_CODE_HOUR_TO_SECOND = 12; - const SQL_CODE_MINUTE_TO_SECOND = 13; - const SQL_INTERVAL_YEAR = 100 + SQL_CODE_YEAR; - const SQL_INTERVAL_MONTH = 100 + SQL_CODE_MONTH; - const SQL_INTERVAL_DAY = 100 + SQL_CODE_DAY; - const SQL_INTERVAL_HOUR = 100 + SQL_CODE_HOUR; - const SQL_INTERVAL_MINUTE = 100 + SQL_CODE_MINUTE; - const SQL_INTERVAL_SECOND = 100 + SQL_CODE_SECOND; - const SQL_INTERVAL_YEAR_TO_MONTH = 100 + SQL_CODE_YEAR_TO_MONTH; - const SQL_INTERVAL_DAY_TO_HOUR = 100 + SQL_CODE_DAY_TO_HOUR; - const SQL_INTERVAL_DAY_TO_MINUTE = 100 + SQL_CODE_DAY_TO_MINUTE; - const SQL_INTERVAL_DAY_TO_SECOND = 100 + SQL_CODE_DAY_TO_SECOND; - const SQL_INTERVAL_HOUR_TO_MINUTE = 100 + SQL_CODE_HOUR_TO_MINUTE; - const SQL_INTERVAL_HOUR_TO_SECOND = 100 + SQL_CODE_HOUR_TO_SECOND; - const SQL_INTERVAL_MINUTE_TO_SECOND = 100 + SQL_CODE_MINUTE_TO_SECOND; -}//[Yes] #endif - - -static if ((ODBCVER >= 0x0201) && (ODBCVER < 0x0300)) { - const SQL_OJ_CAPABILITIES = 65003; -} - -static if (ODBCVER >= 0x0250) { - const SQL_NO_ACTION = 3; - const SQL_SET_DEFAULT = 4; -} - -static if (ODBCVER >= 0x0300) { - const SQL_ACTIVE_ENVIRONMENTS = 116; - const SQL_AD_ADD_CONSTRAINT_DEFERRABLE = 0x00000080L; - const SQL_AD_ADD_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; - const SQL_AD_ADD_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; - const SQL_AD_ADD_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; - const SQL_AD_ADD_DOMAIN_CONSTRAINT = 0x00000002L; - const SQL_AD_ADD_DOMAIN_DEFAULT = 0x00000008L; - const SQL_AD_CONSTRAINT_NAME_DEFINITION = 0x00000001L; - const SQL_AD_DROP_DOMAIN_CONSTRAINT = 0x00000004L; - const SQL_AD_DROP_DOMAIN_DEFAULT = 0x00000010L; - const SQL_AF_ALL = 0x00000040L; - const SQL_AF_AVG = 0x00000001L; - const SQL_AF_COUNT = 0x00000002L; - const SQL_AF_DISTINCT = 0x00000020L; - const SQL_AF_MAX = 0x00000004L; - const SQL_AF_MIN = 0x00000008L; - const SQL_AF_SUM = 0x00000010L; - const SQL_AGGREGATE_FUNCTIONS = 169; - const SQL_ALL_CATALOGS = "%"; - const SQL_ALL_SCHEMAS = "%"; - const SQL_ALL_TABLE_TYPES = "%"; - const SQL_ALTER_DOMAIN = 117; - const SQL_AM_CONNECTION = 1; - const SQL_AM_NONE = 0; - const SQL_AM_STATEMENT = 2; - const SQL_API_ODBC3_ALL_FUNCTIONS = 999; - const SQL_API_ODBC3_ALL_FUNCTIONS_SIZE = 250; - const SQL_API_SQLALLOCHANDLESTD = 73; - const SQL_API_SQLBULKOPERATIONS = 24; - const SQL_ASYNC_MODE = 10021; - const SQL_AT_ADD_COLUMN_COLLATION = 0x00000080L; - const SQL_AT_ADD_COLUMN_DEFAULT = 0x00000040L; - const SQL_AT_ADD_COLUMN_SINGLE = 0x00000020L; - const SQL_AT_ADD_TABLE_CONSTRAINT = 0x00001000L; - const SQL_AT_CONSTRAINT_DEFERRABLE = 0x00040000L; - const SQL_AT_CONSTRAINT_INITIALLY_DEFERRED = 0x00010000L; - const SQL_AT_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00020000L; - const SQL_AT_CONSTRAINT_NAME_DEFINITION = 0x00008000L; - const SQL_AT_CONSTRAINT_NON_DEFERRABLE = 0x00080000L; - const SQL_AT_DROP_COLUMN_CASCADE = 0x00000400L; - const SQL_AT_DROP_COLUMN_DEFAULT = 0x00000200L; - const SQL_AT_DROP_COLUMN_RESTRICT = 0x00000800L; - const SQL_AT_DROP_TABLE_CONSTRAINT_CASCADE = 0x00002000L; - const SQL_AT_DROP_TABLE_CONSTRAINT_RESTRICT = 0x00004000L; - const SQL_AT_SET_COLUMN_DEFAULT = 0x00000100L; - const SQL_ATTR_ACCESS_MODE = SQL_ACCESS_MODE; - const SQL_ATTR_ASYNC_ENABLE = 4; - const SQL_ATTR_AUTOCOMMIT = SQL_AUTOCOMMIT; - const SQL_ATTR_CONCURRENCY = SQL_CONCURRENCY; - const SQL_ATTR_CONNECTION_POOLING = 201; - const SQL_ATTR_CONNECTION_TIMEOUT = 113; - const SQL_ATTR_CP_MATCH = 202; - const SQL_ATTR_CURRENT_CATALOG = SQL_CURRENT_QUALIFIER; - const SQL_ATTR_CURSOR_TYPE = SQL_CURSOR_TYPE; - const SQL_ATTR_DISCONNECT_BEHAVIOR = 114; - const SQL_ATTR_ENABLE_AUTO_IPD = 15; - const SQL_ATTR_ENLIST_IN_DTC = 1207; - const SQL_ATTR_ENLIST_IN_XA = 1208; - const SQL_ATTR_FETCH_BOOKMARK_PTR = 16; - const SQL_ATTR_KEYSET_SIZE = SQL_KEYSET_SIZE; - const SQL_ATTR_LOGIN_TIMEOUT = SQL_LOGIN_TIMEOUT; - const SQL_ATTR_MAX_LENGTH = SQL_MAX_LENGTH; - const SQL_ATTR_MAX_ROWS = SQL_MAX_ROWS; - const SQL_ATTR_NOSCAN = SQL_NOSCAN; - const SQL_ATTR_ODBC_CURSORS = SQL_ODBC_CURSORS; - const SQL_ATTR_ODBC_VERSION = 200; - const SQL_ATTR_PACKET_SIZE = SQL_PACKET_SIZE; - const SQL_ATTR_PARAM_BIND_OFFSET_PTR = 17; - const SQL_ATTR_PARAM_BIND_TYPE = 18; - const SQL_ATTR_PARAM_OPERATION_PTR = 19; - const SQL_ATTR_PARAM_STATUS_PTR = 20; - const SQL_ATTR_PARAMS_PROCESSED_PTR = 21; - const SQL_ATTR_PARAMSET_SIZE = 22; - const SQL_ATTR_QUERY_TIMEOUT = SQL_QUERY_TIMEOUT; - const SQL_ATTR_QUIET_MODE = SQL_QUIET_MODE; - const SQL_ATTR_RETRIEVE_DATA = SQL_RETRIEVE_DATA; - const SQL_ATTR_ROW_ARRAY_SIZE = 27; - const SQL_ATTR_ROW_BIND_OFFSET_PTR = 23; - const SQL_ATTR_ROW_BIND_TYPE = SQL_BIND_TYPE; - const SQL_ATTR_ROW_NUMBER = SQL_ROW_NUMBER; - const SQL_ATTR_ROW_OPERATION_PTR = 24; - const SQL_ATTR_ROW_STATUS_PTR = 25; - const SQL_ATTR_ROWS_FETCHED_PTR = 26; - const SQL_ATTR_SIMULATE_CURSOR = SQL_SIMULATE_CURSOR; - const SQL_ATTR_TRACE = SQL_OPT_TRACE; - const SQL_ATTR_TRACEFILE = SQL_OPT_TRACEFILE; - const SQL_ATTR_TRANSLATE_LIB = SQL_TRANSLATE_DLL; - const SQL_ATTR_TRANSLATE_OPTION = SQL_TRANSLATE_OPTION; - const SQL_ATTR_TXN_ISOLATION = SQL_TXN_ISOLATION; - const SQL_ATTR_USE_BOOKMARKS = SQL_USE_BOOKMARKS; - const SQL_BATCH_ROW_COUNT = 120; - const SQL_BATCH_SUPPORT = 121; - const SQL_BRC_EXPLICIT = 0x0000002; - const SQL_BRC_PROCEDURES = 0x0000001; - const SQL_BRC_ROLLED_UP = 0x0000004; - const SQL_BS_ROW_COUNT_EXPLICIT = 0x00000002L; - const SQL_BS_ROW_COUNT_PROC = 0x00000008L; - const SQL_BS_SELECT_EXPLICIT = 0x00000001L; - const SQL_BS_SELECT_PROC = 0x00000004L; - const SQL_C_INTERVAL_DAY = SQL_INTERVAL_DAY; - const SQL_C_INTERVAL_DAY_TO_HOUR = SQL_INTERVAL_DAY_TO_HOUR; - const SQL_C_INTERVAL_DAY_TO_MINUTE = SQL_INTERVAL_DAY_TO_MINUTE; - const SQL_C_INTERVAL_DAY_TO_SECOND = SQL_INTERVAL_DAY_TO_SECOND; - const SQL_C_INTERVAL_HOUR = SQL_INTERVAL_HOUR; - const SQL_C_INTERVAL_HOUR_TO_MINUTE = SQL_INTERVAL_HOUR_TO_MINUTE; - const SQL_C_INTERVAL_HOUR_TO_SECOND = SQL_INTERVAL_HOUR_TO_SECOND; - const SQL_C_INTERVAL_MINUTE = SQL_INTERVAL_MINUTE; - const SQL_C_INTERVAL_MINUTE_TO_SECOND = SQL_INTERVAL_MINUTE_TO_SECOND; - const SQL_C_INTERVAL_MONTH = SQL_INTERVAL_MONTH; - const SQL_C_INTERVAL_SECOND = SQL_INTERVAL_SECOND; - const SQL_C_INTERVAL_YEAR = SQL_INTERVAL_YEAR; - const SQL_C_INTERVAL_YEAR_TO_MONTH = SQL_INTERVAL_YEAR_TO_MONTH; - const SQL_C_NUMERIC = SQL_NUMERIC; - const SQL_C_SBIGINT = SQL_BIGINT+SQL_SIGNED_OFFSET; - const SQL_C_TYPE_DATE = SQL_TYPE_DATE; - const SQL_C_TYPE_TIME = SQL_TYPE_TIME; - const SQL_C_TYPE_TIMESTAMP = SQL_TYPE_TIMESTAMP; - const SQL_C_UBIGINT = SQL_BIGINT+SQL_UNSIGNED_OFFSET; - const SQL_C_VARBOOKMARK = SQL_C_BINARY; - const SQL_CA_CONSTRAINT_DEFERRABLE = 0x00000040L; - const SQL_CA_CONSTRAINT_INITIALLY_DEFERRED = 0x00000010L; - const SQL_CA_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000020L; - const SQL_CA_CONSTRAINT_NON_DEFERRABLE = 0x00000080L; - const SQL_CA_CREATE_ASSERTION = 0x00000001L; - const SQL_CA1_ABSOLUTE = 0x00000002L; - const SQL_CA1_BOOKMARK = 0x00000008L; - const SQL_CA1_BULK_ADD = 0x00010000L; - const SQL_CA1_BULK_DELETE_BY_BOOKMARK = 0x00040000L; - const SQL_CA1_BULK_FETCH_BY_BOOKMARK = 0x00080000L; - const SQL_CA1_BULK_UPDATE_BY_BOOKMARK = 0x00020000L; - const SQL_CA1_LOCK_EXCLUSIVE = 0x00000080L; - const SQL_CA1_LOCK_NO_CHANGE = 0x00000040L; - const SQL_CA1_LOCK_UNLOCK = 0x00000100L; - const SQL_CA1_NEXT = 0x00000001L; - const SQL_CA1_POS_DELETE = 0x00000800L; - const SQL_CA1_POS_POSITION = 0x00000200L; - const SQL_CA1_POS_REFRESH = 0x00001000L; - const SQL_CA1_POS_UPDATE = 0x00000400L; - const SQL_CA1_POSITIONED_DELETE = 0x00004000L; - const SQL_CA1_POSITIONED_UPDATE = 0x00002000L; - const SQL_CA1_RELATIVE = 0x00000004L; - const SQL_CA1_SELECT_FOR_UPDATE = 0x00008000L; - const SQL_CA2_CRC_APPROXIMATE = 0x00002000L; - const SQL_CA2_CRC_EXACT = 0x00001000L; - const SQL_CA2_LOCK_CONCURRENCY = 0x00000002L; - - const SQL_CA2_MAX_ROWS_CATALOG = 0x00000800L; - const SQL_CA2_MAX_ROWS_DELETE = 0x00000200L; - const SQL_CA2_MAX_ROWS_INSERT = 0x00000100L; - const SQL_CA2_MAX_ROWS_SELECT = 0x00000080L; - const SQL_CA2_MAX_ROWS_UPDATE = 0x00000400L; - const SQL_CA2_MAX_ROWS_AFFECTS_ALL = SQL_CA2_MAX_ROWS_SELECT | SQL_CA2_MAX_ROWS_INSERT | - SQL_CA2_MAX_ROWS_DELETE | SQL_CA2_MAX_ROWS_UPDATE | SQL_CA2_MAX_ROWS_CATALOG; - - const SQL_CA2_OPT_ROWVER_CONCURRENCY = 0x00000004L; - const SQL_CA2_OPT_VALUES_CONCURRENCY = 0x00000008L; - const SQL_CA2_READ_ONLY_CONCURRENCY = 0x00000001L; - const SQL_CA2_SENSITIVITY_ADDITIONS = 0x00000010L; - const SQL_CA2_SENSITIVITY_DELETIONS = 0x00000020L; - const SQL_CA2_SENSITIVITY_UPDATES = 0x00000040L; - const SQL_CA2_SIMULATE_NON_UNIQUE = 0x00004000L; - const SQL_CA2_SIMULATE_TRY_UNIQUE = 0x00008000L; - const SQL_CA2_SIMULATE_UNIQUE = 0x00010000L; - const SQL_CATALOG_LOCATION = SQL_QUALIFIER_LOCATION; - const SQL_CATALOG_NAME_SEPARATOR = SQL_QUALIFIER_NAME_SEPARATOR; - const SQL_CATALOG_TERM = SQL_QUALIFIER_TERM; - const SQL_CATALOG_USAGE = SQL_QUALIFIER_USAGE; - const SQL_CCOL_CREATE_COLLATION = 0x00000001L; - const SQL_CCS_COLLATE_CLAUSE = 0x00000002L; - const SQL_CCS_CREATE_CHARACTER_SET = 0x00000001L; - const SQL_CCS_LIMITED_COLLATION = 0x00000004L; - const SQL_CDO_COLLATION = 0x00000008L; - const SQL_CDO_CONSTRAINT = 0x00000004L; - const SQL_CDO_CONSTRAINT_DEFERRABLE = 0x00000080L; - const SQL_CDO_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; - const SQL_CDO_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; - const SQL_CDO_CONSTRAINT_NAME_DEFINITION = 0x00000010L; - const SQL_CDO_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; - const SQL_CDO_CREATE_DOMAIN = 0x00000001L; - const SQL_CDO_DEFAULT = 0x00000002L; - const SQL_CL_END = SQL_QL_END; - const SQL_CL_START = SQL_QL_START; - const SQL_COL_PRED_BASIC = SQL_ALL_EXCEPT_LIKE; - const SQL_COL_PRED_CHAR = SQL_LIKE_ONLY; - const SQL_COLUMN_DRIVER_START = 1000; - const SQL_COLUMN_IGNORE = SQL_IGNORE; - const SQL_COLUMN_NUMBER_UNKNOWN = -2; - const SQL_CONVERT_GUID = 173; - - const SQL_CONVERT_WCHAR = 122; - const SQL_CONVERT_INTERVAL_DAY_TIME = 123; - const SQL_CONVERT_INTERVAL_YEAR_MONTH = 124; - const SQL_CONVERT_WLONGVARCHAR = 125; - const SQL_CONVERT_WVARCHAR = 126; - - const SQL_CREATE_ASSERTION = 127; - const SQL_CREATE_CHARACTER_SET = 128; - const SQL_CREATE_COLLATION = 129; - const SQL_CREATE_DOMAIN = 130; - const SQL_CREATE_SCHEMA = 131; - const SQL_CREATE_TABLE = 132; - const SQL_CREATE_TRANSLATION = 133; - const SQL_CREATE_VIEW = 134; - - - const SQL_CP_OFF = 0UL; - const SQL_CP_DEFAULT = SQL_CP_OFF; - const SQL_CP_ONE_PER_DRIVER = 1UL; - const SQL_CP_ONE_PER_HENV = 2UL; - - const SQL_CP_STRICT_MATCH = 0UL; - const SQL_CP_MATCH_DEFAULT = SQL_CP_STRICT_MATCH; - const SQL_CP_RELAXED_MATCH = 1UL; - - const SQL_CS_CREATE_SCHEMA = 0x00000001L; - const SQL_CS_AUTHORIZATION = 0x00000002L; - const SQL_CS_DEFAULT_CHARACTER_SET = 0x00000004L; - - const SQL_CT_COLUMN_COLLATION = 0x00000800L; - const SQL_CT_COLUMN_CONSTRAINT = 0x00000200L; - const SQL_CT_COLUMN_DEFAULT = 0x00000400L; - const SQL_CT_COMMIT_DELETE = 0x00000004L; - const SQL_CT_COMMIT_PRESERVE = 0x00000002L; - const SQL_CT_CONSTRAINT_DEFERRABLE = 0x00000080L; - const SQL_CT_CONSTRAINT_INITIALLY_DEFERRED = 0x00000020L; - const SQL_CT_CONSTRAINT_INITIALLY_IMMEDIATE = 0x00000040L; - const SQL_CT_CONSTRAINT_NAME_DEFINITION = 0x00002000L; - const SQL_CT_CONSTRAINT_NON_DEFERRABLE = 0x00000100L; - const SQL_CT_CREATE_TABLE = 0x00000001L; - const SQL_CT_GLOBAL_TEMPORARY = 0x00000008L; - const SQL_CT_LOCAL_TEMPORARY = 0x00000010L; - const SQL_CT_TABLE_CONSTRAINT = 0x00001000L; - - const SQL_CTR_CREATE_TRANSLATION = 0x00000001L; - - const SQL_CU_DML_STATEMENTS = SQL_QU_DML_STATEMENTS; - const SQL_CU_INDEX_DEFINITION = SQL_QU_INDEX_DEFINITION; - const SQL_CU_PRIVILEGE_DEFINITION = SQL_QU_PRIVILEGE_DEFINITION; - const SQL_CU_PROCEDURE_INVOCATION = SQL_QU_PROCEDURE_INVOCATION; - const SQL_CU_TABLE_DEFINITION = SQL_QU_TABLE_DEFINITION; - - const SQL_CVT_INTERVAL_YEAR_MONTH = 0x00080000L; - const SQL_CVT_INTERVAL_DAY_TIME = 0x00100000L; - const SQL_CVT_WCHAR = 0x00200000L; - const SQL_CVT_WLONGVARCHAR = 0x00400000L; - const SQL_CVT_WVARCHAR = 0x00800000L; - const SQL_CVT_GUID = 0x01000000L; - - const SQL_DA_DROP_ASSERTION = 0x00000001L; - const SQL_DATETIME_LITERALS = 119; - - const SQL_DB_DISCONNECT = 1UL; - const SQL_DB_RETURN_TO_POOL = 0UL; - const SQL_DB_DEFAULT = SQL_DB_RETURN_TO_POOL; - - const SQL_DC_DROP_COLLATION = 0x00000001L; - const SQL_DCS_DROP_CHARACTER_SET = 0x00000001L; - const SQL_DD_CASCADE = 0x00000004L; - const SQL_DD_DROP_DOMAIN = 0x00000001L; - const SQL_DD_RESTRICT = 0x00000002L; - const SQL_DDL_INDEX = 170; - const SQL_DELETE_BY_BOOKMARK = 6; - const SQL_DESC_ARRAY_SIZE = 20; - const SQL_DESC_ARRAY_STATUS_PTR = 21; - const SQL_DESC_AUTO_UNIQUE_VALUE = SQL_COLUMN_AUTO_INCREMENT; - const SQL_DESC_BASE_COLUMN_NAME = 22; - const SQL_DESC_BASE_TABLE_NAME = 23; - const SQL_DESC_BIND_OFFSET_PTR = 24; - const SQL_DESC_BIND_TYPE = 25; - const SQL_DESC_CASE_SENSITIVE = SQL_COLUMN_CASE_SENSITIVE; - const SQL_DESC_CATALOG_NAME = SQL_COLUMN_QUALIFIER_NAME; - const SQL_DESC_CONCISE_TYPE = SQL_COLUMN_TYPE; - const SQL_DESC_DATETIME_INTERVAL_PRECISION = 26; - const SQL_DESC_DISPLAY_SIZE = SQL_COLUMN_DISPLAY_SIZE; - const SQL_DESC_FIXED_PREC_SCALE = SQL_COLUMN_MONEY; - const SQL_DESC_LABEL = SQL_COLUMN_LABEL; - const SQL_DESC_LITERAL_PREFIX = 27; - const SQL_DESC_LITERAL_SUFFIX = 28; - const SQL_DESC_LOCAL_TYPE_NAME = 29; - const SQL_DESC_MAXIMUM_SCALE = 30; - const SQL_DESC_MINIMUM_SCALE = 31; - const SQL_DESC_NUM_PREC_RADIX = 32; - const SQL_DESC_PARAMETER_TYPE = 33; - const SQL_DESC_ROWS_PROCESSED_PTR = 34; - const SQL_DESC_SCHEMA_NAME = SQL_COLUMN_OWNER_NAME; - const SQL_DESC_SEARCHABLE = SQL_COLUMN_SEARCHABLE; - const SQL_DESC_TABLE_NAME = SQL_COLUMN_TABLE_NAME; - const SQL_DESC_TYPE_NAME = SQL_COLUMN_TYPE_NAME; - const SQL_DESC_UNSIGNED = SQL_COLUMN_UNSIGNED; - const SQL_DESC_UPDATABLE = SQL_COLUMN_UPDATABLE; - const SQL_DI_CREATE_INDEX = 0x00000001L; - const SQL_DI_DROP_INDEX = 0x00000002L; - - const SQL_DIAG_COLUMN_NUMBER = -1247; - const SQL_DIAG_ROW_NUMBER = -1248; - const SQL_DIAG_CURSOR_ROW_COUNT = -1249; - - const SQL_DL_SQL92_DATE = 0x00000001L; - const SQL_DL_SQL92_INTERVAL_DAY = 0x00000020L; - const SQL_DL_SQL92_INTERVAL_DAY_TO_HOUR = 0x00000400L; - const SQL_DL_SQL92_INTERVAL_DAY_TO_MINUTE = 0x00000800L; - const SQL_DL_SQL92_INTERVAL_DAY_TO_SECOND = 0x00001000L; - const SQL_DL_SQL92_INTERVAL_HOUR = 0x00000040L; - const SQL_DL_SQL92_INTERVAL_HOUR_TO_MINUTE = 0x00002000L; - const SQL_DL_SQL92_INTERVAL_HOUR_TO_SECOND = 0x00004000L; - const SQL_DL_SQL92_INTERVAL_MINUTE = 0x00000080L; - const SQL_DL_SQL92_INTERVAL_MINUTE_TO_SECOND = 0x00008000L; - const SQL_DL_SQL92_INTERVAL_MONTH = 0x00000010L; - const SQL_DL_SQL92_INTERVAL_SECOND = 0x00000100L; - const SQL_DL_SQL92_INTERVAL_YEAR = 0x00000008L; - const SQL_DL_SQL92_INTERVAL_YEAR_TO_MONTH = 0x00000200L; - const SQL_DL_SQL92_TIME = 0x00000002L; - const SQL_DL_SQL92_TIMESTAMP = 0x00000004L; - const SQL_DM_VER = 171; - const SQL_DRIVER_HDESC = 135; - const SQL_DROP_ASSERTION = 136; - const SQL_DROP_CHARACTER_SET = 137; - const SQL_DROP_COLLATION = 138; - const SQL_DROP_DOMAIN = 139; - const SQL_DROP_SCHEMA = 140; - const SQL_DROP_TABLE = 141; - const SQL_DROP_TRANSLATION = 142; - const SQL_DROP_VIEW = 143; - const SQL_DS_CASCADE = 0x00000004L; - const SQL_DS_DROP_SCHEMA = 0x00000001L; - const SQL_DS_RESTRICT = 0x00000002L; - const SQL_DT_CASCADE = 0x00000004L; - const SQL_DT_DROP_TABLE = 0x00000001L; - const SQL_DT_RESTRICT = 0x00000002L; - const SQL_DTC_DONE = 0L; - const SQL_DTR_DROP_TRANSLATION = 0x00000001L; - const SQL_DV_CASCADE = 0x00000004L; - const SQL_DV_DROP_VIEW = 0x00000001L; - const SQL_DV_RESTRICT = 0x00000002L; - const SQL_DYNAMIC_CURSOR_ATTRIBUTES1 = 144; - const SQL_DYNAMIC_CURSOR_ATTRIBUTES2 = 145; - const SQL_EXT_API_LAST = SQL_API_SQLBINDPARAMETER; - const SQL_EXT_API_START = 40; - const SQL_FETCH_BY_BOOKMARK = 7; - const SQL_FETCH_FIRST_SYSTEM = 32; - const SQL_FETCH_FIRST_USER = 31; - const SQL_FN_CVT_CAST = 0x00000002L; - const SQL_FN_STR_BIT_LENGTH = 0x00080000L; - const SQL_FN_STR_CHAR_LENGTH = 0x00100000L; - const SQL_FN_STR_CHARACTER_LENGTH = 0x00200000L; - const SQL_FN_STR_OCTET_LENGTH = 0x00400000L; - const SQL_FN_STR_POSITION = 0x00800000L; - const SQL_FN_TD_CURRENT_DATE = 0x00020000L; - const SQL_FN_TD_CURRENT_TIME = 0x00040000L; - const SQL_FN_TD_CURRENT_TIMESTAMP = 0x00080000L; - const SQL_FN_TD_EXTRACT = 0x00100000L; - const SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES1 = 146; - const SQL_FORWARD_ONLY_CURSOR_ATTRIBUTES2 = 147; - /* #define SQL_FUNC_EXISTS(exists, api) - ((*(((UWORD*) (exists)) + ((api) >> 4)) & (1 << ((api) & 15)) ) ? - SQL_TRUE : SQL_FALSE ) - */ - const SQL_GB_COLLATE = 0x0004; - const SQL_HANDLE_SENV = 5; - - const SQL_IK_NONE = 0; - const SQL_IK_ASC = 1; - const SQL_IK_DESC = 2; - const SQL_IK_ALL = SQL_IK_ASC | SQL_IK_DESC; - - const SQL_INDEX_KEYWORDS = 148; - const SQL_INFO_DRIVER_START = 1000; - const SQL_INFO_LAST = SQL_QUALIFIER_LOCATION; - const SQL_INFO_SCHEMA_VIEWS = 149; - const SQL_INITIALLY_DEFERRED = 5; - const SQL_INITIALLY_IMMEDIATE = 6; - const SQL_INSERT_STATEMENT = 172; - const SQL_INTERVAL = 10; - const SQL_IS_INSERT_LITERALS = 0x00000001L; - const SQL_IS_INSERT_SEARCHED = 0x00000002L; - const SQL_IS_INTEGER = -6; - const SQL_IS_POINTER = -4; - const SQL_IS_SELECT_INTO = 0x00000004L; - const SQL_IS_SMALLINT = -8; - const SQL_IS_UINTEGER = -5; - const SQL_IS_USMALLINT = -7; - const SQL_ISV_ASSERTIONS = 0x00000001L; - const SQL_ISV_CHARACTER_SETS = 0x00000002L; - const SQL_ISV_CHECK_CONSTRAINTS = 0x00000004L; - const SQL_ISV_COLLATIONS = 0x00000008L; - const SQL_ISV_COLUMN_DOMAIN_USAGE = 0x00000010L; - const SQL_ISV_COLUMN_PRIVILEGES = 0x00000020L; - const SQL_ISV_COLUMNS = 0x00000040L; - const SQL_ISV_CONSTRAINT_COLUMN_USAGE = 0x00000080L; - const SQL_ISV_CONSTRAINT_TABLE_USAGE = 0x00000100L; - const SQL_ISV_DOMAIN_CONSTRAINTS = 0x00000200L; - const SQL_ISV_DOMAINS = 0x00000400L; - const SQL_ISV_KEY_COLUMN_USAGE = 0x00000800L; - const SQL_ISV_REFERENTIAL_CONSTRAINTS = 0x00001000L; - const SQL_ISV_SCHEMATA = 0x00002000L; - const SQL_ISV_SQL_LANGUAGES = 0x00004000L; - const SQL_ISV_TABLE_CONSTRAINTS = 0x00008000L; - const SQL_ISV_TABLE_PRIVILEGES = 0x00010000L; - const SQL_ISV_TABLES = 0x00020000L; - const SQL_ISV_TRANSLATIONS = 0x00040000L; - const SQL_ISV_USAGE_PRIVILEGES = 0x00080000L; - const SQL_ISV_VIEW_COLUMN_USAGE = 0x00100000L; - const SQL_ISV_VIEW_TABLE_USAGE = 0x00200000L; - const SQL_ISV_VIEWS = 0x00400000L; - const SQL_KEYSET_CURSOR_ATTRIBUTES1 = 150; - const SQL_KEYSET_CURSOR_ATTRIBUTES2 = 151; - const SQL_MAX_ASYNC_CONCURRENT_STATEMENTS = 10022; - const SQL_NO_COLUMN_NUMBER = -1; - const SQL_NO_ROW_NUMBER = -1; - const SQL_NOT_DEFERRABLE = 7; - const SQL_NUM_EXTENSIONS = SQL_EXT_API_LAST-SQL_EXT_API_START+1; - const SQL_NUM_FUNCTIONS = 23; - const SQL_ODBC_INTERFACE_CONFORMANCE = 152; - - enum : ULONG { - SQL_OIC_CORE = 1, - SQL_OIC_LEVEL1, - SQL_OIC_LEVEL2 - } - enum : ULONG { - SQL_OV_ODBC2 = 2, - SQL_OV_ODBC3 = 3 - } - - const ULONG - SQL_PARAM_BIND_BY_COLUMN = 0, - SQL_PARAM_BIND_TYPE_DEFAULT = SQL_PARAM_BIND_BY_COLUMN; - - const SQL_PARAM_ARRAY_ROW_COUNTS = 153; - const SQL_PARAM_ARRAY_SELECTS = 154; - const SQL_PARAM_DIAG_UNAVAILABLE = 1; - const SQL_PARAM_ERROR = 5; - const SQL_PARAM_IGNORE = 1; - const SQL_PARAM_PROCEED = 0; - const SQL_PARAM_SUCCESS = 0; - const SQL_PARAM_SUCCESS_WITH_INFO = 6; - const SQL_PARAM_UNUSED = 7; - - const SQL_PARC_BATCH = 1; - const SQL_PARC_NO_BATCH = 2; - const SQL_PAS_BATCH = 1; - const SQL_PAS_NO_BATCH = 2; - const SQL_PAS_NO_SELECT = 3; - - const SQL_ROW_IGNORE = 1; - const SQL_ROW_NUMBER_UNKNOWN = -2; - const SQL_ROW_PROCEED = 0; - const SQL_ROW_SUCCESS_WITH_INFO = 6; - - const SQL_SC_FIPS127_2_TRANSITIONAL = 0x00000002L; - const SQL_SC_SQL92_ENTRY = 0x00000001L; - const SQL_SC_SQL92_FULL = 0x00000008L; - const SQL_SC_SQL92_INTERMEDIATE = 0x00000004L; - - const SQL_SCC_ISO92_CLI = 0x00000002L; - const SQL_SCC_XOPEN_CLI_VERSION1 = 0x00000001L; - - const SQL_SCHEMA_TERM = SQL_OWNER_TERM; - const SQL_SCHEMA_USAGE = SQL_OWNER_USAGE; - const SQL_SDF_CURRENT_DATE = 0x00000001L; - const SQL_SDF_CURRENT_TIME = 0x00000002L; - const SQL_SDF_CURRENT_TIMESTAMP = 0x00000004L; - const SQL_SFKD_CASCADE = 0x00000001L; - const SQL_SFKD_NO_ACTION = 0x00000002L; - const SQL_SFKD_SET_DEFAULT = 0x00000004L; - const SQL_SFKD_SET_NULL = 0x00000008L; - const SQL_SFKU_CASCADE = 0x00000001L; - const SQL_SFKU_NO_ACTION = 0x00000002L; - const SQL_SFKU_SET_DEFAULT = 0x00000004L; - const SQL_SFKU_SET_NULL = 0x00000008L; - const SQL_SG_DELETE_TABLE = 0x00000020L; - const SQL_SG_INSERT_COLUMN = 0x00000080L; - const SQL_SG_INSERT_TABLE = 0x00000040L; - const SQL_SG_REFERENCES_COLUMN = 0x00000200L; - const SQL_SG_REFERENCES_TABLE = 0x00000100L; - const SQL_SG_SELECT_TABLE = 0x00000400L; - const SQL_SG_UPDATE_COLUMN = 0x00001000L; - const SQL_SG_UPDATE_TABLE = 0x00000800L; - const SQL_SG_USAGE_ON_CHARACTER_SET = 0x00000002L; - const SQL_SG_USAGE_ON_COLLATION = 0x00000004L; - const SQL_SG_USAGE_ON_DOMAIN = 0x00000001L; - const SQL_SG_USAGE_ON_TRANSLATION = 0x00000008L; - const SQL_SG_WITH_GRANT_OPTION = 0x00000010L; - const SQL_SNVF_BIT_LENGTH = 0x00000001L; - const SQL_SNVF_CHAR_LENGTH = 0x00000002L; - const SQL_SNVF_CHARACTER_LENGTH = 0x00000004L; - const SQL_SNVF_EXTRACT = 0x00000008L; - const SQL_SNVF_OCTET_LENGTH = 0x00000010L; - const SQL_SNVF_POSITION = 0x00000020L; - const SQL_SP_BETWEEN = 0x00000800L; - const SQL_SP_COMPARISON = 0x00001000L; - const SQL_SP_EXISTS = 0x00000001L; - const SQL_SP_IN = 0x00000400L; - const SQL_SP_ISNOTNULL = 0x00000002L; - const SQL_SP_ISNULL = 0x00000004L; - const SQL_SP_LIKE = 0x00000200L; - const SQL_SP_MATCH_FULL = 0x00000008L; - const SQL_SP_MATCH_PARTIAL = 0x00000010L; - const SQL_SP_MATCH_UNIQUE_FULL = 0x00000020L; - const SQL_SP_MATCH_UNIQUE_PARTIAL = 0x00000040L; - const SQL_SP_OVERLAPS = 0x00000080L; - const SQL_SP_QUANTIFIED_COMPARISON = 0x00002000L; - const SQL_SP_UNIQUE = 0x00000100L; - const SQL_SQL_CONFORMANCE = 118; - const SQL_SQL92_DATETIME_FUNCTIONS = 155; - const SQL_SQL92_FOREIGN_KEY_DELETE_RULE = 156; - const SQL_SQL92_FOREIGN_KEY_UPDATE_RULE = 157; - const SQL_SQL92_GRANT = 158; - const SQL_SQL92_NUMERIC_VALUE_FUNCTIONS = 159; - const SQL_SQL92_PREDICATES = 160; - const SQL_SQL92_RELATIONAL_JOIN_OPERATORS = 161; - const SQL_SQL92_REVOKE = 162; - const SQL_SQL92_ROW_VALUE_CONSTRUCTOR = 163; - const SQL_SQL92_STRING_FUNCTIONS = 164; - const SQL_SQL92_VALUE_EXPRESSIONS = 165; - const SQL_SR_CASCADE = 0x00000020L; - const SQL_SR_DELETE_TABLE = 0x00000080L; - const SQL_SR_GRANT_OPTION_FOR = 0x00000010L; - const SQL_SR_INSERT_COLUMN = 0x00000200L; - const SQL_SR_INSERT_TABLE = 0x00000100L; - const SQL_SR_REFERENCES_COLUMN = 0x00000800L; - const SQL_SR_REFERENCES_TABLE = 0x00000400L; - const SQL_SR_RESTRICT = 0x00000040L; - const SQL_SR_SELECT_TABLE = 0x00001000L; - const SQL_SR_UPDATE_COLUMN = 0x00004000L; - const SQL_SR_UPDATE_TABLE = 0x00002000L; - const SQL_SR_USAGE_ON_CHARACTER_SET = 0x00000002L; - const SQL_SR_USAGE_ON_COLLATION = 0x00000004L; - const SQL_SR_USAGE_ON_DOMAIN = 0x00000001L; - const SQL_SR_USAGE_ON_TRANSLATION = 0x00000008L; - const SQL_SRJO_CORRESPONDING_CLAUSE = 0x00000001L; - const SQL_SRJO_CROSS_JOIN = 0x00000002L; - const SQL_SRJO_EXCEPT_JOIN = 0x00000004L; - const SQL_SRJO_FULL_OUTER_JOIN = 0x00000008L; - const SQL_SRJO_INNER_JOIN = 0x00000010L; - const SQL_SRJO_INTERSECT_JOIN = 0x00000020L; - const SQL_SRJO_LEFT_OUTER_JOIN = 0x00000040L; - const SQL_SRJO_NATURAL_JOIN = 0x00000080L; - const SQL_SRJO_RIGHT_OUTER_JOIN = 0x00000100L; - const SQL_SRJO_UNION_JOIN = 0x00000200L; - const SQL_SRVC_DEFAULT = 0x00000004L; - const SQL_SRVC_NULL = 0x00000002L; - const SQL_SRVC_ROW_SUBQUERY = 0x00000008L; - const SQL_SRVC_VALUE_EXPRESSION = 0x00000001L; - const SQL_SSF_CONVERT = 0x00000001L; - const SQL_SSF_LOWER = 0x00000002L; - const SQL_SSF_SUBSTRING = 0x00000008L; - const SQL_SSF_TRANSLATE = 0x00000010L; - const SQL_SSF_TRIM_BOTH = 0x00000020L; - const SQL_SSF_TRIM_LEADING = 0x00000040L; - const SQL_SSF_TRIM_TRAILING = 0x00000080L; - const SQL_SSF_UPPER = 0x00000004L; - const SQL_STANDARD_CLI_CONFORMANCE = 166; - const SQL_STATIC_CURSOR_ATTRIBUTES1 = 167; - const SQL_STATIC_CURSOR_ATTRIBUTES2 = 168; - const SQL_SU_DML_STATEMENTS = SQL_OU_DML_STATEMENTS; - const SQL_SU_INDEX_DEFINITION = SQL_OU_INDEX_DEFINITION; - const SQL_SU_PRIVILEGE_DEFINITION = SQL_OU_PRIVILEGE_DEFINITION; - const SQL_SU_PROCEDURE_INVOCATION = SQL_OU_PROCEDURE_INVOCATION; - const SQL_SU_TABLE_DEFINITION = SQL_OU_TABLE_DEFINITION; - const SQL_SVE_CASE = 0x00000001L; - const SQL_SVE_CAST = 0x00000002L; - const SQL_SVE_COALESCE = 0x00000004L; - const SQL_SVE_NULLIF = 0x00000008L; - const SQL_UB_FIXED = SQL_UB_ON; - const SQL_UB_VARIABLE = 2UL; - const SQL_UNION_STATEMENT = SQL_UNION; - const SQL_UPDATE_BY_BOOKMARK = 5; - const SQL_US_UNION = SQL_U_UNION; - const SQL_US_UNION_ALL = SQL_U_UNION_ALL; -}//[Yes] #endif /* ODBCVER >= 0x300 */ -static if (ODBCVER >= 0x0350) { - const SQL_DESC_ROWVER = 35; - const SQL_GUID = -11; - const SQL_C_GUID = SQL_GUID; - //#ifdef ODBC_STD - //#define SQLAllocHandle SQLAllocHandleStd - //#define SQLAllocEnv(p) SQLAllocHandleStd(SQL_HANDLE_ENV, SQL_NULL_HANDLE, p) - //#define SQL_YEAR SQL_CODE_YEAR - //#define SQL_MONTH SQL_CODE_MONTH - //#define SQL_DAY SQL_CODE_DAY - //#define SQL_HOUR SQL_CODE_HOUR - //#define SQL_MINUTE SQL_CODE_MINUTE - //#define SQL_SECOND SQL_CODE_SECOND - //#define SQL_YEAR_TO_MONTH SQL_CODE_YEAR_TO_MONTH - //#define SQL_DAY_TO_HOUR SQL_CODE_DAY_TO_HOUR - //#define SQL_DAY_TO_MINUTE SQL_CODE_DAY_TO_MINUTE - //#define SQL_DAY_TO_SECOND SQL_CODE_DAY_TO_SECOND - //#define SQL_HOUR_TO_MINUTE SQL_CODE_HOUR_TO_MINUTE - //#define SQL_HOUR_TO_SECOND SQL_CODE_HOUR_TO_SECOND - //#define SQL_MINUTE_TO_SECOND SQL_CODE_MINUTE_TO_SECOND - //#endif /* ODBC_STD */ -}//#endif /* ODBCVER >= 0x0350 */ - -//static if (ODBCVER >= 0x0351) { -const SQL_ATTR_ANSI_APP=115; -const SQL_AA_TRUE=1L; -const SQL_AA_FALSE=0L; -//}//[Yes] #endif - -const TRACE_VERSION=1000; -const TRACE_ON=1; - -const char [] SQL_ODBC_KEYWORDS = - "ABSOLUTE, ACTION, ADA, ADD, ALL, ALLOCATE, ALTER, AND, ANY, ARE, AS, " - ~ "ASC, ASSERTION, AT, AUTHORIZATION, AVG, " - ~ "BEGIN, BETWEEN, BIT, BIT_LENGTH, BOTH, BY, CASCADE, CASCADED, CASE, CAST, CATALOG, " - ~ "CHAR, CHAR_LENGTH, CHARACTER, CHARACTER_LENGTH, CHECK, CLOSE, COALESCE, " - ~ "COLLATE, COLLATION, COLUMN, COMMIT, CONNECT, CONNECTION, CONSTRAINT, " - ~ "CONSTRAINTS, CONTINUE, CONVERT, CORRESPONDING, COUNT, CREATE, CROSS, CURRENT, " - ~ "CURRENT_DATE, CURRENT_TIME, CURRENT_TIMESTAMP, CURRENT_USER, CURSOR, " - ~ "DATE, DAY, DEALLOCATE, DEC, DECIMAL, DECLARE, DEFAULT, DEFERRABLE, " - ~ "DEFERRED, DELETE, DESC, DESCRIBE, DESCRIPTOR, DIAGNOSTICS, DISCONNECT, " - ~ "DISTINCT, DOMAIN, DOUBLE, DROP, " - ~ "ELSE, END, END-EXEC, ESCAPE, EXCEPT, EXCEPTION, EXEC, EXECUTE, " - ~ "EXISTS, EXTERNAL, EXTRACT, " - ~ "FALSE, FETCH, FIRST, FLOAT, FOR, FOREIGN, FORTRAN, FOUND, FROM, FULL, " - ~ "GET, GLOBAL, GO, GOTO, GRANT, GROUP, HAVING, HOUR, " - ~ "IDENTITY, IMMEDIATE, IN, INCLUDE, INDEX, INDICATOR, INITIALLY, INNER, " - ~ "INPUT, INSENSITIVE, INSERT, INT, INTEGER, INTERSECT, INTERVAL, INTO, IS, ISOLATION, " - ~ "JOIN, KEY, LANGUAGE, LAST, LEADING, LEFT, LEVEL, LIKE, LOCAL, LOWER, " - ~ "MATCH, MAX, MIN, MINUTE, MODULE, MONTH, " - ~ "NAMES, NATIONAL, NATURAL, NCHAR, NEXT, NO, NONE, NOT, NULL, NULLIF, NUMERIC, " - ~ "OCTET_LENGTH, OF, ON, ONLY, OPEN, OPTION, OR, ORDER, OUTER, OUTPUT, OVERLAPS, " - ~ "PAD, PARTIAL, PASCAL, PLI, POSITION, PRECISION, PREPARE, PRESERVE, " - ~ "PRIMARY, PRIOR, PRIVILEGES, PROCEDURE, PUBLIC, " - ~ "READ, REAL, REFERENCES, RELATIVE, RESTRICT, REVOKE, RIGHT, ROLLBACK, ROWS" - ~ "SCHEMA, SCROLL, SECOND, SECTION, SELECT, SESSION, SESSION_USER, SET, SIZE, " - ~ "SMALLINT, SOME, SPACE, SQL, SQLCA, SQLCODE, SQLERROR, SQLSTATE, SQLWARNING, " - ~ "SUBSTRING, SUM, SYSTEM_USER, " - ~ "TABLE, TEMPORARY, THEN, TIME, TIMESTAMP, TIMEZONE_HOUR, TIMEZONE_MINUTE, " - ~ "TO, TRAILING, TRANSACTION, TRANSLATE, TRANSLATION, TRIM, TRUE, " - ~ "UNION, UNIQUE, UNKNOWN, UPDATE, UPPER, USAGE, USER, USING, " - ~ "VALUE, VALUES, VARCHAR, VARYING, VIEW, WHEN, WHENEVER, WHERE, WITH, WORK, WRITE, " - ~ "YEAR, ZONE"; -extern (Windows) { - SQLRETURN SQLDriverConnect(SQLHDBC, SQLHWND, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLUSMALLINT); - SQLRETURN SQLBrowseConnect(SQLHDBC, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLColumnPrivileges(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLColAttributes(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLLEN*); - SQLRETURN SQLDescribeParam(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLExtendedFetch(SQLHSTMT, SQLUSMALLINT, SQLINTEGER, SQLUINTEGER*, SQLUSMALLINT*); - SQLRETURN SQLForeignKeys(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLMoreResults(SQLHSTMT); - SQLRETURN SQLNativeSql(SQLHDBC, SQLCHAR*, SQLINTEGER, SQLCHAR*, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLNumParams(SQLHSTMT, SQLSMALLINT*); - SQLRETURN SQLParamOptions(SQLHSTMT, SQLUINTEGER, SQLUINTEGER*); - SQLRETURN SQLPrimaryKeys(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLProcedureColumns(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLProcedures(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLSetPos(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLTablePrivileges(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLDrivers(SQLHENV, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLBindParameter(SQLHSTMT, SQLUSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLSMALLINT, SQLULEN, SQLSMALLINT, SQLPOINTER, SQLLEN, SQLLEN*); - SQLRETURN SQLSetScrollOptions(SQLHSTMT, SQLUSMALLINT, SQLLEN, SQLUSMALLINT);/* deprecated */ - DWORD ODBCGetTryWaitValue(); - BOOL ODBCSetTryWaitValue(DWORD); - RETCODE TraceOpenLogFile(LPWSTR, LPWSTR, DWORD); - RETCODE TraceCloseLogFile(); - VOID TraceReturn(RETCODE, RETCODE); - DWORD TraceVersion(); - //static if (ODBCVER >= 0x0300) { - SQLRETURN SQLBulkOperations(SQLHSTMT, SQLSMALLINT); - SQLRETURN SQLAllocHandleStd( SQLSMALLINT, SQLHANDLE, SQLHANDLE*); - //} -} diff --git a/3rdparty-extra/win32/sqltypes.d b/3rdparty-extra/win32/sqltypes.d deleted file mode 100644 index 1f120ebe3..000000000 --- a/3rdparty-extra/win32/sqltypes.d +++ /dev/null @@ -1,143 +0,0 @@ -/***********************************************************************\ -* sqltypes.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.sqltypes; -version(Windows): - -/* Conversion notes: - It's assumed that ODBC >= 0x0300. -*/ - -private import win32.windef; -private import win32.basetyps; // for GUID - -alias byte SCHAR, SQLSCHAR; -alias int SDWORD, SLONG, SQLINTEGER; -alias short SWORD, SSHORT, RETCODE, SQLSMALLINT; -alias ULONG UDWORD; -alias USHORT UWORD, SQLUSMALLINT; -alias double SDOUBLE, LDOUBLE; -alias float SFLOAT; -alias PVOID PTR, HENV, HDBC, HSTMT, SQLPOINTER; -alias UCHAR SQLCHAR; -// #ifndef _WIN64 -alias UDWORD SQLUINTEGER; -// #endif - -//static if (ODBCVER >= 0x0300) { -alias TypeDef!(HANDLE) SQLHANDLE; -alias SQLHANDLE SQLHENV, SQLHDBC, SQLHSTMT, SQLHDESC; -/* -} else { -alias void* SQLHENV; -alias void* SQLHDBC; -alias void* SQLHSTMT; -} -*/ -alias SQLSMALLINT SQLRETURN; -alias HWND SQLHWND; -alias ULONG BOOKMARK; - -alias SQLINTEGER SQLLEN, SQLROWOFFSET; -alias SQLUINTEGER SQLROWCOUNT, SQLULEN; -alias DWORD SQLTRANSID; -alias SQLUSMALLINT SQLSETPOSIROW; -alias wchar SQLWCHAR; - -version(Unicode) { - alias SQLWCHAR SQLTCHAR; -} else { - alias SQLCHAR SQLTCHAR; -} -//static if (ODBCVER >= 0x0300) { -alias ubyte SQLDATE, SQLDECIMAL; -alias double SQLDOUBLE, SQLFLOAT; -alias ubyte SQLNUMERIC; -alias float SQLREAL; -alias ubyte SQLTIME, SQLTIMESTAMP, SQLVARCHAR; -alias long ODBCINT64, SQLBIGINT; -alias ulong SQLUBIGINT; -//} - -struct DATE_STRUCT { - SQLSMALLINT year; - SQLUSMALLINT month; - SQLUSMALLINT day; -} - -struct TIME_STRUCT { - SQLUSMALLINT hour; - SQLUSMALLINT minute; - SQLUSMALLINT second; -} - -struct TIMESTAMP_STRUCT { - SQLSMALLINT year; - SQLUSMALLINT month; - SQLUSMALLINT day; - SQLUSMALLINT hour; - SQLUSMALLINT minute; - SQLUSMALLINT second; - SQLUINTEGER fraction; -} - -//static if (ODBCVER >= 0x0300) { -alias DATE_STRUCT SQL_DATE_STRUCT; -alias TIME_STRUCT SQL_TIME_STRUCT; -alias TIMESTAMP_STRUCT SQL_TIMESTAMP_STRUCT; - -enum SQLINTERVAL { - SQL_IS_YEAR = 1, - SQL_IS_MONTH, - SQL_IS_DAY, - SQL_IS_HOUR, - SQL_IS_MINUTE, - SQL_IS_SECOND, - SQL_IS_YEAR_TO_MONTH, - SQL_IS_DAY_TO_HOUR, - SQL_IS_DAY_TO_MINUTE, - SQL_IS_DAY_TO_SECOND, - SQL_IS_HOUR_TO_MINUTE, - SQL_IS_HOUR_TO_SECOND, - SQL_IS_MINUTE_TO_SECOND -} - -struct SQL_YEAR_MONTH_STRUCT { - SQLUINTEGER year; - SQLUINTEGER month; -} - -struct SQL_DAY_SECOND_STRUCT { - SQLUINTEGER day; - SQLUINTEGER hour; - SQLUINTEGER minute; - SQLUINTEGER second; - SQLUINTEGER fraction; -} - -struct SQL_INTERVAL_STRUCT { - SQLINTERVAL interval_type; - SQLSMALLINT interval_sign; - union _intval { - SQL_YEAR_MONTH_STRUCT year_month; - SQL_DAY_SECOND_STRUCT day_second; - } - _intval intval; -} - -const SQL_MAX_NUMERIC_LEN = 16; - -struct SQL_NUMERIC_STRUCT { - SQLCHAR precision; - SQLSCHAR scale; - SQLCHAR sign; - SQLCHAR[SQL_MAX_NUMERIC_LEN] val; -} -// } ODBCVER >= 0x0300 -alias GUID SQLGUID; diff --git a/3rdparty-extra/win32/sqlucode.d b/3rdparty-extra/win32/sqlucode.d deleted file mode 100644 index c6b627764..000000000 --- a/3rdparty-extra/win32/sqlucode.d +++ /dev/null @@ -1,157 +0,0 @@ -/***********************************************************************\ -* sqlucode.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.sqlucode; -version(Windows): - -private import win32.sqlext; - -const SQL_WCHAR = -8; -const SQL_WVARCHAR = -9; -const SQL_WLONGVARCHAR = -10; -const SQL_C_WCHAR = SQL_WCHAR; - -const SQL_SQLSTATE_SIZEW = 10; -version(Unicode) { - const SQL_C_TCHAR = SQL_C_WCHAR; -} else { - const SQL_C_TCHAR = SQL_C_CHAR; -} - -// Moved from sqlext -static if (ODBCVER <= 0x0300) { - const SQL_UNICODE = -95; - const SQL_UNICODE_VARCHAR = -96; - const SQL_UNICODE_LONGVARCHAR = -97; - const SQL_UNICODE_CHAR = SQL_UNICODE; -} else { - const SQL_UNICODE = SQL_WCHAR; - const SQL_UNICODE_VARCHAR = SQL_WVARCHAR; - const SQL_UNICODE_LONGVARCHAR = SQL_WLONGVARCHAR; - const SQL_UNICODE_CHAR = SQL_WCHAR; -} - -extern (Windows) { - SQLRETURN SQLBrowseConnectA(SQLHDBC, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLBrowseConnectW(SQLHDBC, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLColAttributeA(SQLHSTMT, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLPOINTER); - SQLRETURN SQLColAttributeW(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLPOINTER); - SQLRETURN SQLColAttributesA(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLLEN*); - SQLRETURN SQLColAttributesW(SQLHSTMT, SQLUSMALLINT, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*, SQLLEN*); - SQLRETURN SQLColumnPrivilegesA( SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT , SQLCHAR*, SQLSMALLINT ); - SQLRETURN SQLColumnPrivilegesW( SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT ); - SQLRETURN SQLColumnsA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT , SQLCHAR*, SQLSMALLINT ); - SQLRETURN SQLColumnsW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT , SQLWCHAR*, SQLSMALLINT ); - SQLRETURN SQLConnectA(SQLHDBC, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLConnectW(SQLHDBC, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT); - SQLRETURN SQLDataSourcesA(SQLHENV, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLDataSourcesW(SQLHENV, SQLUSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLDescribeColA(SQLHSTMT, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLDescribeColW(SQLHSTMT, SQLUSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLULEN*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLDriverConnectA(SQLHDBC, SQLHWND, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLUSMALLINT); - SQLRETURN SQLDriverConnectW(SQLHDBC, SQLHWND, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLUSMALLINT); - SQLRETURN SQLDriversA(SQLHENV, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLDriversW(SQLHENV, SQLUSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLErrorA(SQLHENV, SQLHDBC, SQLHSTMT, SQLCHAR*, SQLINTEGER*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLErrorW(SQLHENV, SQLHDBC, SQLHSTMT, SQLWCHAR*, SQLINTEGER*, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLExecDirectA(SQLHSTMT, SQLCHAR*, SQLINTEGER); - SQLRETURN SQLExecDirectW(SQLHSTMT, SQLWCHAR*, SQLINTEGER); - SQLRETURN SQLForeignKeysA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLForeignKeysW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT); - SQLRETURN SQLGetConnectAttrA(SQLHDBC, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetConnectAttrW(SQLHDBC, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetConnectOptionA(SQLHDBC, SQLUSMALLINT, SQLPOINTER); - SQLRETURN SQLGetConnectOptionW(SQLHDBC, SQLUSMALLINT, SQLPOINTER); - SQLRETURN SQLGetCursorNameA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetCursorNameW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetInfoA(SQLHDBC, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetInfoW(SQLHDBC, SQLUSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetTypeInfoA(SQLHSTMT, SQLSMALLINT); - SQLRETURN SQLGetTypeInfoW(SQLHSTMT, SQLSMALLINT); - SQLRETURN SQLNativeSqlA(SQLHDBC, SQLCHAR*, SQLINTEGER, SQLCHAR*, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLNativeSqlW(SQLHDBC, SQLWCHAR*, SQLINTEGER, SQLWCHAR*, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLPrepareA(SQLHSTMT, SQLCHAR*, SQLINTEGER); - SQLRETURN SQLPrepareW(SQLHSTMT, SQLWCHAR*, SQLINTEGER); - SQLRETURN SQLPrimaryKeysA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT ); - SQLRETURN SQLPrimaryKeysW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT); - SQLRETURN SQLProcedureColumnsA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLProcedureColumnsW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT); - SQLRETURN SQLProceduresA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLProceduresW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT); - SQLRETURN SQLSetConnectAttrA(SQLHDBC, SQLINTEGER, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetConnectAttrW(SQLHDBC, SQLINTEGER, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetConnectOptionA(SQLHDBC, SQLUSMALLINT, SQLULEN); - SQLRETURN SQLSetConnectOptionW(SQLHDBC, SQLUSMALLINT, SQLULEN); - SQLRETURN SQLSetCursorNameA(SQLHSTMT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLSetCursorNameW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT); - SQLRETURN SQLSpecialColumnsA(SQLHSTMT, SQLUSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT , SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLSpecialColumnsW(SQLHSTMT, SQLUSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT , SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLStatisticsA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT , SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLStatisticsW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT , SQLUSMALLINT, SQLUSMALLINT); - SQLRETURN SQLTablePrivilegesA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLTablePrivilegesW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT ); - SQLRETURN SQLTablesA(SQLHSTMT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLCHAR*, SQLSMALLINT); - SQLRETURN SQLTablesW(SQLHSTMT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT); - static if (ODBCVER >= 0x0300) { - SQLRETURN SQLGetDescFieldA(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetDescFieldW(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLSetDescFieldA(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetDescFieldW(SQLHDESC, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLGetDescRecA(SQLHDESC, SQLSMALLINT, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLSMALLINT*, SQLLEN*, SQLSMALLINT*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLGetDescRecW(SQLHDESC, SQLSMALLINT, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*, SQLSMALLINT*, SQLSMALLINT*, SQLLEN*, SQLSMALLINT*, SQLSMALLINT*, SQLSMALLINT*); - SQLRETURN SQLGetDiagFieldA(SQLSMALLINT, SQLHANDLE, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetDiagFieldW(SQLSMALLINT, SQLHANDLE, SQLSMALLINT, SQLSMALLINT, SQLPOINTER, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetDiagRecA(SQLSMALLINT, SQLHANDLE, SQLSMALLINT, SQLCHAR*, SQLINTEGER*, SQLCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetDiagRecW(SQLSMALLINT, SQLHANDLE, SQLSMALLINT, SQLWCHAR*, SQLINTEGER*, SQLWCHAR*, SQLSMALLINT, SQLSMALLINT*); - SQLRETURN SQLGetStmtAttrA(SQLHSTMT, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLGetStmtAttrW(SQLHSTMT, SQLINTEGER, SQLPOINTER, SQLINTEGER, SQLINTEGER*); - SQLRETURN SQLSetStmtAttrA(SQLHSTMT, SQLINTEGER, SQLPOINTER, SQLINTEGER); - SQLRETURN SQLSetStmtAttrW(SQLHSTMT, SQLINTEGER, SQLPOINTER, SQLINTEGER); - } // #endif /* (ODBCVER >= 0x0300) */ -} - -version (Unicode) { - alias SQLBrowseConnectW SQLBrowseConnect; - alias SQLColAttributeW SQLColAttribute; - alias SQLColAttributesW SQLColAttributes; - alias SQLColumnPrivilegesW SQLColumnPrivileges; - alias SQLColumnsW SQLColumns; - alias SQLConnectW SQLConnect; - alias SQLDataSourcesW SQLDataSources; - alias SQLDescribeColW SQLDescribeCol; - alias SQLDriverConnectW SQLDriverConnect; - alias SQLDriversW SQLDrivers; - alias SQLErrorW SQLError; - alias SQLExecDirectW SQLExecDirect; - alias SQLForeignKeysW SQLForeignKeys; - alias SQLGetConnectAttrW SQLGetConnectAttr; - alias SQLGetConnectOptionW SQLGetConnectOption; - alias SQLGetCursorNameW SQLGetCursorName; - alias SQLGetDescFieldW SQLGetDescField; - alias SQLGetDescRecW SQLGetDescRec; - alias SQLGetDiagFieldW SQLGetDiagField; - alias SQLGetDiagRecW SQLGetDiagRec; - alias SQLGetInfoW SQLGetInfo; - alias SQLGetStmtAttrW SQLGetStmtAttr; - alias SQLGetTypeInfoW SQLGetTypeInfo; - alias SQLNativeSqlW SQLNativeSql; - alias SQLPrepareW SQLPrepare; - alias SQLPrimaryKeysW SQLPrimaryKeys; - alias SQLProcedureColumnsW SQLProcedureColumns; - alias SQLProceduresW SQLProcedures; - alias SQLSetConnectAttrW SQLSetConnectAttr; - alias SQLSetConnectOptionW SQLSetConnectOption; - alias SQLSetCursorNameW SQLSetCursorName; - alias SQLSetDescFieldW SQLSetDescField; - alias SQLSetStmtAttrW SQLSetStmtAttr; - alias SQLSpecialColumnsW SQLSpecialColumns; - alias SQLStatisticsW SQLStatistics; - alias SQLTablePrivilegesW SQLTablePrivileges; - alias SQLTablesW SQLTables; -} diff --git a/3rdparty-extra/win32/sspi.d b/3rdparty-extra/win32/sspi.d deleted file mode 100644 index d7ce3a2b7..000000000 --- a/3rdparty-extra/win32/sspi.d +++ /dev/null @@ -1,381 +0,0 @@ -/***********************************************************************\ -* sspi.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Ellery Newcomer * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.sspi; -version(Windows): - -import win32.windef; -import win32.ntdef; -import win32.w32api; -import win32.security; -import win32.ntsecapi; -import win32.subauth; - -enum :ULONG{ - SECPKG_CRED_INBOUND = 1, - SECPKG_CRED_OUTBOUND = 2, - SECPKG_CRED_BOTH = (SECPKG_CRED_OUTBOUND|SECPKG_CRED_INBOUND), - SECPKG_CRED_ATTR_NAMES = 1, -} - -enum :ULONG{ - SECPKG_FLAG_INTEGRITY = 1, - SECPKG_FLAG_PRIVACY = 2, - SECPKG_FLAG_TOKEN_ONLY = 4, - SECPKG_FLAG_DATAGRAM = 8, - SECPKG_FLAG_CONNECTION = 16, - SECPKG_FLAG_MULTI_REQUIRED = 32, - SECPKG_FLAG_CLIENT_ONLY = 64, - SECPKG_FLAG_EXTENDED_ERROR = 128, - SECPKG_FLAG_IMPERSONATION = 256, - SECPKG_FLAG_ACCEPT_WIN32_NAME = 512, - SECPKG_FLAG_STREAM = 1024, -} - -enum :ULONG{ - SECPKG_ATTR_AUTHORITY = 6, - SECPKG_ATTR_CONNECTION_INFO = 90, - SECPKG_ATTR_ISSUER_LIST = 80, - SECPKG_ATTR_ISSUER_LIST_EX = 89, - SECPKG_ATTR_KEY_INFO = 5, - SECPKG_ATTR_LIFESPAN = 2, - SECPKG_ATTR_LOCAL_CERT_CONTEXT = 84, - SECPKG_ATTR_LOCAL_CRED = 82, - SECPKG_ATTR_NAMES = 1, - SECPKG_ATTR_PROTO_INFO = 7, - SECPKG_ATTR_REMOTE_CERT_CONTEXT = 83, - SECPKG_ATTR_REMOTE_CRED = 81, - SECPKG_ATTR_SIZES = 0, - SECPKG_ATTR_STREAM_SIZES = 4, -} - -enum :ULONG{ - SECBUFFER_EMPTY = 0, - SECBUFFER_DATA = 1, - SECBUFFER_TOKEN = 2, - SECBUFFER_PKG_PARAMS = 3, - SECBUFFER_MISSING = 4, - SECBUFFER_EXTRA = 5, - SECBUFFER_STREAM_TRAILER = 6, - SECBUFFER_STREAM_HEADER = 7, - SECBUFFER_PADDING = 9, - SECBUFFER_STREAM = 10, - SECBUFFER_READONLY = 0x80000000, - SECBUFFER_ATTRMASK = 0xf0000000, -} - -enum UNISP_NAME_A = "Microsoft Unified Security Protocol Provider"; -enum UNISP_NAME_W = "Microsoft Unified Security Protocol Provider"w; -enum SECBUFFER_VERSION = 0; - -alias UNICODE_STRING SECURITY_STRING; -alias UNICODE_STRING* PSECURITY_STRING; - -extern(Windows): - -struct SecHandle { - ULONG_PTR dwLower; - ULONG_PTR dwUpper; -} -alias SecHandle* PSecHandle; -struct SecBuffer { - ULONG cbBuffer; - ULONG BufferType; - PVOID pvBuffer; -} -alias SecBuffer* PSecBuffer; -alias SecHandle CredHandle; -alias PSecHandle PCredHandle; -alias SecHandle CtxtHandle; -alias PSecHandle PCtxtHandle; -struct SECURITY_INTEGER { - uint LowPart; - int HighPart; -} -alias SECURITY_INTEGER TimeStamp; -alias SECURITY_INTEGER* PTimeStamp; -struct SecBufferDesc { - ULONG ulVersion; - ULONG cBuffers; - PSecBuffer pBuffers; -} -alias SecBufferDesc* PSecBufferDesc; -struct SecPkgContext_StreamSizes { - ULONG cbHeader; - ULONG cbTrailer; - ULONG cbMaximumMessage; - ULONG cBuffers; - ULONG cbBlockSize; -} -alias SecPkgContext_StreamSizes* PSecPkgContext_StreamSizes; -struct SecPkgContext_Sizes { - ULONG cbMaxToken; - ULONG cbMaxSignature; - ULONG cbBlockSize; - ULONG cbSecurityTrailer; -} -alias SecPkgContext_Sizes* PSecPkgContext_Sizes; -struct SecPkgContext_AuthorityW { - SEC_WCHAR* sAuthorityName; -} -alias SecPkgContext_AuthorityW* PSecPkgContext_AuthorityW; -struct SecPkgContext_AuthorityA { - SEC_CHAR* sAuthorityName; -} -alias SecPkgContext_AuthorityA* PSecPkgContext_AuthorityA; -struct SecPkgContext_KeyInfoW { - SEC_WCHAR* sSignatureAlgorithmName; - SEC_WCHAR* sEncryptAlgorithmName; - ULONG KeySize; - ULONG SignatureAlgorithm; - ULONG EncryptAlgorithm; -} -alias SecPkgContext_KeyInfoW* PSecPkgContext_KeyInfoW; -struct SecPkgContext_KeyInfoA { - SEC_CHAR* sSignatureAlgorithmName; - SEC_CHAR* sEncryptAlgorithmName; - ULONG KeySize; - ULONG SignatureAlgorithm; - ULONG EncryptAlgorithm; -} -alias SecPkgContext_KeyInfoA* PSecPkgContext_KeyInfoA; -struct SecPkgContext_LifeSpan { - TimeStamp tsStart; - TimeStamp tsExpiry; -} -alias SecPkgContext_LifeSpan* PSecPkgContext_LifeSpan; -struct SecPkgContext_NamesW { - SEC_WCHAR* sUserName; -} -alias SecPkgContext_NamesW* PSecPkgContext_NamesW; -struct SecPkgContext_NamesA { - SEC_CHAR* sUserName; -} -alias SecPkgContext_NamesA* PSecPkgContext_NamesA; -struct SecPkgInfoW { - ULONG fCapabilities; - USHORT wVersion; - USHORT wRPCID; - ULONG cbMaxToken; - SEC_WCHAR* Name; - SEC_WCHAR* Comment; -} -alias SecPkgInfoW* PSecPkgInfoW; -struct SecPkgInfoA { - ULONG fCapabilities; - USHORT wVersion; - USHORT wRPCID; - ULONG cbMaxToken; - SEC_CHAR* Name; - SEC_CHAR* Comment; -} -alias SecPkgInfoA* PSecPkgInfoA; -/* supported only in win2k+, so it should be a PSecPkgInfoW */ -/* PSDK does not say it has ANSI/Unicode versions */ -struct SecPkgContext_PackageInfo { - PSecPkgInfoW PackageInfo; -} -alias SecPkgContext_PackageInfo* PSecPkgContext_PackageInfo; -struct SecPkgCredentials_NamesW { - SEC_WCHAR* sUserName; -} -alias SecPkgCredentials_NamesW* PSecPkgCredentials_NamesW; -struct SecPkgCredentials_NamesA { - SEC_CHAR* sUserName; -} -alias SecPkgCredentials_NamesA* PSecPkgCredentials_NamesA; - -/* TODO: missing type in SDK */ -alias void function() SEC_GET_KEY_FN; - -alias SECURITY_STATUS function(PULONG,PSecPkgInfoW*) ENUMERATE_SECURITY_PACKAGES_FN_W; -alias SECURITY_STATUS function(PULONG,PSecPkgInfoA*) ENUMERATE_SECURITY_PACKAGES_FN_A; -alias SECURITY_STATUS function(PCredHandle,ULONG,PVOID) QUERY_CREDENTIALS_ATTRIBUTES_FN_W; -alias SECURITY_STATUS function(PCredHandle,ULONG,PVOID) QUERY_CREDENTIALS_ATTRIBUTES_FN_A; -alias SECURITY_STATUS function(SEC_WCHAR*,SEC_WCHAR*,ULONG,PLUID,PVOID,SEC_GET_KEY_FN,PVOID,PCredHandle,PTimeStamp) ACQUIRE_CREDENTIALS_HANDLE_FN_W; -alias SECURITY_STATUS function(SEC_CHAR*,SEC_CHAR*,ULONG,PLUID,PVOID,SEC_GET_KEY_FN,PVOID,PCredHandle,PTimeStamp) ACQUIRE_CREDENTIALS_HANDLE_FN_A; -alias SECURITY_STATUS function(PCredHandle) FREE_CREDENTIALS_HANDLE_FN; -alias SECURITY_STATUS function(PCredHandle,PCtxtHandle,SEC_WCHAR*,ULONG,ULONG,ULONG,PSecBufferDesc,ULONG,PCtxtHandle,PSecBufferDesc,PULONG,PTimeStamp) INITIALIZE_SECURITY_CONTEXT_FN_W; -alias SECURITY_STATUS function(PCredHandle,PCtxtHandle,SEC_CHAR*,ULONG,ULONG,ULONG,PSecBufferDesc,ULONG,PCtxtHandle,PSecBufferDesc,PULONG,PTimeStamp) INITIALIZE_SECURITY_CONTEXT_FN_A; -alias SECURITY_STATUS function(PCredHandle,PCtxtHandle,PSecBufferDesc,ULONG,ULONG,PCtxtHandle,PSecBufferDesc,PULONG,PTimeStamp) ACCEPT_SECURITY_CONTEXT_FN; -alias SECURITY_STATUS function(PCtxtHandle,PSecBufferDesc) COMPLETE_AUTH_TOKEN_FN; -alias SECURITY_STATUS function(PCtxtHandle) DELETE_SECURITY_CONTEXT_FN; -alias SECURITY_STATUS function(PCtxtHandle,PSecBufferDesc) APPLY_CONTROL_TOKEN_FN_W; -alias SECURITY_STATUS function(PCtxtHandle,PSecBufferDesc) APPLY_CONTROL_TOKEN_FN_A; -alias SECURITY_STATUS function(PCtxtHandle,ULONG,PVOID) QUERY_CONTEXT_ATTRIBUTES_FN_A; -alias SECURITY_STATUS function(PCtxtHandle,ULONG,PVOID) QUERY_CONTEXT_ATTRIBUTES_FN_W; -alias SECURITY_STATUS function(PCtxtHandle) IMPERSONATE_SECURITY_CONTEXT_FN; -alias SECURITY_STATUS function(PCtxtHandle) REVERT_SECURITY_CONTEXT_FN; -alias SECURITY_STATUS function(PCtxtHandle,ULONG,PSecBufferDesc,ULONG) MAKE_SIGNATURE_FN; -alias SECURITY_STATUS function(PCtxtHandle,PSecBufferDesc,ULONG,PULONG) VERIFY_SIGNATURE_FN; -alias SECURITY_STATUS function(PVOID) FREE_CONTEXT_BUFFER_FN; -alias SECURITY_STATUS function(SEC_CHAR*,PSecPkgInfoA*) QUERY_SECURITY_PACKAGE_INFO_FN_A; -alias SECURITY_STATUS function(PCtxtHandle,HANDLE*) QUERY_SECURITY_CONTEXT_TOKEN_FN; -alias SECURITY_STATUS function(SEC_WCHAR*,PSecPkgInfoW*) QUERY_SECURITY_PACKAGE_INFO_FN_W; -alias SECURITY_STATUS function(PCtxtHandle,ULONG,PSecBufferDesc,ULONG) ENCRYPT_MESSAGE_FN; -alias SECURITY_STATUS function(PCtxtHandle,PSecBufferDesc,ULONG,PULONG) DECRYPT_MESSAGE_FN; - -/* No, it really is FreeCredentialsHandle, see the thread beginning - * http://sourceforge.net/mailarchive/message.php?msg_id=4321080 for a - * discovery discussion. */ -struct SecurityFunctionTableW{ - uint dwVersion; - ENUMERATE_SECURITY_PACKAGES_FN_W EnumerateSecurityPackagesW; - QUERY_CREDENTIALS_ATTRIBUTES_FN_W QueryCredentialsAttributesW; - ACQUIRE_CREDENTIALS_HANDLE_FN_W AcquireCredentialsHandleW; - FREE_CREDENTIALS_HANDLE_FN FreeCredentialsHandle; - void* Reserved2; - INITIALIZE_SECURITY_CONTEXT_FN_W InitializeSecurityContextW; - ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext; - COMPLETE_AUTH_TOKEN_FN CompleteAuthToken; - DELETE_SECURITY_CONTEXT_FN DeleteSecurityContext; - APPLY_CONTROL_TOKEN_FN_W ApplyControlTokenW; - QUERY_CONTEXT_ATTRIBUTES_FN_W QueryContextAttributesW; - IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext; - REVERT_SECURITY_CONTEXT_FN RevertSecurityContext; - MAKE_SIGNATURE_FN MakeSignature; - VERIFY_SIGNATURE_FN VerifySignature; - FREE_CONTEXT_BUFFER_FN FreeContextBuffer; - QUERY_SECURITY_PACKAGE_INFO_FN_W QuerySecurityPackageInfoW; - void* Reserved3; - void* Reserved4; - void* Reserved5; - void* Reserved6; - void* Reserved7; - void* Reserved8; - QUERY_SECURITY_CONTEXT_TOKEN_FN QuerySecurityContextToken; - ENCRYPT_MESSAGE_FN EncryptMessage; - DECRYPT_MESSAGE_FN DecryptMessage; -} -alias SecurityFunctionTableW* PSecurityFunctionTableW; -struct SecurityFunctionTableA{ - uint dwVersion; - ENUMERATE_SECURITY_PACKAGES_FN_A EnumerateSecurityPackagesA; - QUERY_CREDENTIALS_ATTRIBUTES_FN_A QueryCredentialsAttributesA; - ACQUIRE_CREDENTIALS_HANDLE_FN_A AcquireCredentialsHandleA; - FREE_CREDENTIALS_HANDLE_FN FreeCredentialsHandle; - void* Reserved2; - INITIALIZE_SECURITY_CONTEXT_FN_A InitializeSecurityContextA; - ACCEPT_SECURITY_CONTEXT_FN AcceptSecurityContext; - COMPLETE_AUTH_TOKEN_FN CompleteAuthToken; - DELETE_SECURITY_CONTEXT_FN DeleteSecurityContext; - APPLY_CONTROL_TOKEN_FN_A ApplyControlTokenA; - QUERY_CONTEXT_ATTRIBUTES_FN_A QueryContextAttributesA; - IMPERSONATE_SECURITY_CONTEXT_FN ImpersonateSecurityContext; - REVERT_SECURITY_CONTEXT_FN RevertSecurityContext; - MAKE_SIGNATURE_FN MakeSignature; - VERIFY_SIGNATURE_FN VerifySignature; - FREE_CONTEXT_BUFFER_FN FreeContextBuffer; - QUERY_SECURITY_PACKAGE_INFO_FN_A QuerySecurityPackageInfoA; - void* Reserved3; - void* Reserved4; - void* Unknown1; - void* Unknown2; - void* Unknown3; - void* Unknown4; - void* Unknown5; - ENCRYPT_MESSAGE_FN EncryptMessage; - DECRYPT_MESSAGE_FN DecryptMessage; -} -alias SecurityFunctionTableA* PSecurityFunctionTableA; -alias PSecurityFunctionTableA function() INIT_SECURITY_INTERFACE_A; -alias PSecurityFunctionTableW function() INIT_SECURITY_INTERFACE_W; - -SECURITY_STATUS FreeCredentialsHandle(PCredHandle); -SECURITY_STATUS EnumerateSecurityPackagesA(PULONG,PSecPkgInfoA*); -SECURITY_STATUS EnumerateSecurityPackagesW(PULONG,PSecPkgInfoW*); -SECURITY_STATUS AcquireCredentialsHandleA(SEC_CHAR*,SEC_CHAR*,ULONG,PLUID,PVOID,SEC_GET_KEY_FN,PVOID,PCredHandle,PTimeStamp); -SECURITY_STATUS AcquireCredentialsHandleW(SEC_WCHAR*,SEC_WCHAR*,ULONG,PLUID,PVOID,SEC_GET_KEY_FN,PVOID,PCredHandle,PTimeStamp); -SECURITY_STATUS AcceptSecurityContext(PCredHandle,PCtxtHandle,PSecBufferDesc,ULONG,ULONG,PCtxtHandle,PSecBufferDesc,PULONG,PTimeStamp); -SECURITY_STATUS InitializeSecurityContextA(PCredHandle,PCtxtHandle,SEC_CHAR*,ULONG,ULONG,ULONG,PSecBufferDesc,ULONG,PCtxtHandle,PSecBufferDesc,PULONG,PTimeStamp); -SECURITY_STATUS InitializeSecurityContextW(PCredHandle,PCtxtHandle,SEC_WCHAR*,ULONG,ULONG,ULONG,PSecBufferDesc,ULONG,PCtxtHandle,PSecBufferDesc,PULONG,PTimeStamp); -SECURITY_STATUS FreeContextBuffer(PVOID); -SECURITY_STATUS QueryContextAttributesA(PCtxtHandle,ULONG,PVOID); -SECURITY_STATUS QueryContextAttributesW(PCtxtHandle,ULONG,PVOID); -SECURITY_STATUS QueryCredentialsAttributesA(PCredHandle,ULONG,PVOID); -SECURITY_STATUS QueryCredentialsAttributesW(PCredHandle,ULONG,PVOID); -static if(_WIN32_WINNT >= 0x500){ - SECURITY_STATUS QuerySecurityContextToken(PCtxtHandle,HANDLE*); -} -SECURITY_STATUS DecryptMessage(PCtxtHandle,PSecBufferDesc,ULONG,PULONG); -SECURITY_STATUS EncryptMessage(PCtxtHandle,ULONG,PSecBufferDesc,ULONG); -SECURITY_STATUS DeleteSecurityContext(PCtxtHandle); -SECURITY_STATUS CompleteAuthToken(PCtxtHandle,PSecBufferDesc); -SECURITY_STATUS ApplyControlTokenA(PCtxtHandle,PSecBufferDesc); -SECURITY_STATUS ApplyControlTokenW(PCtxtHandle,PSecBufferDesc); -SECURITY_STATUS ImpersonateSecurityContext(PCtxtHandle); -SECURITY_STATUS RevertSecurityContext(PCtxtHandle); -SECURITY_STATUS MakeSignature(PCtxtHandle,ULONG,PSecBufferDesc,ULONG); -SECURITY_STATUS VerifySignature(PCtxtHandle,PSecBufferDesc,ULONG,PULONG); -SECURITY_STATUS QuerySecurityPackageInfoA(SEC_CHAR*,PSecPkgInfoA*); -SECURITY_STATUS QuerySecurityPackageInfoW(SEC_WCHAR*,PSecPkgInfoW*); -PSecurityFunctionTableA InitSecurityInterfaceA(); -PSecurityFunctionTableW InitSecurityInterfaceW(); - -version(Unicode) { - alias UNISP_NAME_W UNISP_NAME; - alias SecPkgInfoW SecPkgInfo; - alias PSecPkgInfoW PSecPkgInfo; - alias SecPkgCredentials_NamesW SecPkgCredentials_Names; - alias PSecPkgCredentials_NamesW PSecPkgCredentials_Names; - alias SecPkgContext_AuthorityW SecPkgContext_Authority; - alias PSecPkgContext_AuthorityW PSecPkgContext_Authority; - alias SecPkgContext_KeyInfoW SecPkgContext_KeyInfo; - alias PSecPkgContext_KeyInfoW PSecPkgContext_KeyInfo; - alias SecPkgContext_NamesW SecPkgContext_Names; - alias PSecPkgContext_NamesW PSecPkgContext_Names; - alias SecurityFunctionTableW SecurityFunctionTable; - alias PSecurityFunctionTableW PSecurityFunctionTable; - alias AcquireCredentialsHandleW AcquireCredentialsHandle; - alias EnumerateSecurityPackagesW EnumerateSecurityPackages; - alias InitializeSecurityContextW InitializeSecurityContext; - alias QueryContextAttributesW QueryContextAttributes; - alias QueryCredentialsAttributesW QueryCredentialsAttributes; - alias QuerySecurityPackageInfoW QuerySecurityPackageInfo; - alias ApplyControlTokenW ApplyControlToken; - alias ENUMERATE_SECURITY_PACKAGES_FN_W ENUMERATE_SECURITY_PACKAGES_FN; - alias QUERY_CREDENTIALS_ATTRIBUTES_FN_W QUERY_CREDENTIALS_ATTRIBUTES_FN; - alias ACQUIRE_CREDENTIALS_HANDLE_FN_W ACQUIRE_CREDENTIALS_HANDLE_FN; - alias INITIALIZE_SECURITY_CONTEXT_FN_W INITIALIZE_SECURITY_CONTEXT_FN; - alias APPLY_CONTROL_TOKEN_FN_W APPLY_CONTROL_TOKEN_FN; - alias QUERY_CONTEXT_ATTRIBUTES_FN_W QUERY_CONTEXT_ATTRIBUTES_FN; - alias QUERY_SECURITY_PACKAGE_INFO_FN_W QUERY_SECURITY_PACKAGE_INFO_FN; - alias INIT_SECURITY_INTERFACE_W INIT_SECURITY_INTERFACE; -}else{ - alias UNISP_NAME_A UNISP_NAME; - alias SecPkgInfoA SecPkgInfo; - alias PSecPkgInfoA PSecPkgInfo; - alias SecPkgCredentials_NamesA SecPkgCredentials_Names; - alias PSecPkgCredentials_NamesA PSecPkgCredentials_Names; - alias SecPkgContext_AuthorityA SecPkgContext_Authority; - alias PSecPkgContext_AuthorityA PSecPkgContext_Authority; - alias SecPkgContext_KeyInfoA SecPkgContext_KeyInfo; - alias PSecPkgContext_KeyInfoA PSecPkgContext_KeyInfo; - alias SecPkgContext_NamesA SecPkgContext_Names; - alias PSecPkgContext_NamesA PSecPkgContext_Names; - alias SecurityFunctionTableA SecurityFunctionTable; - alias PSecurityFunctionTableA PSecurityFunctionTable; - alias AcquireCredentialsHandleA AcquireCredentialsHandle; - alias EnumerateSecurityPackagesA EnumerateSecurityPackages; - alias InitializeSecurityContextA InitializeSecurityContext; - alias QueryContextAttributesA QueryContextAttributes; - alias QueryCredentialsAttributesA QueryCredentialsAttributes; - alias QuerySecurityPackageInfoA QuerySecurityPackageInfo; - alias ApplyControlTokenA ApplyControlToken; - alias ENUMERATE_SECURITY_PACKAGES_FN_A ENUMERATE_SECURITY_PACKAGES_FN; - alias QUERY_CREDENTIALS_ATTRIBUTES_FN_A QUERY_CREDENTIALS_ATTRIBUTES_FN; - alias ACQUIRE_CREDENTIALS_HANDLE_FN_A ACQUIRE_CREDENTIALS_HANDLE_FN; - alias INITIALIZE_SECURITY_CONTEXT_FN_A INITIALIZE_SECURITY_CONTEXT_FN; - alias APPLY_CONTROL_TOKEN_FN_A APPLY_CONTROL_TOKEN_FN; - alias QUERY_CONTEXT_ATTRIBUTES_FN_A QUERY_CONTEXT_ATTRIBUTES_FN; - alias QUERY_SECURITY_PACKAGE_INFO_FN_A QUERY_SECURITY_PACKAGE_INFO_FN; - alias INIT_SECURITY_INTERFACE_A INIT_SECURITY_INTERFACE; -} - diff --git a/3rdparty-extra/win32/subauth.d b/3rdparty-extra/win32/subauth.d deleted file mode 100644 index 9d27bb7e1..000000000 --- a/3rdparty-extra/win32/subauth.d +++ /dev/null @@ -1,276 +0,0 @@ -/***********************************************************************\ -* subauth.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.subauth; -version(Windows): - -private import win32.ntdef, win32.windef; - -/+ -alias LONG NTSTATUS; -alias NTSTATUS* PNTSTATUS; -+/ - -enum : ULONG { - MSV1_0_PASSTHRU = 1, - MSV1_0_GUEST_LOGON = 2 -} - -// USER_ALL_INFORMATION.WhichFields (Undocumented) -const ULONG - MSV1_0_VALIDATION_LOGOFF_TIME = 1, - MSV1_0_VALIDATION_KICKOFF_TIME = 2, - MSV1_0_VALIDATION_LOGON_SERVER = 4, - MSV1_0_VALIDATION_LOGON_DOMAIN = 8, - MSV1_0_VALIDATION_SESSION_KEY = 16, - MSV1_0_VALIDATION_USER_FLAGS = 32, - MSV1_0_VALIDATION_USER_ID = 64; - -// ?ActionsPerformed? (Undocumented) -const MSV1_0_SUBAUTH_ACCOUNT_DISABLED = 1; -const MSV1_0_SUBAUTH_PASSWORD = 2; -const MSV1_0_SUBAUTH_WORKSTATIONS = 4; -const MSV1_0_SUBAUTH_LOGON_HOURS = 8; -const MSV1_0_SUBAUTH_ACCOUNT_EXPIRY = 16; -const MSV1_0_SUBAUTH_PASSWORD_EXPIRY = 32; -const MSV1_0_SUBAUTH_ACCOUNT_TYPE = 64; -const MSV1_0_SUBAUTH_LOCKOUT = 128; - -const NEXT_FREE_ACCOUNT_CONTROL_BIT = 131072; - -const SAM_DAYS_PER_WEEK = 7; -const SAM_HOURS_PER_WEEK = 168; -const SAM_MINUTES_PER_WEEK = 10080; - -enum : NTSTATUS { - STATUS_SUCCESS = 0, - STATUS_INVALID_INFO_CLASS = 0xC0000003, - STATUS_NO_SUCH_USER = 0xC0000064, - STATUS_WRONG_PASSWORD = 0xC000006A, - STATUS_PASSWORD_RESTRICTION = 0xC000006C, - STATUS_LOGON_FAILURE = 0xC000006D, - STATUS_ACCOUNT_RESTRICTION = 0xC000006E, - STATUS_INVALID_LOGON_HOURS = 0xC000006F, - STATUS_INVALID_WORKSTATION = 0xC0000070, - STATUS_PASSWORD_EXPIRED = 0xC0000071, - STATUS_ACCOUNT_DISABLED = 0xC0000072, - STATUS_INSUFFICIENT_RESOURCES = 0xC000009A, - STATUS_ACCOUNT_EXPIRED = 0xC0000193, - STATUS_PASSWORD_MUST_CHANGE = 0xC0000224, - STATUS_ACCOUNT_LOCKED_OUT = 0xC0000234 -} - -// Note: undocumented in MSDN -// USER_ALL_INFORMATION.UserAccountControl -const ULONG - USER_ACCOUNT_DISABLED = 1, - USER_HOME_DIRECTORY_REQUIRED = 2, - USER_PASSWORD_NOT_REQUIRED = 4, - USER_TEMP_DUPLICATE_ACCOUNT = 8, - USER_NORMAL_ACCOUNT = 16, - USER_MNS_LOGON_ACCOUNT = 32, - USER_INTERDOMAIN_TRUST_ACCOUNT = 64, - USER_WORKSTATION_TRUST_ACCOUNT = 128, - USER_SERVER_TRUST_ACCOUNT = 256, - USER_DONT_EXPIRE_PASSWORD = 512, - USER_ACCOUNT_AUTO_LOCKED = 1024, - USER_ENCRYPTED_TEXT_PASSWORD_ALLOWED = 2048, - USER_SMARTCARD_REQUIRED = 4096, - USER_TRUSTED_FOR_DELEGATION = 8192, - USER_NOT_DELEGATED = 16384, - USER_USE_DES_KEY_ONLY = 32768, - USER_DONT_REQUIRE_PREAUTH = 65536, - - USER_MACHINE_ACCOUNT_MASK = 448, - USER_ACCOUNT_TYPE_MASK = 472, - USER_ALL_PARAMETERS = 2097152; - -/+ -struct UNICODE_STRING { - USHORT Length; - USHORT MaximumLength; - PWSTR Buffer; -} -alias UNICODE_STRING* PUNICODE_STRING; - -struct STRING { - USHORT Length; - USHORT MaximumLength; - PCHAR Buffer; -} -alias STRING* PSTRING; -+/ - -mixin DECLARE_HANDLE!("SAM_HANDLE"); -alias SAM_HANDLE* PSAM_HANDLE; - -struct OLD_LARGE_INTEGER { - ULONG LowPart; - LONG HighPart; -} -alias OLD_LARGE_INTEGER* POLD_LARGE_INTEGER; - -enum NETLOGON_LOGON_INFO_CLASS { - NetlogonInteractiveInformation = 1, - NetlogonNetworkInformation, - NetlogonServiceInformation, - NetlogonGenericInformation, - NetlogonInteractiveTransitiveInformation, - NetlogonNetworkTransitiveInformation, - NetlogonServiceTransitiveInformation -} - - -const CYPHER_BLOCK_LENGTH = 8; -const USER_SESSION_KEY_LENGTH = CYPHER_BLOCK_LENGTH * 2; -const CLEAR_BLOCK_LENGTH = 8; - -struct CYPHER_BLOCK { - CHAR[CYPHER_BLOCK_LENGTH] data; -} -alias CYPHER_BLOCK* PCYPHER_BLOCK; - -struct CLEAR_BLOCK { - CHAR[CLEAR_BLOCK_LENGTH] data; -} -alias CLEAR_BLOCK* PCLEAR_BLOCK; - -struct LM_OWF_PASSWORD { - CYPHER_BLOCK[2] data; -} -alias LM_OWF_PASSWORD* PLM_OWF_PASSWORD; - -struct USER_SESSION_KEY { - CYPHER_BLOCK[2] data; -} -alias USER_SESSION_KEY* PUSER_SESSION_KEY; - -alias CLEAR_BLOCK LM_CHALLENGE; -alias LM_CHALLENGE* PLM_CHALLENGE; - -alias LM_OWF_PASSWORD NT_OWF_PASSWORD; -alias NT_OWF_PASSWORD* PNT_OWF_PASSWORD; -alias LM_CHALLENGE NT_CHALLENGE; -alias NT_CHALLENGE* PNT_CHALLENGE; - -struct LOGON_HOURS { - USHORT UnitsPerWeek; - PUCHAR LogonHours; -} -alias LOGON_HOURS* PLOGON_HOURS; - -struct SR_SECURITY_DESCRIPTOR { - ULONG Length; - PUCHAR SecurityDescriptor; -} -alias SR_SECURITY_DESCRIPTOR* PSR_SECURITY_DESCRIPTOR; - -align(4): -struct USER_ALL_INFORMATION { - LARGE_INTEGER LastLogon; - LARGE_INTEGER LastLogoff; - LARGE_INTEGER PasswordLastSet; - LARGE_INTEGER AccountExpires; - LARGE_INTEGER PasswordCanChange; - LARGE_INTEGER PasswordMustChange; - UNICODE_STRING UserName; - UNICODE_STRING FullName; - UNICODE_STRING HomeDirectory; - UNICODE_STRING HomeDirectoryDrive; - UNICODE_STRING ScriptPath; - UNICODE_STRING ProfilePath; - UNICODE_STRING AdminComment; - UNICODE_STRING WorkStations; - UNICODE_STRING UserComment; - UNICODE_STRING Parameters; - UNICODE_STRING LmPassword; - UNICODE_STRING NtPassword; - UNICODE_STRING PrivateData; - SR_SECURITY_DESCRIPTOR SecurityDescriptor; - ULONG UserId; - ULONG PrimaryGroupId; - ULONG UserAccountControl; - ULONG WhichFields; - LOGON_HOURS LogonHours; - USHORT BadPasswordCount; - USHORT LogonCount; - USHORT CountryCode; - USHORT CodePage; - BOOLEAN LmPasswordPresent; - BOOLEAN NtPasswordPresent; - BOOLEAN PasswordExpired; - BOOLEAN PrivateDataSensitive; -} -alias USER_ALL_INFORMATION* PUSER_ALL_INFORMATION; -align: - -struct MSV1_0_VALIDATION_INFO { - LARGE_INTEGER LogoffTime; - LARGE_INTEGER KickoffTime; - UNICODE_STRING LogonServer; - UNICODE_STRING LogonDomainName; - USER_SESSION_KEY SessionKey; - BOOLEAN Authoritative; - ULONG UserFlags; - ULONG WhichFields; - ULONG UserId; -} -alias MSV1_0_VALIDATION_INFO* PMSV1_0_VALIDATION_INFO; - -struct NETLOGON_LOGON_IDENTITY_INFO { - UNICODE_STRING LogonDomainName; - ULONG ParameterControl; - OLD_LARGE_INTEGER LogonId; - UNICODE_STRING UserName; - UNICODE_STRING Workstation; -} -alias NETLOGON_LOGON_IDENTITY_INFO* PNETLOGON_LOGON_IDENTITY_INFO; - -struct NETLOGON_INTERACTIVE_INFO { - NETLOGON_LOGON_IDENTITY_INFO Identity; - LM_OWF_PASSWORD LmOwfPassword; - NT_OWF_PASSWORD NtOwfPassword; -} -alias NETLOGON_INTERACTIVE_INFO* PNETLOGON_INTERACTIVE_INFO; - -struct NETLOGON_GENERIC_INFO { - NETLOGON_LOGON_IDENTITY_INFO Identity; - UNICODE_STRING PackageName; - ULONG DataLength; - PUCHAR LogonData; -} -alias NETLOGON_GENERIC_INFO* PNETLOGON_GENERIC_INFO; - -struct NETLOGON_NETWORK_INFO { - NETLOGON_LOGON_IDENTITY_INFO Identity; - LM_CHALLENGE LmChallenge; - STRING NtChallengeResponse; - STRING LmChallengeResponse; -} -alias NETLOGON_NETWORK_INFO* PNETLOGON_NETWORK_INFO; - -struct NETLOGON_SERVICE_INFO { - NETLOGON_LOGON_IDENTITY_INFO Identity; - LM_OWF_PASSWORD LmOwfPassword; - NT_OWF_PASSWORD NtOwfPassword; -} -alias NETLOGON_SERVICE_INFO* PNETLOGON_SERVICE_INFO; - -extern (Windows) { -NTSTATUS Msv1_0SubAuthenticationRoutine(NETLOGON_LOGON_INFO_CLASS,PVOID, - ULONG,PUSER_ALL_INFORMATION,PULONG,PULONG, - PBOOLEAN,PLARGE_INTEGER,PLARGE_INTEGER); -NTSTATUS Msv1_0SubAuthenticationFilter(NETLOGON_LOGON_INFO_CLASS,PVOID, - ULONG,PUSER_ALL_INFORMATION,PULONG,PULONG, - PBOOLEAN,PLARGE_INTEGER,PLARGE_INTEGER); -NTSTATUS Msv1_0SubAuthenticationRoutineGeneric(PVOID,ULONG,PULONG,PVOID*); -NTSTATUS Msv1_0SubAuthenticationRoutineEx(NETLOGON_LOGON_INFO_CLASS,PVOID, - ULONG,PUSER_ALL_INFORMATION,SAM_HANDLE, - PMSV1_0_VALIDATION_INFO,PULONG); -} \ No newline at end of file diff --git a/3rdparty-extra/win32/testall.d b/3rdparty-extra/win32/testall.d deleted file mode 100644 index ecd9f2684..000000000 --- a/3rdparty-extra/win32/testall.d +++ /dev/null @@ -1,124 +0,0 @@ -// Used only for testing -- imports all windows headers. -module win32.testall; -version(Windows): - -import win32.core; -import win32.windows; -import win32.commctrl; -import win32.setupapi; - -import win32.directx.dinput8; -import win32.directx.dsound8; - -import win32.directx.d3d9; -import win32.directx.d3dx9; -import win32.directx.dxerr; -import win32.directx.dxerr8; -import win32.directx.dxerr9; - -import win32.directx.d3d10; -import win32.directx.d3d10effect; -import win32.directx.d3d10shader; -import win32.directx.d3dx10; -import win32.directx.dxgi; - -import win32.oleacc; -import win32.comcat; -import win32.cpl; -import win32.cplext; -import win32.custcntl; -import win32.ocidl; -import win32.olectl; -import win32.oledlg; -import win32.objsafe; -import win32.ole; - -import win32.shldisp; -import win32.shlobj; -import win32.shlwapi; -import win32.regstr; -import win32.richole; -import win32.tmschema; -import win32.servprov; -import win32.exdisp; -import win32.exdispid; -import win32.idispids; -import win32.mshtml; - -import win32.lm; -import win32.lmbrowsr; - -import win32.sql; -import win32.sqlext; -import win32.sqlucode; -import win32.odbcinst; - -import win32.imagehlp; -import win32.intshcut; -import win32.iphlpapi; -import win32.isguids; - -import win32.subauth; -import win32.rasdlg; -import win32.rassapi; - -import win32.mapi; -import win32.mciavi; -import win32.mcx; -import win32.mgmtapi; - -import win32.nddeapi; -import win32.msacm; -import win32.nspapi; - -import win32.ntdef; -import win32.ntldap; -import win32.ntsecapi; - -import win32.pbt; -import win32.powrprof; -import win32.rapi; - -import win32.wininet; -import win32.winioctl; -import win32.winldap; - -import win32.dbt; - -import win32.rpcdce2; - -import win32.tlhelp32; - -import win32.httpext; -import win32.lmwksta; -import win32.mswsock; -import win32.objidl; -import win32.ole2ver; -import win32.psapi; -import win32.raserror; -import win32.usp10; -import win32.vfw; - -version (WindowsVista) { - version = WINDOWS_XP_UP; -} else version (Windows2003) { - version = WINDOWS_XP_UP; -} else version (WindowsXP) { - version = WINDOWS_XP_UP; -} - -version (WINDOWS_XP_UP) { - import win32.errorrep; - import win32.lmmsg; - import win32.reason; - import win32.secext; -} -import win32.aclapi; -import win32.aclui; -import win32.dhcpcsdk; -import win32.lmserver; -import win32.ntdll; - -version (Win32_Winsock1) { - import win32.winsock; -} diff --git a/3rdparty-extra/win32/testcompile.bat b/3rdparty-extra/win32/testcompile.bat deleted file mode 100644 index dfb64127f..000000000 --- a/3rdparty-extra/win32/testcompile.bat +++ /dev/null @@ -1,23 +0,0 @@ -@call :testuni -@call :testuni -version=Unicode -@goto :eof - -:testuni -@call :testversion %* -@call :testversion %* -version=Windows2000 -@call :testversion %* -version=WindowsXP -@call :testversion %* -version=Windows2003 -@call :testversion %* -version=WindowsVista -@call :testversion %* -version=Win32_Winsock1 -@call :testversion %* -version=IE7 -@goto :eof - -:testversion -@call :testone -m32 %* -@call :testone -m64 %* -@goto :eof - -:testone -dmd -I.. -c %* testall.d -@if errorlevel 1 exit 1 -@goto :eof diff --git a/3rdparty-extra/win32/tlhelp32.d b/3rdparty-extra/win32/tlhelp32.d deleted file mode 100644 index 5786ef9ad..000000000 --- a/3rdparty-extra/win32/tlhelp32.d +++ /dev/null @@ -1,170 +0,0 @@ -/***********************************************************************\ -* tlhelp32.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.tlhelp32; -version(Windows): - -private import win32.windef; - -enum : uint { - HF32_DEFAULT = 1, - HF32_SHARED -} - -enum : uint { - LF32_FIXED = 0x1, - LF32_FREE = 0x2, - LF32_MOVEABLE = 0x4 -} - -const MAX_MODULE_NAME32 = 255; - -enum : uint { - TH32CS_SNAPHEAPLIST = 0x1, - TH32CS_SNAPPROCESS = 0x2, - TH32CS_SNAPTHREAD = 0x4, - TH32CS_SNAPMODULE = 0x8, - TH32CS_SNAPALL = (TH32CS_SNAPHEAPLIST|TH32CS_SNAPPROCESS|TH32CS_SNAPTHREAD|TH32CS_SNAPMODULE), - TH32CS_INHERIT = 0x80000000 -} - -struct HEAPLIST32 { - SIZE_T dwSize; - DWORD th32ProcessID; - ULONG_PTR th32HeapID; - DWORD dwFlags; -} -alias HEAPLIST32* PHEAPLIST32; -alias HEAPLIST32* LPHEAPLIST32; - -struct HEAPENTRY32 { - SIZE_T dwSize; - HANDLE hHandle; - ULONG_PTR dwAddress; - SIZE_T dwBlockSize; - DWORD dwFlags; - DWORD dwLockCount; - DWORD dwResvd; - DWORD th32ProcessID; - ULONG_PTR th32HeapID; -} -alias HEAPENTRY32* PHEAPENTRY32; -alias HEAPENTRY32* LPHEAPENTRY32; - -struct PROCESSENTRY32W { - DWORD dwSize; - DWORD cntUsage; - DWORD th32ProcessID; - ULONG_PTR th32DefaultHeapID; - DWORD th32ModuleID; - DWORD cntThreads; - DWORD th32ParentProcessID; - LONG pcPriClassBase; - DWORD dwFlags; - WCHAR[MAX_PATH] szExeFile; -} -alias PROCESSENTRY32W* PPROCESSENTRY32W; -alias PROCESSENTRY32W* LPPROCESSENTRY32W; - -struct THREADENTRY32 { - DWORD dwSize; - DWORD cntUsage; - DWORD th32ThreadID; - DWORD th32OwnerProcessID; - LONG tpBasePri; - LONG tpDeltaPri; - DWORD dwFlags; -} -alias THREADENTRY32* PTHREADENTRY32; -alias THREADENTRY32* LPTHREADENTRY32; - -struct MODULEENTRY32W { - DWORD dwSize; - DWORD th32ModuleID; - DWORD th32ProcessID; - DWORD GlblcntUsage; - DWORD ProccntUsage; - BYTE *modBaseAddr; - DWORD modBaseSize; - HMODULE hModule; - WCHAR szModule[MAX_MODULE_NAME32 + 1]; - WCHAR[MAX_PATH] szExePath; -} -alias MODULEENTRY32W* PMODULEENTRY32W; -alias MODULEENTRY32W* LPMODULEENTRY32W; - -version(Unicode) { - alias PROCESSENTRY32W PROCESSENTRY32; - alias PPROCESSENTRY32W PPROCESSENTRY32; - alias LPPROCESSENTRY32W LPPROCESSENTRY32; - - alias MODULEENTRY32W MODULEENTRY32; - alias PMODULEENTRY32W PMODULEENTRY32; - alias LPMODULEENTRY32W LPMODULEENTRY32; -} else { - struct PROCESSENTRY32 { - DWORD dwSize; - DWORD cntUsage; - DWORD th32ProcessID; - ULONG_PTR th32DefaultHeapID; - DWORD th32ModuleID; - DWORD cntThreads; - DWORD th32ParentProcessID; - LONG pcPriClassBase; - DWORD dwFlags; - CHAR[MAX_PATH] szExeFile; - } - alias PROCESSENTRY32* PPROCESSENTRY32; - alias PROCESSENTRY32* LPPROCESSENTRY32; - - struct MODULEENTRY32 { - DWORD dwSize; - DWORD th32ModuleID; - DWORD th32ProcessID; - DWORD GlblcntUsage; - DWORD ProccntUsage; - BYTE *modBaseAddr; - DWORD modBaseSize; - HMODULE hModule; - char szModule[MAX_MODULE_NAME32 + 1]; - char[MAX_PATH] szExePath; - } - alias MODULEENTRY32* PMODULEENTRY32; - alias MODULEENTRY32* LPMODULEENTRY32; -} - - -extern(Windows) { - BOOL Heap32First(LPHEAPENTRY32,DWORD,DWORD); - BOOL Heap32ListFirst(HANDLE,LPHEAPLIST32); - BOOL Heap32ListNext(HANDLE,LPHEAPLIST32); - BOOL Heap32Next(LPHEAPENTRY32); - BOOL Thread32First(HANDLE,LPTHREADENTRY32); - BOOL Thread32Next(HANDLE,LPTHREADENTRY32); - BOOL Toolhelp32ReadProcessMemory(DWORD,LPCVOID,LPVOID,DWORD,LPDWORD); - HANDLE CreateToolhelp32Snapshot(DWORD,DWORD); - BOOL Module32FirstW(HANDLE,LPMODULEENTRY32W); - BOOL Module32NextW(HANDLE,LPMODULEENTRY32W); - BOOL Process32FirstW(HANDLE,LPPROCESSENTRY32W); - BOOL Process32NextW(HANDLE,LPPROCESSENTRY32W); -} - -version(Unicode) { - alias Module32FirstW Module32First; - alias Module32NextW Module32Next; - alias Process32FirstW Process32First; - alias Process32NextW Process32Next; -} else { - extern(Windows) { - BOOL Module32First(HANDLE,LPMODULEENTRY32); - BOOL Module32Next(HANDLE,LPMODULEENTRY32); - BOOL Process32First(HANDLE,LPPROCESSENTRY32); - BOOL Process32Next(HANDLE,LPPROCESSENTRY32); - } -} diff --git a/3rdparty-extra/win32/tmschema.d b/3rdparty-extra/win32/tmschema.d deleted file mode 100644 index c070eaaae..000000000 --- a/3rdparty-extra/win32/tmschema.d +++ /dev/null @@ -1,759 +0,0 @@ -/***********************************************************************\ -* tmschema.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.tmschema; -version(Windows): - -/* BUTTON parts */ -enum { - BP_PUSHBUTTON = 1, - BP_RADIOBUTTON = 2, - BP_CHECKBOX = 3, - BP_GROUPBOX = 4, - BP_USERBUTTON = 5 -} - -enum { - CBS_UNCHECKEDNORMAL = 1, - CBS_UNCHECKEDHOT = 2, - CBS_UNCHECKEDPRESSED = 3, - CBS_UNCHECKEDDISABLED = 4, - CBS_CHECKEDNORMAL = 5, - CBS_CHECKEDHOT = 6, - CBS_CHECKEDPRESSED = 7, - CBS_CHECKEDDISABLED = 8, - CBS_MIXEDNORMAL = 9, - CBS_MIXEDHOT = 10, - CBS_MIXEDPRESSED = 11, - CBS_MIXEDDISABLED = 12 -} - -enum { - GBS_NORMAL = 1, - GBS_DISABLED = 2 -} - -enum { - PBS_NORMAL = 1, - PBS_HOT = 2, - PBS_PRESSED = 3, - PBS_DISABLED = 4, - PBS_DEFAULTED = 5 -} - -enum { - RBS_UNCHECKEDNORMAL = 1, - RBS_UNCHECKEDHOT = 2, - RBS_UNCHECKEDPRESSED = 3, - RBS_UNCHECKEDDISABLED = 4, - RBS_CHECKEDNORMAL = 5, - RBS_CHECKEDHOT = 6, - RBS_CHECKEDPRESSED = 7, - RBS_CHECKEDDISABLED = 8 -} - -/* CLOCK parts */ -enum { - CLP_TIME = 1 -} - -enum { - CLS_NORMAL = 1 -} - -/* COMBOBOX parts */ -enum { - CP_DROPDOWNBUTTON = 1 -} - -enum { - CBXS_NORMAL = 1, - CBXS_HOT = 2, - CBXS_PRESSED = 3, - CBXS_DISABLED = 4 -} - -/* EDIT parts */ -enum { - EP_EDITTEXT = 1, - EP_CARET = 2 -} - -enum { - ETS_NORMAL = 1, - ETS_HOT = 2, - ETS_SELECTED = 3, - ETS_DISABLED = 4, - ETS_FOCUSED = 5, - ETS_READONLY = 6, - ETS_ASSIST = 7 -} -/* EXPLORERBAR parts */ -enum { - EBP_HEADERBACKGROUND = 1, - EBP_HEADERCLOSE = 2, - EBP_HEADERPIN = 3, - EBP_IEBARMENU = 4, - EBP_NORMALGROUPBACKGROUND = 5, - EBP_NORMALGROUPCOLLAPSE = 6, - EBP_NORMALGROUPEXPAND = 7, - EBP_NORMALGROUPHEAD = 8, - EBP_SPECIALGROUPBACKGROUND = 9, - EBP_SPECIALGROUPCOLLAPSE = 10, - EBP_SPECIALGROUPEXPAND = 11, - EBP_SPECIALGROUPHEAD = 12 -} - -enum { - EBHC_NORMAL = 1, - EBHC_HOT = 2, - EBHC_PRESSED = 3 -} - -enum { - EBHP_NORMAL = 1, - EBHP_HOT = 2, - EBHP_PRESSED = 3, - EBHP_SELECTEDNORMAL = 4, - EBHP_SELECTEDHOT = 5, - EBHP_SELECTEDPRESSED = 6 -} - -enum { - EBM_NORMAL = 1, - EBM_HOT = 2, - EBM_PRESSED = 3 -} - -enum { - EBNGC_NORMAL = 1, - EBNGC_HOT = 2, - EBNGC_PRESSED = 3 -} - -enum { - EBNGE_NORMAL = 1, - EBNGE_HOT = 2, - EBNGE_PRESSED = 3 -} - -enum { - EBSGC_NORMAL = 1, - EBSGC_HOT = 2, - EBSGC_PRESSED = 3 -} - -enum { - EBSGE_NORMAL = 1, - EBSGE_HOT = 2, - EBSGE_PRESSED = 3 -} - -/* HEADER parts */ -enum { - HP_HEADERITEM = 1, - HP_HEADERITEMLEFT = 2, - HP_HEADERITEMRIGHT = 3, - HP_HEADERSORTARROW = 4 -} - -enum { - HIS_NORMAL = 1, - HIS_HOT = 2, - HIS_PRESSED = 3 -} - -enum { - HILS_NORMAL = 1, - HILS_HOT = 2, - HILS_PRESSED = 3 -} - -enum { - HIRS_NORMAL = 1, - HIRS_HOT = 2, - HIRS_PRESSED = 3 -} - -enum { - HSAS_SORTEDUP = 1, - HSAS_SORTEDDOWN = 2 -} - -/* LISTVIEW parts */ -enum { - LVP_LISTITEM = 1, - LVP_LISTGROUP = 2, - LVP_LISTDETAIL = 3, - LVP_LISTSORTEDDETAIL = 4, - LVP_EMPTYTEXT = 5 -} - -enum { - LIS_NORMAL = 1, - LIS_HOT = 2, - LIS_SELECTED = 3, - LIS_DISABLED = 4, - LIS_SELECTEDNOTFOCUS = 5 -} - -/* MENU parts */ -enum { - MP_MENUITEM = 1, - MP_MENUDROPDOWN = 2, - MP_MENUBARITEM = 3, - MP_MENUBARDROPDOWN = 4, - MP_CHEVRON = 5, - MP_SEPARATOR = 6 -} - -enum { - MS_NORMAL = 1, - MS_SELECTED = 2, - MS_DEMOTED = 3 -} -/* MENUBAND parts */ -enum { - MDP_NEWAPPBUTTON = 1, - MDP_SEPERATOR = 2 -} - -enum { - MDS_NORMAL = 1, - MDS_HOT = 2, - MDS_PRESSED = 3, - MDS_DISABLED = 4, - MDS_CHECKED = 5, - MDS_HOTCHECKED = 6 -} - -/* PAGE parts */ -enum { - PGRP_UP = 1, - PGRP_DOWN = 2, - PGRP_UPHORZ = 3, - PGRP_DOWNHORZ = 4 -} - -enum { - DNS_NORMAL = 1, - DNS_HOT = 2, - DNS_PRESSED = 3, - DNS_DISABLED = 4 -} - -enum { - DNHZS_NORMAL = 1, - DNHZS_HOT = 2, - DNHZS_PRESSED = 3, - DNHZS_DISABLED = 4 -} - -enum { - UPS_NORMAL = 1, - UPS_HOT = 2, - UPS_PRESSED = 3, - UPS_DISABLED = 4 -} - -enum { - UPHZS_NORMAL = 1, - UPHZS_HOT = 2, - UPHZS_PRESSED = 3, - UPHZS_DISABLED = 4 -} - -/* PROGRESS parts */ -enum { - PP_BAR = 1, - PP_BARVERT = 2, - PP_CHUNK = 3, - PP_CHUNKVERT = 4 -} - -/* REBAR parts */ -enum { - RP_GRIPPER = 1, - RP_GRIPPERVERT = 2, - RP_BAND = 3, - RP_CHEVRON = 4, - RP_CHEVRONVERT = 5 -} - -enum { - CHEVS_NORMAL = 1, - CHEVS_HOT = 2, - CHEVS_PRESSED = 3 -} - -/* SCROLLBAR parts */ -enum { - SBP_ARROWBTN = 1, - SBP_THUMBBTNHORZ = 2, - SBP_THUMBBTNVERT = 3, - SBP_LOWERTRACKHORZ = 4, - SBP_UPPERTRACKHORZ = 5, - SBP_LOWERTRACKVERT = 6, - SBP_UPPERTRACKVERT = 7, - SBP_GRIPPERHORZ = 8, - SBP_GRIPPERVERT = 9, - SBP_SIZEBOX = 10 -} - -enum { - ABS_UPNORMAL = 1, - ABS_UPHOT = 2, - ABS_UPPRESSED = 3, - ABS_UPDISABLED = 4, - ABS_DOWNNORMAL = 5, - ABS_DOWNHOT = 6, - ABS_DOWNPRESSED = 7, - ABS_DOWNDISABLED = 8, - ABS_LEFTNORMAL = 9, - ABS_LEFTHOT = 10, - ABS_LEFTPRESSED = 11, - ABS_LEFTDISABLED = 12, - ABS_RIGHTNORMAL = 13, - ABS_RIGHTHOT = 14, - ABS_RIGHTPRESSED = 15, - ABS_RIGHTDISABLED = 16 -} - -enum { - SCRBS_NORMAL = 1, - SCRBS_HOT = 2, - SCRBS_PRESSED = 3, - SCRBS_DISABLED = 4 -} - -enum { - SZB_RIGHTALIGN = 1, - SZB_LEFTALIGN = 2 -} - -/* SPIN parts */ -enum { - SPNP_UP = 1, - SPNP_DOWN = 2, - SPNP_UPHORZ = 3, - SPNP_DOWNHORZ = 4 -} - -/* STARTPANEL parts */ -enum { - SPP_USERPANE = 1, - SPP_MOREPROGRAMS = 2, - SPP_MOREPROGRAMSARROW = 3, - SPP_PROGLIST = 4, - SPP_PROGLISTSEPARATOR = 5, - SPP_PLACESLIST = 6, - SPP_PLACESLISTSEPARATOR = 7, - SPP_LOGOFF = 8, - SPP_LOGOFFBUTTONS = 9, - SPP_USERPICTURE = 10, - SPP_PREVIEW = 11 -} - -enum { - SPLS_NORMAL = 1, - SPLS_HOT = 2, - SPLS_PRESSED = 3 -} - -enum { - SPS_NORMAL = 1, - SPS_HOT = 2, - SPS_PRESSED = 3 -} - -/* STATUS parts */ -enum { - SP_PANE = 1, - SP_GRIPPERPANE = 2, - SP_GRIPPER = 3 -} - -/* TAB parts */ -enum { - TABP_TABITEM = 1, - TABP_TABITEMLEFTEDGE = 2, - TABP_TABITEMRIGHTEDGE = 3, - TABP_TABITEMBOTHEDGE = 4, - TABP_TOPTABITEM = 5, - TABP_TOPTABITEMLEFTEDGE = 6, - TABP_TOPTABITEMRIGHTEDGE = 7, - TABP_TOPTABITEMBOTHEDGE = 8, - TABP_PANE = 9, - TABP_BODY = 10 -} - -enum { - TIS_NORMAL = 1, - TIS_HOT = 2, - TIS_SELECTED = 3, - TIS_DISABLED = 4, - TIS_FOCUSED = 5 -} - -enum { - TIBES_NORMAL = 1, - TIBES_HOT = 2, - TIBES_SELECTED = 3, - TIBES_DISABLED = 4, - TIBES_FOCUSED = 5 -} - -enum { - TILES_NORMAL = 1, - TILES_HOT = 2, - TILES_SELECTED = 3, - TILES_DISABLED = 4, - TILES_FOCUSED = 5 -} - -enum { - TIRES_NORMAL = 1, - TIRES_HOT = 2, - TIRES_SELECTED = 3, - TIRES_DISABLED = 4, - TIRES_FOCUSED = 5 -} - -enum { - TTIS_NORMAL = 1, - TTIS_HOT = 2, - TTIS_SELECTED = 3, - TTIS_DISABLED = 4, - TTIS_FOCUSED = 5 -} - -enum { - TTIBES_NORMAL = 1, - TTIBES_HOT = 2, - TTIBES_SELECTED = 3, - TTIBES_DISABLED = 4, - TTIBES_FOCUSED = 5 -} - -enum { - TTILES_NORMAL = 1, - TTILES_HOT = 2, - TTILES_SELECTED = 3, - TTILES_DISABLED = 4, - TTILES_FOCUSED = 5 -} - -enum { - TTIRES_NORMAL = 1, - TTIRES_HOT = 2, - TTIRES_SELECTED = 3, - TTIRES_DISABLED = 4, - TTIRES_FOCUSED = 5 -} - -/* TASKBAND parts */ -enum { - TDP_GROUPCOUNT = 1, - TDP_FLASHBUTTON = 2, - TDP_FLASHBUTTONGROUPMENU = 3 -} - -/* TASKBAR parts */ -enum { - TBP_BACKGROUNDBOTTOM = 1, - TBP_BACKGROUNDRIGHT = 2, - TBP_BACKGROUNDTOP = 3, - TBP_BACKGROUNDLEFT = 4, - TBP_SIZINGBARBOTTOM = 5, - TBP_SIZINGBARRIGHT = 6, - TBP_SIZINGBARTOP = 7, - TBP_SIZINGBARLEFT = 8 -} - -/* TOOLBAR parts */ -enum { - TP_BUTTON = 1, - TP_DROPDOWNBUTTON = 2, - TP_SPLITBUTTON = 3, - TP_SPLITBUTTONDROPDOWN = 4, - TP_SEPARATOR = 5, - TP_SEPARATORVERT = 6 -} - -enum { - TS_NORMAL = 1, - TS_HOT = 2, - TS_PRESSED = 3, - TS_DISABLED = 4, - TS_CHECKED = 5, - TS_HOTCHECKED = 6 -} - -/* TOOLTIP parts */ -enum { - TTP_STANDARD = 1, - TTP_STANDARDTITLE = 2, - TTP_BALLOON = 3, - TTP_BALLOONTITLE = 4, - TTP_CLOSE = 5 -} - -enum { - TTBS_NORMAL = 1, - TTBS_LINK = 2 -} - -enum { - TTCS_NORMAL = 1, - TTCS_HOT = 2, - TTCS_PRESSED = 3 -} - -enum { - TTSS_NORMAL = 1, - TTSS_LINK = 2 -} - -/* TRACKBAR parts */ -enum { - TKP_TRACK = 1, - TKP_TRACKVERT = 2, - TKP_THUMB = 3, - TKP_THUMBBOTTOM = 4, - TKP_THUMBTOP = 5, - TKP_THUMBVERT = 6, - TKP_THUMBLEFT = 7, - TKP_THUMBRIGHT = 8, - TKP_TICS = 9, - TKP_TICSVERT = 10 -} - -enum { - TUS_NORMAL = 1, - TUS_HOT = 2, - TUS_PRESSED = 3, - TUS_FOCUSED = 4, - TUS_DISABLED = 5 -} - -enum { - TUBS_NORMAL = 1, - TUBS_HOT = 2, - TUBS_PRESSED = 3, - TUBS_FOCUSED = 4, - TUBS_DISABLED = 5 -} - -enum { - TUVLS_NORMAL = 1, - TUVLS_HOT = 2, - TUVLS_PRESSED = 3, - TUVLS_FOCUSED = 4, - TUVLS_DISABLED = 5 -} - -enum { - TUVRS_NORMAL = 1, - TUVRS_HOT = 2, - TUVRS_PRESSED = 3, - TUVRS_FOCUSED = 4, - TUVRS_DISABLED = 5 -} - -enum { - TUTS_NORMAL = 1, - TUTS_HOT = 2, - TUTS_PRESSED = 3, - TUTS_FOCUSED = 4, - TUTS_DISABLED = 5 -} - -enum { - TUVS_NORMAL = 1, - TUVS_HOT = 2, - TUVS_PRESSED = 3, - TUVS_FOCUSED = 4, - TUVS_DISABLED = 5 -} - -enum { - TSS_NORMAL = 1 -} - -enum { - TSVS_NORMAL = 1 -} - -enum { - TRS_NORMAL = 1 -} - -enum { - TRVS_NORMAL = 1 -} - -/* TRAYNOTIFY parts */ -enum { - TNP_BACKGROUND = 1, - TNP_ANIMBACKGROUND = 2 -} - -/* TREEVIEW parts */ -enum { - TVP_TREEITEM = 1, - TVP_GLYPH = 2, - TVP_BRANCH = 3 -} - -enum { - GLPS_CLOSED = 1, - GLPS_OPENED = 2 -} - -enum { - TREIS_NORMAL = 1, - TREIS_HOT = 2, - TREIS_SELECTED = 3, - TREIS_DISABLED = 4, - TREIS_SELECTEDNOTFOCUS = 5 -} - -/* WINDOW parts */ -enum { - WP_CAPTION = 1, - WP_SMALLCAPTION = 2, - WP_MINCAPTION = 3, - WP_SMALLMINCAPTION = 4, - WP_MAXCAPTION = 5, - WP_SMALLMAXCAPTION = 6, - WP_FRAMELEFT = 7, - WP_FRAMERIGHT = 8, - WP_FRAMEBOTTOM = 9, - WP_SMALLFRAMELEFT = 10, - WP_SMALLFRAMERIGHT = 11, - WP_SMALLFRAMEBOTTOM = 12, - WP_SYSBUTTON = 13, - WP_MDISYSBUTTON = 14, - WP_MINBUTTON = 15, - WP_MDIMINBUTTON = 16, - WP_MAXBUTTON = 17, - WP_CLOSEBUTTON = 18, - WP_SMALLCLOSEBUTTON = 19, - WP_MDICLOSEBUTTON = 20, - WP_RESTOREBUTTON = 21, - WP_MDIRESTOREBUTTON = 22, - WP_HELPBUTTON = 23, - WP_MDIHELPBUTTON = 24, - WP_HORZSCROLL = 25, - WP_HORZTHUMB = 26, - WP_VERTSCROLL = 27, - WP_VERTTHUMB = 28, - WP_DIALOG = 29, - WP_CAPTIONSIZINGTEMPLATE = 30, - WP_SMALLCAPTIONSIZINGTEMPLATE = 31, - WP_FRAMELEFTSIZINGTEMPLATE = 32, - WP_SMALLFRAMELEFTSIZINGTEMPLATE = 33, - WP_FRAMERIGHTSIZINGTEMPLATE = 34, - WP_SMALLFRAMERIGHTSIZINGTEMPLATE = 35, - WP_FRAMEBOTTOMSIZINGTEMPLATE = 36, - WP_SMALLFRAMEBOTTOMSIZINGTEMPLATE = 37 -} - -enum { - CS_ACTIVE = 1, - CS_INACTIVE = 2, - CS_DISABLED = 3 -} - -enum { - CBS_NORMAL = 1, - CBS_HOT = 2, - CBS_PUSHED = 3, - CBS_DISABLED = 4 -} - -enum { - FS_ACTIVE = 1, - FS_INACTIVE = 2 -} - -enum { - HBS_NORMAL = 1, - HBS_HOT = 2, - HBS_PUSHED = 3, - HBS_DISABLED = 4 -} - -enum { - HSS_NORMAL = 1, - HSS_HOT = 2, - HSS_PUSHED = 3, - HSS_DISABLED = 4 -} - -enum { - HTS_NORMAL = 1, - HTS_HOT = 2, - HTS_PUSHED = 3, - HTS_DISABLED = 4 -} - -enum { - MAXBS_NORMAL = 1, - MAXBS_HOT = 2, - MAXBS_PUSHED = 3, - MAXBS_DISABLED = 4 -} - -enum { - MXCS_ACTIVE = 1, - MXCS_INACTIVE = 2, - MXCS_DISABLED = 3 -} - -enum { - MINBS_NORMAL = 1, - MINBS_HOT = 2, - MINBS_PUSHED = 3, - MINBS_DISABLED = 4 -} - -enum { - RBS_NORMAL = 1, - RBS_HOT = 2, - RBS_PUSHED = 3, - RBS_DISABLED = 4 -} - -enum { - SBS_NORMAL = 1, - SBS_HOT = 2, - SBS_PUSHED = 3, - SBS_DISABLED = 4 -} - -enum { - MNCS_ACTIVE = 1, - MNCS_INACTIVE = 2, - MNCS_DISABLED = 3 -} - -enum { - VSS_NORMAL = 1, - VSS_HOT = 2, - VSS_PUSHED = 3, - VSS_DISABLED = 4 -} - -enum { - VTS_NORMAL = 1, - VTS_HOT = 2, - VTS_PUSHED = 3, - VTS_DISABLED = 4 -} diff --git a/3rdparty-extra/win32/usp10.d b/3rdparty-extra/win32/usp10.d deleted file mode 100644 index a6f85d41a..000000000 --- a/3rdparty-extra/win32/usp10.d +++ /dev/null @@ -1,335 +0,0 @@ -/* USP - Unicode Complex Script processor - * http://msdn2.microsoft.com/library/ms776488 */ - - -module win32.usp10; -version(Windows): -import win32.windows; - - - -/* Uniscribe Enumeration Types - * http://msdn2.microsoft.com/library/ms776518 */ - -enum : WORD { - SCRIPT_UNDEFINED = 0, -} - -enum : DWORD { - SGCM_RTL = 0x00000001, -} - -enum : DWORD { - SSA_PASSWORD = 0x00000001, - SSA_TAB = 0x00000002, - SSA_CLIP = 0x00000004, - SSA_FIT = 0x00000008, - SSA_DZWG = 0x00000010, - SSA_FALLBACK = 0x00000020, - SSA_BREAK = 0x00000040, - SSA_GLYPHS = 0x00000080, - SSA_RTL = 0x00000100, - SSA_GCP = 0x00000200, - SSA_HOTKEY = 0x00000400, - SSA_METAFILE = 0x00000800, - SSA_LINK = 0x00001000, - SSA_HIDEHOTKEY = 0x00002000, - SSA_HOTKEYONLY = 0x00002400, - SSA_FULLMEASURE = 0x04000000, - SSA_LPKANSIFALLBACK = 0x08000000, - SSA_PIDX = 0x10000000, - SSA_LAYOUTRTL = 0x20000000, - SSA_DONTGLYPH = 0x40000000, - SSA_NOKASHIDA = 0x80000000, -} - -enum : DWORD { - SIC_COMPLEX = 1, - SIC_ASCIIDIGIT = 2, - SIC_NEUTRAL = 4, -} - -enum : DWORD { - SCRIPT_DIGITSUBSTITUTE_CONTEXT, - SCRIPT_DIGITSUBSTITUTE_NONE, - SCRIPT_DIGITSUBSTITUTE_NATIONAL, - SCRIPT_DIGITSUBSTITUTE_TRADITIONAL, -} - -enum SCRIPT_JUSTIFY : WORD { - SCRIPT_JUSTIFY_NONE, - SCRIPT_JUSTIFY_ARABIC_BLANK, - SCRIPT_JUSTIFY_CHARACTER, - SCRIPT_JUSTIFY_RESERVED1, - SCRIPT_JUSTIFY_BLANK, - SCRIPT_JUSTIFY_RESERVED2, - SCRIPT_JUSTIFY_RESERVED3, - SCRIPT_JUSTIFY_ARABIC_NORMAL, - SCRIPT_JUSTIFY_ARABIC_KASHIDA, - SCRIPT_JUSTIFY_ARABIC_ALEF, - SCRIPT_JUSTIFY_ARABIC_HA, - SCRIPT_JUSTIFY_ARABIC_RA, - SCRIPT_JUSTIFY_ARABIC_BA, - SCRIPT_JUSTIFY_ARABIC_BARA, - SCRIPT_JUSTIFY_ARABIC_SEEN, - SCRIPT_JUSTIFY_ARABIC_SEEN_M, -} - - - -/* Uniscribe Structures - * http://msdn2.microsoft.com/library/ms776479 */ - -alias void* SCRIPT_CACHE; -alias void* SCRIPT_STRING_ANALYSIS; - -extern (C) -{ - struct SCRIPT_CONTROL - { - private DWORD _bitfield; - DWORD uDefaultLanguage() { return (_bitfield >> 0) & 0xFFFF; } - DWORD uDefaultLanguage(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFFF0000) | (val << 0)); return val; } - DWORD fContextDigits() { return (_bitfield >> 16) & 0x1; } - DWORD fContextDigits(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFFEFFFF) | (val << 16)); return val; } - DWORD fInvertPreBoundDir() { return (_bitfield >> 17) & 0x1; } - DWORD fInvertPreBoundDir(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFFDFFFF) | (val << 17)); return val; } - DWORD fInvertPostBoundDir() { return (_bitfield >> 18) & 0x1; } - DWORD fInvertPostBoundDir(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFFBFFFF) | (val << 18)); return val; } - DWORD fLinkStringBefore() { return (_bitfield >> 19) & 0x1; } - DWORD fLinkStringBefore(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFF7FFFF) | (val << 19)); return val; } - DWORD fLinkStringAfter() { return (_bitfield >> 20) & 0x1; } - DWORD fLinkStringAfter(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFEFFFFF) | (val << 20)); return val; } - DWORD fNeutralOverride() { return (_bitfield >> 21) & 0x1; } - DWORD fNeutralOverride(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFDFFFFF) | (val << 21)); return val; } - DWORD fNumericOverride() { return (_bitfield >> 22) & 0x1; } - DWORD fNumericOverride(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFFBFFFFF) | (val << 22)); return val; } - DWORD fLegacyBidiClass() { return (_bitfield >> 23) & 0x1; } - DWORD fLegacyBidiClass(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFFFF7FFFFF) | (val << 23)); return val; } - DWORD fReserved() { return (_bitfield >> 24) & 0xFF; } - DWORD fReserved(DWORD val) { _bitfield = cast(DWORD)((_bitfield & 0xFFFFFFFF00FFFFFF) | (val << 24)); return val; } - } - - struct SCRIPT_STATE - { - private WORD _bitfield; - WORD uBidiLevel() { return cast(WORD)((_bitfield >> 0) & 0x1F); } - WORD uBidiLevel(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFE0) | (val << 0)); return val; } - WORD fOverrideDirection() { return cast(WORD)((_bitfield >> 5) & 0x1); } - WORD fOverrideDirection(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFDF) | (val << 5)); return val; } - WORD fInhibitSymSwap() { return cast(WORD)((_bitfield >> 6) & 0x1); } - WORD fInhibitSymSwap(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFBF) | (val << 6)); return val; } - WORD fCharShape() { return cast(WORD)((_bitfield >> 7) & 0x1); } - WORD fCharShape(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFF7F) | (val << 7)); return val; } - WORD fDigitSubstitute() { return cast(WORD)((_bitfield >> 8) & 0x1); } - WORD fDigitSubstitute(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFEFF) | (val << 8)); return val; } - WORD fInhibitLigate() { return cast(WORD)((_bitfield >> 9) & 0x1); } - WORD fInhibitLigate(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFDFF) | (val << 9)); return val; } - WORD fDisplayZWG() { return cast(WORD)((_bitfield >> 10) & 0x1); } - WORD fDisplayZWG(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFBFF) | (val << 10)); return val; } - WORD fArabicNumContext() { return cast(WORD)((_bitfield >> 11) & 0x1); } - WORD fArabicNumContext(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFF7FF) | (val << 11)); return val; } - WORD fGcpClusters() { return cast(WORD)((_bitfield >> 12) & 0x1); } - WORD fGcpClusters(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFEFFF) | (val << 12)); return val; } - WORD fReserved() { return cast(WORD)((_bitfield >> 13) & 0x1); } - WORD fReserved(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFDFFF) | (val << 13)); return val; } - WORD fEngineReserved() { return cast(WORD)((_bitfield >> 14) & 0x3); } - WORD fEngineReserved(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFF3FFF) | (val << 14)); return val; } - } - - - struct SCRIPT_ANALYSIS - { - private WORD _bitfield; - WORD eScript() { return cast(WORD)((_bitfield >> 0) & 0x3FF); } - WORD eScript(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFC00) | (val << 0)); return val; } - WORD fRTL() { return cast(WORD)((_bitfield >> 10) & 0x1); } - WORD fRTL(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFBFF) | (val << 10)); return val; } - WORD fLayoutRTL() { return cast(WORD)((_bitfield >> 11) & 0x1); } - WORD fLayoutRTL(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFF7FF) | (val << 11)); return val; } - WORD fLinkBefore() { return cast(WORD)((_bitfield >> 12) & 0x1); } - WORD fLinkBefore(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFEFFF) | (val << 12)); return val; } - WORD fLinkAfter() { return cast(WORD)((_bitfield >> 13) & 0x1); } - WORD fLinkAfter(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFDFFF) | (val << 13)); return val; } - WORD fLogicalOrder() { return cast(WORD)((_bitfield >> 14) & 0x1); } - WORD fLogicalOrder(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFBFFF) | (val << 14)); return val; } - WORD fNoGlyphIndex() { return cast(WORD)((_bitfield >> 15) & 0x1); } - WORD fNoGlyphIndex(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFF7FFF) | (val << 15)); return val; } - SCRIPT_STATE s; - } - - - struct SCRIPT_ITEM - { - int iCharPos; - SCRIPT_ANALYSIS a; - } - - struct SCRIPT_VISATTR - { - private WORD _bitfield; - WORD uJustification() { return cast(WORD)((_bitfield >> 0) & 0xF); } - WORD uJustification(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFF0) | (val << 0)); return val; } - WORD fClusterStart() { return cast(WORD)((_bitfield >> 4) & 0x1); } - WORD fClusterStart(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFEF) | (val << 4)); return val; } - WORD fDiacritic() { return cast(WORD)((_bitfield >> 5) & 0x1); } - WORD fDiacritic(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFDF) | (val << 5)); return val; } - WORD fZeroWidth() { return cast(WORD)((_bitfield >> 6) & 0x1); } - WORD fZeroWidth(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFFBF) | (val << 6)); return val; } - WORD fReserved() { return cast(WORD)((_bitfield >> 7) & 0x1); } - WORD fReserved(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFFFF7F) | (val << 7)); return val; } - WORD fShapeReserved() { return cast(WORD)((_bitfield >> 8) & 0xFF); } - WORD fShapeReserved(WORD val) { _bitfield = cast(WORD)((_bitfield & 0xFFFFFFFFFFFF00FF) | (val << 8)); return val; } - } - - struct GOFFSET - { - LONG du; - LONG dv; - } - - struct SCRIPT_LOGATTR - { - BYTE _bitfield; - BYTE fSoftBreak() { return cast(BYTE)((_bitfield >> 0) & 0x1); } - BYTE fSoftBreak(BYTE val) { _bitfield = cast(BYTE)((_bitfield & 0xFFFFFFFFFFFFFFFE) | (val << 0)); return val; } - BYTE fWhiteSpace() { return cast(BYTE)((_bitfield >> 1) & 0x1); } - BYTE fWhiteSpace(BYTE val) { _bitfield = cast(BYTE)((_bitfield & 0xFFFFFFFFFFFFFFFD) | (val << 1)); return val; } - BYTE fCharStop() { return cast(BYTE)((_bitfield >> 2) & 0x1); } - BYTE fCharStop(BYTE val) { _bitfield = cast(BYTE)((_bitfield & 0xFFFFFFFFFFFFFFFB) | (val << 2)); return val; } - BYTE fWordStop() { return cast(BYTE)((_bitfield >> 3) & 0x1); } - BYTE fWordStop(BYTE val) { _bitfield = cast(BYTE)((_bitfield & 0xFFFFFFFFFFFFFFF7) | (val << 3)); return val; } - BYTE fInvalid() { return cast(BYTE)((_bitfield >> 4) & 0x1); } - BYTE fInvalid(BYTE val) { _bitfield = cast(BYTE)((_bitfield & 0xFFFFFFFFFFFFFFEF) | (val << 4)); return val; } - BYTE fReserved() { return cast(BYTE)((_bitfield >> 5) & 0x7); } - BYTE fReserved(BYTE val) { _bitfield = cast(BYTE)((_bitfield & 0xFFFFFFFFFFFFFF1F) | (val << 5)); return val; } - } - - struct SCRIPT_PROPERTIES - { - private DWORD _bitfield1; - DWORD langid() { return (_bitfield1 >> 0) & 0xFFFF; } - DWORD langid(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFFFFF0000) | (val << 0)); return val; } - DWORD fNumeric() { return (_bitfield1 >> 16) & 0x1; } - DWORD fNumeric(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFFFFEFFFF) | (val << 16)); return val; } - DWORD fComplex() { return (_bitfield1 >> 17) & 0x1; } - DWORD fComplex(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFFFFDFFFF) | (val << 17)); return val; } - DWORD fNeedsWordBreaking() { return (_bitfield1 >> 18) & 0x1; } - DWORD fNeedsWordBreaking(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFFFFBFFFF) | (val << 18)); return val; } - DWORD fNeedsCaretInfo() { return (_bitfield1 >> 19) & 0x1; } - DWORD fNeedsCaretInfo(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFFFF7FFFF) | (val << 19)); return val; } - DWORD bCharSet() { return (_bitfield1 >> 20) & 0xFF; } - DWORD bCharSet(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFF00FFFFF) | (val << 20)); return val; } - DWORD fControl() { return (_bitfield1 >> 28) & 0x1; } - DWORD fControl(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFEFFFFFFF) | (val << 28)); return val; } - DWORD fPrivateUseArea() { return (_bitfield1 >> 29) & 0x1; } - DWORD fPrivateUseArea(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFDFFFFFFF) | (val << 29)); return val; } - DWORD fNeedsCharacterJustify() { return (_bitfield1 >> 30) & 0x1; } - DWORD fNeedsCharacterJustify(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFBFFFFFFF) | (val << 30)); return val; } - DWORD fInvalidGlyph() { return (_bitfield1 >> 31) & 0x1; } - DWORD fInvalidGlyph(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFF7FFFFFFF) | (val << 31)); return val; } - private DWORD _bitfield2; - DWORD fInvalidLogAttr() { return (_bitfield2 >> 0) & 0x1; } - DWORD fInvalidLogAttr(DWORD val) { _bitfield2 = cast(DWORD)((_bitfield2 & 0xFFFFFFFFFFFFFFFE) | (val << 0)); return val; } - DWORD fCDM() { return (_bitfield2 >> 1) & 0x1; } - DWORD fCDM(DWORD val) { _bitfield2 = cast(DWORD)((_bitfield2 & 0xFFFFFFFFFFFFFFFD) | (val << 1)); return val; } - DWORD fAmbiguousCharSet() { return (_bitfield2 >> 2) & 0x1; } - DWORD fAmbiguousCharSet(DWORD val) { _bitfield2 = cast(DWORD)((_bitfield2 & 0xFFFFFFFFFFFFFFFB) | (val << 2)); return val; } - DWORD fClusterSizeVaries() { return (_bitfield2 >> 3) & 0x1; } - DWORD fClusterSizeVaries(DWORD val) { _bitfield2 = cast(DWORD)((_bitfield2 & 0xFFFFFFFFFFFFFFF7) | (val << 3)); return val; } - DWORD fRejectInvalid() { return (_bitfield2 >> 4) & 0x1; } - DWORD fRejectInvalid(DWORD val) { _bitfield2 = cast(DWORD)((_bitfield2 & 0xFFFFFFFFFFFFFFEF) | (val << 4)); return val; } - } - - struct SCRIPT_FONTPROPERTIES - { - int cBytes = SCRIPT_FONTPROPERTIES.sizeof; - WORD wgBlank; - WORD wgDefault; - WORD wgInvalid; - WORD wgKashida; - int iKashidaWidth; - } - - struct SCRIPT_TABDEF - { - int cTabStops; - int iScale; - int* pTabStops; - int iTabOrigin; - } - - struct SCRIPT_DIGITSUBSTITUTE - { - private DWORD _bitfield1; - DWORD NationalDigitLanguage() { return (_bitfield1 >> 0) & 0xFFFF; } - DWORD NationalDigitLanguage(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFFFFFF0000) | (val << 0)); return val; } - DWORD TraditionalDigitLanguage() { return (_bitfield1 >> 16) & 0xFFFF; } - DWORD TraditionalDigitLanguage(DWORD val) { _bitfield1 = cast(DWORD)((_bitfield1 & 0xFFFFFFFF0000FFFF) | (val << 16)); return val; } - private DWORD _bitfield2; - DWORD DigitSubstitute() { return (_bitfield2 >> 0) & 0xFF; } - DWORD DigitSubstitute(DWORD val) { _bitfield2 = cast(DWORD)((_bitfield2 & 0xFFFFFFFFFFFFFF00) | (val << 0)); return val; } - DWORD dwReserved; - } - - /* TODO: Windows Vista fearured structs - OPENTYPE_FEATURE_RECORD - OPENTYPE_TAG - SCRIPT_CHARPROP - SCRIPT_GLYPHPROP - TEXTRANGE_PROPERTIES - */ -} - - -/* Uniscribe Functions - * http://msdn2.microsoft.com/library/ms776469 */ -extern (Windows) -{ - HRESULT ScriptFreeCache(SCRIPT_CACHE*); - HRESULT ScriptItemize(const(WCHAR)*, int, int, const(SCRIPT_CONTROL)*, const(SCRIPT_STATE)*, SCRIPT_ITEM*, int*); - HRESULT ScriptLayout(int, const(BYTE)*, int*, int*); - HRESULT ScriptShape(HDC, SCRIPT_CACHE*, const(WCHAR)*, int, int, SCRIPT_ANALYSIS*, WORD*, WORD*, SCRIPT_VISATTR*, int*); - HRESULT ScriptPlace(HDC, SCRIPT_CACHE*, const(WORD)*, int, const(SCRIPT_VISATTR)*, SCRIPT_ANALYSIS*, int*, GOFFSET*, ABC*); - HRESULT ScriptTextOut(HDC, SCRIPT_CACHE*, int, int, UINT, const(RECT)*, const(SCRIPT_ANALYSIS)*, const(WCHAR)*, int, const(WORD)*, int, const(int)*, int*, const(GOFFSET)*); - HRESULT ScriptJustify(const(SCRIPT_VISATTR)*, const(int)*, int, int, int, int*); - HRESULT ScriptBreak(const(WCHAR)*, int, const(SCRIPT_ANALYSIS)*, const(SCRIPT_LOGATTR)*); - HRESULT ScriptCPtoX(int, BOOL, int, int, const(WORD)*, const(SCRIPT_VISATTR)*, const(int)*, const(SCRIPT_ANALYSIS)*, int*); - HRESULT ScriptXtoCP(int, int, int, const(WORD)*, const(SCRIPT_VISATTR)*, const(int)*, const(SCRIPT_ANALYSIS)*, int*, int*); - HRESULT ScriptGetLogicalWidths(const(SCRIPT_ANALYSIS)*, int, int, const(int)*, const(WORD)*, const(SCRIPT_VISATTR)*, int*); - HRESULT ScriptApplyLogicalWidth(const(int)*, int, int, const(WORD)*, const(SCRIPT_VISATTR)*, const(int)*, const(SCRIPT_ANALYSIS)*, ABC*, int*); - HRESULT ScriptGetCMap(HDC, SCRIPT_CACHE*, const(WCHAR)*, int, DWORD, WORD*); - HRESULT ScriptGetGlyphABCWidth(HDC, SCRIPT_CACHE*, WORD, ABC*); - HRESULT ScriptGetProperties(const(SCRIPT_PROPERTIES**)*, int*); - HRESULT ScriptGetFontProperties(HDC, SCRIPT_CACHE*, SCRIPT_FONTPROPERTIES*); - HRESULT ScriptCacheGetHeight(HDC, SCRIPT_CACHE*, int*); - HRESULT ScriptIsComplex(const(WCHAR)*, int, DWORD); - HRESULT ScriptRecordDigitSubstitution(LCID, SCRIPT_DIGITSUBSTITUTE*); - HRESULT ScriptApplyDigitSubstitution(const(SCRIPT_DIGITSUBSTITUTE)*, SCRIPT_CONTROL*, SCRIPT_STATE*); - - /* ScriptString Functions - * http://msdn2.microsoft.com/library/ms776485 */ - HRESULT ScriptStringAnalyse(HDC, const(void)*, int, int, int, DWORD, int, SCRIPT_CONTROL*, SCRIPT_STATE*, const(int)*, SCRIPT_TABDEF*, const(BYTE)*, SCRIPT_STRING_ANALYSIS*); - HRESULT ScriptStringFree(SCRIPT_STRING_ANALYSIS*); - const(SIZE)* ScriptString_pSize(SCRIPT_STRING_ANALYSIS); - const(int)* ScriptString_pcOutChars(SCRIPT_STRING_ANALYSIS); - const(SCRIPT_LOGATTR)* ScriptString_pLogAttr(SCRIPT_STRING_ANALYSIS); - HRESULT ScriptStringGetOrder(SCRIPT_STRING_ANALYSIS, UINT*); - HRESULT ScriptStringCPtoX(SCRIPT_STRING_ANALYSIS, int, BOOL, int*); - HRESULT ScriptStringXtoCP(SCRIPT_STRING_ANALYSIS, int, int*, int*); - HRESULT ScriptStringGetLogicalWidths(SCRIPT_STRING_ANALYSIS, int*); - HRESULT ScriptStringValidate(SCRIPT_STRING_ANALYSIS); - HRESULT ScriptStringOut(SCRIPT_STRING_ANALYSIS, int, int, UINT, const(RECT)*, int, int, BOOL); - - /* TODO: Windows Vista fearured functions - ScriptGetFontAlternateGlyphs() - ScriptGetFontFeatureTags() - ScriptGetFontLanguageTags() - ScriptGetFontScriptTags() - ScriptItemizeOpenType() - ScriptPlaceOpenType() - ScriptPositionSingleGlyph() - ScriptShapeOpenType() - ScriptSubstituteSingleGlyph() - */ -} diff --git a/3rdparty-extra/win32/vfw.d b/3rdparty-extra/win32/vfw.d deleted file mode 100644 index 0eb6a15fc..000000000 --- a/3rdparty-extra/win32/vfw.d +++ /dev/null @@ -1,2395 +0,0 @@ -/***********************************************************************\ -* vfw.d * -* * -* Windows API header module * -* written in the D programming language * -* * -* Placed into public domain * -\***********************************************************************/ - -module win32.vfw; -version(Windows): -pragma(lib, "vfw32"); - -private import - win32.commdlg, - win32.wingdi, - win32.mmsystem, - win32.unknwn, - win32.w32api, - win32.windef, - win32.winuser; - -extern(Windows) { - DWORD VideoForWindowsVersion(); - LONG InitVFW(); - LONG TermVFW(); -} - -DWORD MKFOURCC(char ch0, char ch1, char ch2, char ch3) { - return (cast(DWORD)ch0) | ((cast(DWORD)ch1) << 8) | ((cast(DWORD)ch2) << 16) | ((cast(DWORD)ch3) << 24); -} - -/** - * COMPMAN - Installable Compression Manager. - */ - -const ICVERSION = 0x0104; - -alias TypeDef!(HANDLE) HIC; - -const BI_1632 = 0x32333631; - -template aviTWOCC(char c0, char c1) { - const WORD aviTWOCC = c0 | (c1 << 8); -} - -const ICTYPE_VIDEO = mmioFOURCC!('v', 'i', 'd', 'c'); -const ICTYPE_AUDIO = mmioFOURCC!('a', 'u', 'd', 'c'); - -enum { - ICERR_OK = 0, - ICERR_DONTDRAW = 1, - ICERR_NEWPALETTE = 2, - ICERR_GOTOKEYFRAME = 3, - ICERR_STOPDRAWING = 4, -} - -const ICERR_UNSUPPORTED = -1; -const ICERR_BADFORMAT = -2; -const ICERR_MEMORY = -3; -const ICERR_INTERNAL = -4; -const ICERR_BADFLAGS = -5; -const ICERR_BADPARAM = -6; -const ICERR_BADSIZE = -7; -const ICERR_BADHANDLE = -8; -const ICERR_CANTUPDATE = -9; -const ICERR_ABORT = -10; -const ICERR_ERROR = -100; -const ICERR_BADBITDEPTH = -200; -const ICERR_BADIMAGESIZE = -201; - -const ICERR_CUSTOM = -400; - -enum { - ICMODE_COMPRESS = 1, - ICMODE_DECOMPRESS, - ICMODE_FASTDECOMPRESS, - ICMODE_QUERY, - ICMODE_FASTCOMPRESS, - ICMODE_DRAW = 8, -} - -const ICMODE_INTERNALF_FUNCTION32 = 0x8000; -const ICMODE_INTERNALF_MASK = 0x8000; - -enum { - AVIIF_LIST = 0x00000001, - AVIIF_TWOCC = 0x00000002, - AVIIF_KEYFRAME = 0x00000010, -} - -const ICQUALITY_LOW = 0; -const ICQUALITY_HIGH = 10000; -const ICQUALITY_DEFAULT = -1; - -enum { - ICM_USER = DRV_USER + 0x0000, - ICM_RESERVED_LOW = DRV_USER + 0x1000, - ICM_RESERVED_HIGH = DRV_USER + 0x2000, - ICM_RESERVED = ICM_RESERVED_LOW, -} - -// messages - -enum { - ICM_GETSTATE = ICM_RESERVED + 0, - ICM_SETSTATE = ICM_RESERVED + 1, - ICM_GETINFO = ICM_RESERVED + 2, - ICM_CONFIGURE = ICM_RESERVED + 10, - ICM_ABOUT = ICM_RESERVED + 11, - ICM_GETERRORTEXT = ICM_RESERVED + 12, - ICM_GETFORMATNAME = ICM_RESERVED + 20, - ICM_ENUMFORMATS = ICM_RESERVED + 21, - ICM_GETDEFAULTQUALITY = ICM_RESERVED + 30, - ICM_GETQUALITY = ICM_RESERVED + 31, - ICM_SETQUALITY = ICM_RESERVED + 32, - ICM_SET = ICM_RESERVED + 40, - ICM_GET = ICM_RESERVED + 41, -} - -const ICM_FRAMERATE = mmioFOURCC!('F','r','m','R'); -const ICM_KEYFRAMERATE = mmioFOURCC!('K','e','y','R'); - -// ICM specific messages. - -enum { - ICM_COMPRESS_GET_FORMAT = ICM_USER + 4, - ICM_COMPRESS_GET_SIZE = ICM_USER + 5, - ICM_COMPRESS_QUERY = ICM_USER + 6, - ICM_COMPRESS_BEGIN = ICM_USER + 7, - ICM_COMPRESS = ICM_USER + 8, - ICM_COMPRESS_END = ICM_USER + 9, - ICM_DECOMPRESS_GET_FORMAT = ICM_USER + 10, - ICM_DECOMPRESS_QUERY = ICM_USER + 11, - ICM_DECOMPRESS_BEGIN = ICM_USER + 12, - ICM_DECOMPRESS = ICM_USER + 13, - ICM_DECOMPRESS_END = ICM_USER + 14, - ICM_DECOMPRESS_SET_PALETTE = ICM_USER + 29, - ICM_DECOMPRESS_GET_PALETTE = ICM_USER + 30, - ICM_DRAW_QUERY = ICM_USER + 31, - ICM_DRAW_BEGIN = ICM_USER + 15, - ICM_DRAW_GET_PALETTE = ICM_USER + 16, - ICM_DRAW_UPDATE = ICM_USER + 17, - ICM_DRAW_START = ICM_USER + 18, - ICM_DRAW_STOP = ICM_USER + 19, - ICM_DRAW_BITS = ICM_USER + 20, - ICM_DRAW_END = ICM_USER + 21, - ICM_DRAW_GETTIME = ICM_USER + 32, - ICM_DRAW = ICM_USER + 33, - ICM_DRAW_WINDOW = ICM_USER + 34, - ICM_DRAW_SETTIME = ICM_USER + 35, - ICM_DRAW_REALIZE = ICM_USER + 36, - ICM_DRAW_FLUSH = ICM_USER + 37, - ICM_DRAW_RENDERBUFFER = ICM_USER + 38, - ICM_DRAW_START_PLAY = ICM_USER + 39, - ICM_DRAW_STOP_PLAY = ICM_USER + 40, - ICM_DRAW_SUGGESTFORMAT = ICM_USER + 50, - ICM_DRAW_CHANGEPALETTE = ICM_USER + 51, - ICM_DRAW_IDLE = ICM_USER + 52, - ICM_GETBUFFERSWANTED = ICM_USER + 41, - ICM_GETDEFAULTKEYFRAMERATE = ICM_USER + 42, - ICM_DECOMPRESSEX_BEGIN = ICM_USER + 60, - ICM_DECOMPRESSEX_QUERY = ICM_USER + 61, - ICM_DECOMPRESSEX = ICM_USER + 62, - ICM_DECOMPRESSEX_END = ICM_USER + 63, - ICM_COMPRESS_FRAMES_INFO = ICM_USER + 70, - ICM_COMPRESS_FRAMES = ICM_USER + 71, - ICM_SET_STATUS_PROC = ICM_USER + 72, -} - -struct ICOPEN { - DWORD dwSize; - DWORD fccType; - DWORD fccHandler; - DWORD dwVersion; - DWORD dwFlags; - LRESULT dwError; - LPVOID pV1Reserved; - LPVOID pV2Reserved; - DWORD dnDevNode; -} - -struct ICINFO { - DWORD dwSize; - DWORD fccType; - DWORD fccHandler; - DWORD dwFlags; - DWORD dwVersion; - DWORD dwVersionICM; - WCHAR[16] szName; - WCHAR[128] szDescription; - WCHAR[128] szDriver; -} - -enum { - VIDCF_QUALITY = 0x0001, - VIDCF_CRUNCH = 0x0002, - VIDCF_TEMPORAL = 0x0004, - VIDCF_COMPRESSFRAMES = 0x0008, - VIDCF_DRAW = 0x0010, - VIDCF_FASTTEMPORALC = 0x0020, - VIDCF_FASTTEMPORALD = 0x0080, -} - -const ICCOMPRESS_KEYFRAME = 0x00000001L; - -struct ICCOMPRESS { - DWORD dwFlags; - LPBITMAPINFOHEADER lpbiOutput; - LPVOID lpOutput; - LPBITMAPINFOHEADER lpbiInput; - LPVOID lpInput; - LPDWORD lpckid; - LPDWORD lpdwFlags; - LONG lFrameNum; - DWORD dwFrameSize; - DWORD dwQuality; - LPBITMAPINFOHEADER lpbiPrev; - LPVOID lpPrev; -} - -const ICCOMPRESSFRAMES_PADDING = 0x00000001; - -struct ICCOMPRESSFRAMES { - DWORD dwFlags; - LPBITMAPINFOHEADER lpbiOutput; - LPARAM lOutput; - LPBITMAPINFOHEADER lpbiInput; - LPARAM lInput; - LONG lStartFrame; - LONG lFrameCount; - LONG lQuality; - LONG lDataRate; - LONG lKeyRate; - DWORD dwRate; - DWORD dwScale; DWORD dwOverheadPerFrame; - DWORD dwReserved2; - - LONG function(LPARAM lInput, LONG lFrame, LPVOID lpBits, LONG len) GetData; - LONG function(LPARAM lOutput, LONG lFrame, LPVOID lpBits, LONG len) PutData; -} - -enum { - ICSTATUS_START = 0, - ICSTATUS_STATUS = 1, - ICSTATUS_END = 2, - ICSTATUS_ERROR = 3, - ICSTATUS_YIELD = 4, -} - -struct ICSETSTATUSPROC { - DWORD dwFlags; - LPARAM lParam; - LONG function(LPARAM lParam, UINT message, LONG l) Status; -} - -enum { - ICDECOMPRESS_NOTKEYFRAME = 0x08000000, - ICDECOMPRESS_NULLFRAME = 0x10000000, - ICDECOMPRESS_PREROLL = 0x20000000, - ICDECOMPRESS_UPDATE = 0x40000000, - ICDECOMPRESS_HURRYUP = 0x80000000, -} - -struct ICDECOMPRESS { - DWORD dwFlags; - LPBITMAPINFOHEADER lpbiInput; - LPVOID lpInput; - LPBITMAPINFOHEADER lpbiOutput; - LPVOID lpOutput; - DWORD ckid; -} - -struct ICDECOMPRESSEX { - DWORD dwFlags; - LPBITMAPINFOHEADER lpbiSrc; - LPVOID lpSrc; - LPBITMAPINFOHEADER lpbiDst; - LPVOID lpDst; - int xDst; - int yDst; - int dxDst; - int dyDst; - int xSrc; - int ySrc; - int dxSrc; - int dySrc; -} - -enum { - ICDRAW_QUERY = 0x00000001, - ICDRAW_FULLSCREEN = 0x00000002, - ICDRAW_HDC = 0x00000004, - ICDRAW_ANIMATE = 0x00000008, - ICDRAW_CONTINUE = 0x00000010, - ICDRAW_MEMORYDC = 0x00000020, - ICDRAW_UPDATING = 0x00000040, - ICDRAW_RENDER = 0x00000080, - ICDRAW_BUFFER = 0x00000100, -} - -struct ICDRAWBEGIN { - DWORD dwFlags; - HPALETTE hpal; - HWND hwnd; - HDC hdc; - int xDst; - int yDst; - int dxDst; - int dyDst; - LPBITMAPINFOHEADER lpbi; - int xSrc; - int ySrc; - int dxSrc; - int dySrc; - DWORD dwRate; - DWORD dwScale; -} - -enum { - ICDRAW_NOTKEYFRAME = 0x08000000, - ICDRAW_NULLFRAME = 0x10000000, - ICDRAW_PREROLL = 0x20000000, - ICDRAW_UPDATE = 0x40000000, - ICDRAW_HURRYUP = 0x80000000, -} - -struct ICDRAW { - DWORD dwFlags; - LPVOID lpFormat; - LPVOID lpData; - DWORD cbData; - LONG lTime; -} - -struct ICDRAWSUGGEST { - LPBITMAPINFOHEADER lpbiIn; - LPBITMAPINFOHEADER lpbiSuggest; - int dxSrc; - int dySrc; - int dxDst; - int dyDst; - HIC hicDecompressor; -} - -struct ICPALETTE { - DWORD dwFlags; - int iStart; - int iLen; - LPPALETTEENTRY lppe; -} - - -/** - * ICM function declarations - */ - -extern (Windows) { - BOOL ICInfo(DWORD fccType, DWORD fccHandler, ICINFO *lpicinfo); - BOOL ICInstall(DWORD fccType, DWORD fccHandler, LPARAM lParam, LPSTR szDesc, UINT wFlags); - BOOL ICRemove(DWORD fccType, DWORD fccHandler, UINT wFlags); - LRESULT ICGetInfo(HIC hic, ICINFO *picinfo, DWORD cb); - HIC ICOpen(DWORD fccType, DWORD fccHandler, UINT wMode); - HIC ICOpenFunction(DWORD fccType, DWORD fccHandler, UINT wMode, FARPROC lpfnHandler); - LRESULT ICClose(HIC hic); - LRESULT ICSendMessage(HIC hic, UINT msg, DWORD_PTR dw1, DWORD_PTR dw2); -} - -enum { - ICINSTALL_FUNCTION = 0x0001, - ICINSTALL_DRIVER = 0x0002, - ICINSTALL_HDRV = 0x0004, - ICINSTALL_UNICODE = 0x8000, - ICINSTALL_DRIVERW = 0x8002, -} - -// query macros - -const ICMF_CONFIGURE_QUERY = 0x00000001; -const ICMF_ABOUT_QUERY = 0x00000001; - -DWORD ICQueryAbout(HIC hic) { - return ICSendMessage(hic, ICM_ABOUT, -1, ICMF_ABOUT_QUERY) == ICERR_OK; -} - -DWORD ICAbout(HIC hic, HWND hwnd) { - return cast(DWORD) ICSendMessage(hic, ICM_ABOUT, cast(DWORD_PTR) cast(UINT_PTR) hwnd, 0); -} - -DWORD ICQueryConfigure(HIC hic) { - return (ICSendMessage(hic, ICM_CONFIGURE, -1, ICMF_CONFIGURE_QUERY) == ICERR_OK); -} - -DWORD ICConfigure(HIC hic, HWND hwnd) { - return cast(DWORD) ICSendMessage(hic, ICM_CONFIGURE, cast(DWORD_PTR) cast(UINT_PTR) hwnd, 0); -} - -DWORD ICGetState(HIC hic, LPVOID pv, DWORD_PTR cb) { - return cast(DWORD) ICSendMessage(hic, ICM_GETSTATE, cast(DWORD_PTR) pv, cb); -} - -DWORD ICSetState(HIC hic, LPVOID pv, DWORD_PTR cb) { - return cast(DWORD) ICSendMessage(hic, ICM_SETSTATE, cast(DWORD_PTR) pv, cb); -} - -DWORD ICGetStateSize(HIC hic) { - return ICGetState(hic, null, 0); -} - -DWORD dwICValue; - -DWORD ICGetDefaultQuality(HIC hic) { - ICSendMessage(hic, ICM_GETDEFAULTQUALITY, cast(DWORD_PTR)&dwICValue, DWORD.sizeof); - return dwICValue; -} - -DWORD ICGetDefaultKeyFrameRate(HIC hic) { - ICSendMessage(hic, ICM_GETDEFAULTKEYFRAMERATE, cast(DWORD_PTR)&dwICValue, DWORD.sizeof); - return dwICValue; -} - -DWORD ICDrawWindow(HIC hic, LPVOID prc) { - return cast(DWORD) ICSendMessage(hic, ICM_DRAW_WINDOW, cast(DWORD_PTR) prc, RECT.sizeof); -} - -extern (Windows) { - DWORD ICCompress(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiOutput, LPVOID lpData, - LPBITMAPINFOHEADER lpbiInput, LPVOID lpBits, LPDWORD lpckid, LPDWORD lpdwFlags, - LONG lFrameNum, DWORD dwFrameSize, DWORD dwQuality, LPBITMAPINFOHEADER lpbiPrev, LPVOID lpPrev); -} - -LRESULT ICCompressBegin(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return ICSendMessage(hic, ICM_COMPRESS_BEGIN, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LRESULT ICCompressQuery(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return ICSendMessage(hic, ICM_COMPRESS_QUERY, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LRESULT ICCompressGetFormat(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return ICSendMessage(hic, ICM_COMPRESS_GET_FORMAT, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -DWORD ICCompressGetFormatSize(HIC hic, LPVOID lpbi) { - return cast(DWORD)ICCompressGetFormat(hic, lpbi, null); -} -DWORD ICCompressGetSize(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return cast(DWORD)ICSendMessage(hic, ICM_COMPRESS_GET_SIZE, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LRESULT ICCompressEnd(HIC hic) { - return ICSendMessage(hic, ICM_COMPRESS_END, 0, 0); -} - -extern (Windows) { - DWORD ICDecompress(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiFormat, LPVOID lpData, LPBITMAPINFOHEADER lpbi, LPVOID lpBits); -} - -LRESULT ICDecompressBegin(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return ICSendMessage(hic, ICM_DECOMPRESS_BEGIN, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LRESULT ICDecompressQuery(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return ICSendMessage(hic, ICM_DECOMPRESS_QUERY, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LONG ICDecompressGetFormat(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return cast(LONG)ICSendMessage(hic, ICM_DECOMPRESS_GET_FORMAT, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LONG ICDecompressGetFormatSize(HIC hic, LPVOID lpbi) { - return ICDecompressGetFormat(hic, lpbi, null); -} -LRESULT ICDecompressGetPalette(HIC hic, LPVOID lpbiInput, LPVOID lpbiOutput) { - return ICSendMessage(hic, ICM_DECOMPRESS_GET_PALETTE, cast(DWORD_PTR)lpbiInput, cast(DWORD_PTR)lpbiOutput); -} -LRESULT ICDecompressSetPalette(HIC hic, LPVOID lpbiPalette) { - return ICSendMessage(hic, ICM_DECOMPRESS_SET_PALETTE, cast(DWORD_PTR)lpbiPalette, 0); -} -LRESULT ICDecompressEnd(HIC hic) { - return ICSendMessage(hic, ICM_DECOMPRESS_END, 0, 0); -} - -LRESULT ICDecompressEx(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiSrc, - LPVOID lpSrc, int xSrc, int ySrc, int dxSrc, int dySrc, LPBITMAPINFOHEADER lpbiDst, - LPVOID lpDst, int xDst, int yDst, int dxDst, int dyDst) { - ICDECOMPRESSEX ic; - - ic.dwFlags = dwFlags; - ic.lpbiSrc = lpbiSrc; - ic.lpSrc = lpSrc; - ic.xSrc = xSrc; - ic.ySrc = ySrc; - ic.dxSrc = dxSrc; - ic.dySrc = dySrc; - ic.lpbiDst = lpbiDst; - ic.lpDst = lpDst; - ic.xDst = xDst; - ic.yDst = yDst; - ic.dxDst = dxDst; - ic.dyDst = dyDst; - - return ICSendMessage(hic, ICM_DECOMPRESSEX, cast(DWORD_PTR)&ic, ic.sizeof); -} - -LRESULT ICDecompressExBegin(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiSrc, - LPVOID lpSrc, int xSrc, int ySrc, int dxSrc, int dySrc, LPBITMAPINFOHEADER lpbiDst, - LPVOID lpDst, int xDst, int yDst, int dxDst, int dyDst) { - ICDECOMPRESSEX ic; - - ic.dwFlags = dwFlags; - ic.lpbiSrc = lpbiSrc; - ic.lpSrc = lpSrc; - ic.xSrc = xSrc; - ic.ySrc = ySrc; - ic.dxSrc = dxSrc; - ic.dySrc = dySrc; - ic.lpbiDst = lpbiDst; - ic.lpDst = lpDst; - ic.xDst = xDst; - ic.yDst = yDst; - ic.dxDst = dxDst; - ic.dyDst = dyDst; - - return ICSendMessage(hic, ICM_DECOMPRESSEX_BEGIN, cast(DWORD_PTR)&ic, ic.sizeof); -} - -LRESULT ICDecompressExQuery(HIC hic, DWORD dwFlags, LPBITMAPINFOHEADER lpbiSrc, - LPVOID lpSrc, int xSrc, int ySrc, int dxSrc, int dySrc, LPBITMAPINFOHEADER lpbiDst, - LPVOID lpDst, int xDst, int yDst, int dxDst, int dyDst) { - ICDECOMPRESSEX ic; - - ic.dwFlags = dwFlags; - ic.lpbiSrc = lpbiSrc; - ic.lpSrc = lpSrc; - ic.xSrc = xSrc; - ic.ySrc = ySrc; - ic.dxSrc = dxSrc; - ic.dySrc = dySrc; - ic.lpbiDst = lpbiDst; - ic.lpDst = lpDst; - ic.xDst = xDst; - ic.yDst = yDst; - ic.dxDst = dxDst; - ic.dyDst = dyDst; - - return ICSendMessage(hic, ICM_DECOMPRESSEX_QUERY, cast(DWORD_PTR)&ic, ic.sizeof); -} - -LRESULT ICDecompressExEnd(HIC hic) { - return ICSendMessage(hic, ICM_DECOMPRESSEX_END, 0, 0); -} - -extern (Windows) { - DWORD ICDrawBegin(HIC hic, DWORD dwFlags, HPALETTE hpal, HWND hwnd, HDC hdc, - int xDst, int yDst, int dxDst, int dyDst, LPBITMAPINFOHEADER lpbi, - int xSrc, int ySrc, int dxSrc, int dySrc, DWORD dwRate, DWORD dwScale); -} - -extern (Windows) { - DWORD ICDraw(HIC hic, DWORD dwFlags, LPVOID lpFormat, LPVOID lpData, DWORD cbData, LONG lTime); -} - -LRESULT ICDrawSuggestFormat(HIC hic, LPBITMAPINFOHEADER lpbiIn, LPBITMAPINFOHEADER lpbiOut, - int dxSrc, int dySrc, int dxDst, int dyDst, HIC hicDecomp) { - ICDRAWSUGGEST ic; - - ic.lpbiIn = lpbiIn; - ic.lpbiSuggest = lpbiOut; - ic.dxSrc = dxSrc; - ic.dySrc = dySrc; - ic.dxDst = dxDst; - ic.dyDst = dyDst; - ic.hicDecompressor = hicDecomp; - - return ICSendMessage(hic, ICM_DRAW_SUGGESTFORMAT, cast(DWORD_PTR)&ic, ic.sizeof); -} - -LRESULT ICDrawQuery(HIC hic, LPVOID lpbiInput) { - return ICSendMessage(hic, ICM_DRAW_QUERY, cast(DWORD_PTR)lpbiInput, 0L); -} -LRESULT ICDrawChangePalette(HIC hic, LPVOID lpbiInput) { - return ICSendMessage(hic, ICM_DRAW_CHANGEPALETTE, cast(DWORD_PTR)lpbiInput, 0L); -} -LRESULT ICGetBuffersWanted(HIC hic, LPVOID lpdwBuffers) { - return ICSendMessage(hic, ICM_GETBUFFERSWANTED, cast(DWORD_PTR)lpdwBuffers, 0); -} -LRESULT ICDrawEnd(HIC hic) { - return ICSendMessage(hic, ICM_DRAW_END, 0, 0); -} -LRESULT ICDrawStart(HIC hic) { - return ICSendMessage(hic, ICM_DRAW_START, 0, 0); -} -LRESULT ICDrawStartPlay(HIC hic, DWORD lFrom, DWORD lTo) { - return ICSendMessage(hic, ICM_DRAW_START_PLAY, cast(DWORD_PTR)lFrom, cast(DWORD_PTR)lTo); -} -LRESULT ICDrawStop(HIC hic) { - return ICSendMessage(hic, ICM_DRAW_STOP, 0, 0); -} -LRESULT ICDrawStopPlay(HIC hic) { - return ICSendMessage(hic, ICM_DRAW_STOP_PLAY, 0, 0); -} -LRESULT ICDrawGetTime(HIC hic, LPVOID lplTime) { - return ICSendMessage(hic, ICM_DRAW_GETTIME, cast(DWORD_PTR)lplTime, 0); -} -LRESULT ICDrawSetTime(HIC hic, DWORD lTime) { - return ICSendMessage(hic, ICM_DRAW_SETTIME, cast(DWORD_PTR)lTime, 0); -} -LRESULT ICDrawRealize(HIC hic, HDC hdc, BOOL fBackground) { - return ICSendMessage(hic, ICM_DRAW_REALIZE, cast(DWORD_PTR)hdc, cast(DWORD_PTR)fBackground); -} -LRESULT ICDrawFlush(HIC hic) { - return ICSendMessage(hic, ICM_DRAW_FLUSH, 0, 0); -} -LRESULT ICDrawRenderBuffer(HIC hic) { - return ICSendMessage(hic, ICM_DRAW_RENDERBUFFER, 0, 0); -} - -LRESULT ICSetStatusProc(HIC hic, DWORD dwFlags, LRESULT lParam, LONG function(LPARAM, UINT, LONG) fpfnStatus) { - ICSETSTATUSPROC ic; - - ic.dwFlags = dwFlags; - ic.lParam = lParam; - ic.Status = fpfnStatus; - - return ICSendMessage(hic, ICM_SET_STATUS_PROC, cast(DWORD_PTR)&ic, ic.sizeof); -} - -HIC ICDecompressOpen(DWORD fccType, DWORD fccHandler, LPBITMAPINFOHEADER lpbiIn, LPBITMAPINFOHEADER lpbiOut) { - return ICLocate(fccType, fccHandler, lpbiIn, lpbiOut, ICMODE_DECOMPRESS); -} - -HIC ICDrawOpen(DWORD fccType, DWORD fccHandler, LPBITMAPINFOHEADER lpbiIn) { - return ICLocate(fccType, fccHandler, lpbiIn, null, ICMODE_DRAW); -} - -extern (Windows) { - HIC ICLocate(DWORD fccType, DWORD fccHandler, LPBITMAPINFOHEADER lpbiIn, LPBITMAPINFOHEADER lpbiOut, WORD wFlags); - HIC ICGetDisplayFormat(HIC hic, LPBITMAPINFOHEADER lpbiIn, LPBITMAPINFOHEADER lpbiOut, int BitDepth, int dx, int dy); - HANDLE ICImageCompress(HIC hic, UINT uiFlags, LPBITMAPINFO lpbiIn, LPVOID lpBits, LPBITMAPINFO lpbiOut, LONG lQuality, LONG* plSize); - HANDLE ICImageDecompress(HIC hic, UINT uiFlags, LPBITMAPINFO lpbiIn, LPVOID lpBits, LPBITMAPINFO lpbiOut); -} - -struct COMPVARS { - LONG cbSize = this.sizeof; - DWORD dwFlags; - HIC hic; - DWORD fccType; - DWORD fccHandler; - LPBITMAPINFO lpbiIn; - LPBITMAPINFO lpbiOut; - LPVOID lpBitsOut; - LPVOID lpBitsPrev; - LONG lFrame; - LONG lKey; - LONG lDataRate; - LONG lQ; - LONG lKeyCount; - LPVOID lpState; - LONG cbState; -} -alias COMPVARS* PCOMPVARS; - -const ICMF_COMPVARS_VALID = 0x00000001; - -extern (Windows) { - BOOL ICCompressorChoose(HWND hwnd, UINT uiFlags, LPVOID pvIn, LPVOID lpData, PCOMPVARS pc, LPSTR lpszTitle); -} - -enum { - ICMF_CHOOSE_KEYFRAME = 0x0001, - ICMF_CHOOSE_DATARATE = 0x0002, - ICMF_CHOOSE_PREVIEW = 0x0004, - ICMF_CHOOSE_ALLCOMPRESSORS = 0x0008, -} - -extern (Windows) { - BOOL ICSeqCompressFrameStart(PCOMPVARS pc, LPBITMAPINFO lpbiIn); - void ICSeqCompressFrameEnd(PCOMPVARS pc); - LPVOID ICSeqCompressFrame(PCOMPVARS pc, UINT uiFlags, LPVOID lpBits, BOOL* pfKey, LONG* plSize); - void ICCompressorFree(PCOMPVARS pc); -} - -mixin DECLARE_HANDLE!("HDRAWDIB"); - -enum { - DDF_0001 = 0x0001, - DDF_UPDATE = 0x0002, - DDF_SAME_HDC = 0x0004, - DDF_SAME_DRAW = 0x0008, - DDF_DONTDRAW = 0x0010, - DDF_ANIMATE = 0x0020, - DDF_BUFFER = 0x0040, - DDF_JUSTDRAWIT = 0x0080, - DDF_FULLSCREEN = 0x0100, - DDF_BACKGROUNDPAL = 0x0200, - DDF_NOTKEYFRAME = 0x0400, - DDF_HURRYUP = 0x0800, - DDF_HALFTONE = 0x1000, - DDF_2000 = 0x2000, - DDF_PREROLL = DDF_DONTDRAW, - DDF_SAME_DIB = DDF_SAME_DRAW, - DDF_SAME_SIZE = DDF_SAME_DRAW, -} - -extern (Windows) { - BOOL DrawDibInit(); - HDRAWDIB DrawDibOpen(); - BOOL DrawDibClose(HDRAWDIB hdd); - LPVOID DrawDibGetBuffer(HDRAWDIB hdd, LPBITMAPINFOHEADER lpbi, DWORD dwSize, DWORD dwFlags); - UINT DrawDibError(HDRAWDIB hdd); - HPALETTE DrawDibGetPalette(HDRAWDIB hdd); - BOOL DrawDibSetPalette(HDRAWDIB hdd, HPALETTE hpal); - BOOL DrawDibChangePalette(HDRAWDIB hdd, int iStart, int iLen, LPPALETTEENTRY lppe); - UINT DrawDibRealize(HDRAWDIB hdd, HDC hdc, BOOL fBackground); - BOOL DrawDibStart(HDRAWDIB hdd, DWORD rate); - BOOL DrawDibStop(HDRAWDIB hdd); - BOOL DrawDibBegin(HDRAWDIB hdd, HDC hdc, int dxDst, int dyDst, LPBITMAPINFOHEADER lpbi, int dxSrc, int dySrc, UINT wFlags); - BOOL DrawDibDraw(HDRAWDIB hdd, HDC hdc, int xDst, int yDst, int dxDst, int dyDst, LPBITMAPINFOHEADER lpbi, - LPVOID lpBits, int xSrc, int ySrc, int dxSrc, int dySrc, UINT wFlags); -} - -BOOL DrawDibUpdate(HDRAWDIB hdd, HDC hdc, int x, int y) { - return DrawDibDraw(hdd, hdc, x, y, 0, 0, null, null, 0, 0, 0, 0, DDF_UPDATE); -} - -extern (Windows) { - BOOL DrawDibEnd(HDRAWDIB hdd); -} - -struct DRAWDIBTIME { - LONG timeCount; - LONG timeDraw; - LONG timeDecompress; - LONG timeDither; - LONG timeStretch; - LONG timeBlt; - LONG timeSetDIBits; -} -alias DRAWDIBTIME* LPDRAWDIBTIME; - -extern (Windows) { - BOOL DrawDibTime(HDRAWDIB hdd, LPDRAWDIBTIME lpddtime); -} - -enum { - PD_CAN_DRAW_DIB = 0x0001, - PD_CAN_STRETCHDIB = 0x0002, - PD_STRETCHDIB_1_1_OK = 0x0004, - PD_STRETCHDIB_1_2_OK = 0x0008, - PD_STRETCHDIB_1_N_OK = 0x0010, -} - -extern (Windows) { - LRESULT DrawDibProfileDisplay(LPBITMAPINFOHEADER lpbi); - void StretchDIB(LPBITMAPINFOHEADER biDst, LPVOID lpDst, int DstX, int DstY, - int DstXE, int DstYE, LPBITMAPINFOHEADER biSrc, LPVOID lpSrc, - int SrcX, int SrcY, int SrcXE, int SrcYE); -} - -alias DWORD FOURCC; - -alias WORD TWOCC; - -const formtypeAVI = mmioFOURCC!('A', 'V', 'I', ' '); -const listtypeAVIHEADER = mmioFOURCC!('h', 'd', 'r', 'l'); -const ckidAVIMAINHDR = mmioFOURCC!('a', 'v', 'i', 'h'); -const listtypeSTREAMHEADER = mmioFOURCC!('s', 't', 'r', 'l'); -const ckidSTREAMHEADER = mmioFOURCC!('s', 't', 'r', 'h'); -const ckidSTREAMFORMAT = mmioFOURCC!('s', 't', 'r', 'f'); -const ckidSTREAMHANDLERDATA = mmioFOURCC!('s', 't', 'r', 'd'); -const ckidSTREAMNAME = mmioFOURCC!('s', 't', 'r', 'n'); -const listtypeAVIMOVIE = mmioFOURCC!('m', 'o', 'v', 'i'); -const listtypeAVIRECORD = mmioFOURCC!('r', 'e', 'c', ' '); -const ckidAVINEWINDEX = mmioFOURCC!('i', 'd', 'x', '1'); -const streamtypeVIDEO = mmioFOURCC!('v', 'i', 'd', 's'); -const streamtypeAUDIO = mmioFOURCC!('a', 'u', 'd', 's'); -const streamtypeMIDI = mmioFOURCC!('m', 'i', 'd', 's'); -const streamtypeTEXT = mmioFOURCC!('t', 'x', 't', 's'); - -const cktypeDIBbits = aviTWOCC!('d', 'b'); -const cktypeDIBcompressed = aviTWOCC!('d', 'c'); -const cktypePALchange = aviTWOCC!('p', 'c'); -const cktypeWAVEbytes = aviTWOCC!('w', 'b'); - -const ckidAVIPADDING = mmioFOURCC!('J', 'U', 'N', 'K'); - -DWORD FromHex(char n) { - return (n >= 'A') ? n + 10 - 'A' : n - '0'; -} - -WORD StreamFromFOURCC(DWORD fcc) { - return cast(WORD)((FromHex(LOBYTE(LOWORD(fcc))) << 4) + (FromHex(HIBYTE(LOWORD(fcc))))); -} - -WORD TWOCCFromFOURCC(DWORD fcc) { - return HIWORD(fcc); -} - -BYTE ToHex(DWORD n) { - return cast(BYTE)((n > 9) ? n - 10 + 'A' : n + '0'); -} - -DWORD MAKEAVICKID(WORD tcc, WORD stream) { - return MAKELONG(cast(WORD)((ToHex(stream & 0x0f) << 8) | (ToHex((stream & 0xf0) >> 4))), tcc); -} - -enum { - AVIF_HASINDEX = 0x00000010, - AVIF_MUSTUSEINDEX = 0x00000020, - AVIF_ISINTERLEAVED = 0x00000100, - AVIF_WASCAPTUREFILE = 0x00010000, - AVIF_COPYRIGHTED = 0x00020000, -} - -const AVI_HEADERSIZE = 2048; - -struct MainAVIHeader { - DWORD dwMicroSecPerFrame; - DWORD dwMaxBytesPerSec; - DWORD dwPaddingGranularity; - DWORD dwFlags; - DWORD dwTotalFrames; - DWORD dwInitialFrames; - DWORD dwStreams; - DWORD dwSuggestedBufferSize; - DWORD dwWidth; - DWORD dwHeight; - DWORD[4] dwReserved; -} - -const AVISF_DISABLED = 0x00000001; - -const AVISF_VIDEO_PALCHANGES = 0x00010000; - -struct AVIStreamHeader { - FOURCC fccType; - FOURCC fccHandler; - DWORD dwFlags; - WORD wPriority; - WORD wLanguage; - DWORD dwInitialFrames; - DWORD dwScale; - DWORD dwRate; - DWORD dwStart; - DWORD dwLength; - DWORD dwSuggestedBufferSize; - DWORD dwQuality; - DWORD dwSampleSize; - RECT rcFrame; -} - -enum { - AVIIF_FIRSTPART = 0x00000020L, - AVIIF_LASTPART = 0x00000040L, - AVIIF_MIDPART = (AVIIF_LASTPART|AVIIF_FIRSTPART), - AVIIF_NOTIME = 0x00000100L, - AVIIF_COMPUSE = 0x0FFF0000L, -} - -struct AVIINDEXENTRY { - DWORD ckid; - DWORD dwFlags; - DWORD dwChunkOffset; - DWORD dwChunkLength; -} - -struct AVIPALCHANGE { - BYTE bFirstEntry; - BYTE bNumEntries; - WORD wFlags; - PALETTEENTRY peNew[]; -} - -const AVIGETFRAMEF_BESTDISPLAYFMT = 1; - -struct AVISTREAMINFOW { - DWORD fccType; - DWORD fccHandler; - DWORD dwFlags; - DWORD dwCaps; - WORD wPriority; - WORD wLanguage; - DWORD dwScale; - DWORD dwRate; - DWORD dwStart; - DWORD dwLength; - DWORD dwInitialFrames; - DWORD dwSuggestedBufferSize; - DWORD dwQuality; - DWORD dwSampleSize; - RECT rcFrame; - DWORD dwEditCount; - DWORD dwFormatChangeCount; - WCHAR[64] szName; -} -alias AVISTREAMINFOW* LPAVISTREAMINFOW; - -struct AVISTREAMINFOA { - DWORD fccType; - DWORD fccHandler; - DWORD dwFlags; - DWORD dwCaps; - WORD wPriority; - WORD wLanguage; - DWORD dwScale; - DWORD dwRate; - DWORD dwStart; - DWORD dwLength; - DWORD dwInitialFrames; - DWORD dwSuggestedBufferSize; - DWORD dwQuality; - DWORD dwSampleSize; - RECT rcFrame; - DWORD dwEditCount; - DWORD dwFormatChangeCount; - char[64] szName; -} -alias AVISTREAMINFOA* LPAVISTREAMINFOA; - -version(Unicode) { - alias AVISTREAMINFOW AVISTREAMINFO; - alias LPAVISTREAMINFOW LPAVISTREAMINFO; -} else { // Unicode - alias AVISTREAMINFOA AVISTREAMINFO; - alias LPAVISTREAMINFOA LPAVISTREAMINFO; -} - -const AVISTREAMINFO_DISABLED = 0x00000001; -const AVISTREAMINFO_FORMATCHANGES = 0x00010000; - -struct AVIFILEINFOW { - DWORD dwMaxBytesPerSec; - DWORD dwFlags; - DWORD dwCaps; - DWORD dwStreams; - DWORD dwSuggestedBufferSize; - DWORD dwWidth; - DWORD dwHeight; - DWORD dwScale; - DWORD dwRate; - DWORD dwLength; - DWORD dwEditCount; - WCHAR[64] szFileType; -} -alias AVIFILEINFOW* LPAVIFILEINFOW; - -struct AVIFILEINFOA { - DWORD dwMaxBytesPerSec; - DWORD dwFlags; - DWORD dwCaps; - DWORD dwStreams; - DWORD dwSuggestedBufferSize; - DWORD dwWidth; - DWORD dwHeight; - DWORD dwScale; - DWORD dwRate; - DWORD dwLength; - DWORD dwEditCount; - char[64] szFileType; -} -alias AVIFILEINFOA* LPAVIFILEINFOA; - -version(Unicode) { - alias AVIFILEINFOW AVIFILEINFO; - alias LPAVIFILEINFOW LPAVIFILEINFO; -} else { // Unicode - alias AVIFILEINFOA AVIFILEINFO; - alias LPAVIFILEINFOA LPAVIFILEINFO; -} - -enum { - AVIFILEINFO_HASINDEX = 0x00000010, - AVIFILEINFO_MUSTUSEINDEX = 0x00000020, - AVIFILEINFO_ISINTERLEAVED = 0x00000100, - AVIFILEINFO_WASCAPTUREFILE = 0x00010000, - AVIFILEINFO_COPYRIGHTED = 0x00020000, -} - -enum { - AVIFILECAPS_CANREAD = 0x00000001, - AVIFILECAPS_CANWRITE = 0x00000002, - AVIFILECAPS_ALLKEYFRAMES = 0x00000010, - AVIFILECAPS_NOCOMPRESSION = 0x00000020, -} - -extern (Windows) { - alias BOOL function(int) AVISAVECALLBACK; -} - -struct AVICOMPRESSOPTIONS { - DWORD fccType; - DWORD fccHandler; - DWORD dwKeyFrameEvery; - DWORD dwQuality; - DWORD dwBytesPerSecond; - DWORD dwFlags; - LPVOID lpFormat; - DWORD cbFormat; - LPVOID lpParms; - DWORD cbParms; - DWORD dwInterleaveEvery; -} -alias AVICOMPRESSOPTIONS* LPAVICOMPRESSOPTIONS; - -enum { - AVICOMPRESSF_INTERLEAVE = 0x00000001, - AVICOMPRESSF_DATARATE = 0x00000002, - AVICOMPRESSF_KEYFRAMES = 0x00000004, - AVICOMPRESSF_VALID = 0x00000008, -} - -/+ TODO: -DECLARE_INTERFACE_(IAVIStream, IUnknown) -{ - STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; - STDMETHOD_(ULONG,AddRef) (THIS) PURE; - STDMETHOD_(ULONG,Release) (THIS) PURE; - - STDMETHOD(Create) (THIS_ LPARAM lParam1, LPARAM lParam2) PURE ; - STDMETHOD(Info) (THIS_ AVISTREAMINFOW FAR * psi, LONG lSize) PURE ; - STDMETHOD_(LONG, FindSample)(THIS_ LONG lPos, LONG lFlags) PURE ; - STDMETHOD(ReadFormat) (THIS_ LONG lPos, - LPVOID lpFormat, LONG FAR *lpcbFormat) PURE ; - STDMETHOD(SetFormat) (THIS_ LONG lPos, - LPVOID lpFormat, LONG cbFormat) PURE ; - STDMETHOD(Read) (THIS_ LONG lStart, LONG lSamples, - LPVOID lpBuffer, LONG cbBuffer, - LONG FAR * plBytes, LONG FAR * plSamples) PURE ; - STDMETHOD(Write) (THIS_ LONG lStart, LONG lSamples, - LPVOID lpBuffer, LONG cbBuffer, - DWORD dwFlags, - LONG FAR *plSampWritten, - LONG FAR *plBytesWritten) PURE ; - STDMETHOD(Delete) (THIS_ LONG lStart, LONG lSamples) PURE; - STDMETHOD(ReadData) (THIS_ DWORD fcc, LPVOID lp, LONG FAR *lpcb) PURE ; - STDMETHOD(WriteData) (THIS_ DWORD fcc, LPVOID lp, LONG cb) PURE ; -#ifdef _WIN32 - STDMETHOD(SetInfo) (THIS_ AVISTREAMINFOW FAR * lpInfo, - LONG cbInfo) PURE; -#else - STDMETHOD(Reserved1) (THIS) PURE; - STDMETHOD(Reserved2) (THIS) PURE; - STDMETHOD(Reserved3) (THIS) PURE; - STDMETHOD(Reserved4) (THIS) PURE; - STDMETHOD(Reserved5) (THIS) PURE; -#endif -}; - -alias TypeDef!(IAVIStream FAR*) PAVISTREAM; - -#undef INTERFACE -#define INTERFACE IAVIStreaming - -DECLARE_INTERFACE_(IAVIStreaming, IUnknown) -{ - STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; - STDMETHOD_(ULONG,AddRef) (THIS) PURE; - STDMETHOD_(ULONG,Release) (THIS) PURE; - - STDMETHOD(Begin) (THIS_ - LONG lStart, - LONG lEnd, - LONG lRate) PURE; - STDMETHOD(End) (THIS) PURE; -}; - -alias TypeDef!(IAVIStreaming FAR*) PAVISTREAMING; - - -#undef INTERFACE -#define INTERFACE IAVIEditStream - -DECLARE_INTERFACE_(IAVIEditStream, IUnknown) -{ - STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; - STDMETHOD_(ULONG,AddRef) (THIS) PURE; - STDMETHOD_(ULONG,Release) (THIS) PURE; - - STDMETHOD(Cut) (THIS_ LONG FAR *plStart, - LONG FAR *plLength, - PAVISTREAM FAR * ppResult) PURE; - STDMETHOD(Copy) (THIS_ LONG FAR *plStart, - LONG FAR *plLength, - PAVISTREAM FAR * ppResult) PURE; - STDMETHOD(Paste) (THIS_ LONG FAR *plPos, - LONG FAR *plLength, - PAVISTREAM pstream, - LONG lStart, - LONG lEnd) PURE; - STDMETHOD(Clone) (THIS_ PAVISTREAM FAR *ppResult) PURE; - STDMETHOD(SetInfo) (THIS_ AVISTREAMINFOW FAR * lpInfo, - LONG cbInfo) PURE; -}; - -alias TypeDef!(IAVIEditStream FAR*) PAVIEDITSTREAM; - -#undef INTERFACE -#define INTERFACE IAVIPersistFile - -DECLARE_INTERFACE_(IAVIPersistFile, IPersistFile) -{ - STDMETHOD(Reserved1)(THIS) PURE; -}; - -alias TypeDef!(IAVIPersistFile FAR*) PAVIPERSISTFILE; - -#undef INTERFACE -#define INTERFACE IAVIFile -#define PAVIFILE IAVIFile FAR* - -DECLARE_INTERFACE_(IAVIFile, IUnknown) -{ - STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; - STDMETHOD_(ULONG,AddRef) (THIS) PURE; - STDMETHOD_(ULONG,Release) (THIS) PURE; - - STDMETHOD(Info) (THIS_ - AVIFILEINFOW FAR * pfi, - LONG lSize) PURE; - STDMETHOD(GetStream) (THIS_ - PAVISTREAM FAR * ppStream, - DWORD fccType, - LONG lParam) PURE; - STDMETHOD(CreateStream) (THIS_ - PAVISTREAM FAR * ppStream, - AVISTREAMINFOW FAR * psi) PURE; - STDMETHOD(WriteData) (THIS_ - DWORD ckid, - LPVOID lpData, - LONG cbData) PURE; - STDMETHOD(ReadData) (THIS_ - DWORD ckid, - LPVOID lpData, - LONG FAR *lpcbData) PURE; - STDMETHOD(EndRecord) (THIS) PURE; - STDMETHOD(DeleteStream) (THIS_ - DWORD fccType, - LONG lParam) PURE; -}; - -#undef PAVIFILE -alias TypeDef!(IAVIFile FAR*) PAVIFILE; - -#undef INTERFACE -#define INTERFACE IGetFrame -#define PGETFRAME IGetFrame FAR* - -DECLARE_INTERFACE_(IGetFrame, IUnknown) -{ - STDMETHOD(QueryInterface) (THIS_ REFIID riid, LPVOID FAR* ppvObj) PURE; - STDMETHOD_(ULONG,AddRef) (THIS) PURE; - STDMETHOD_(ULONG,Release) (THIS) PURE; - - STDMETHOD_(LPVOID,GetFrame) (THIS_ LONG lPos) PURE; - - STDMETHOD(Begin) (THIS_ LONG lStart, LONG lEnd, LONG lRate) PURE; - STDMETHOD(End) (THIS) PURE; - - STDMETHOD(SetFormat) (THIS_ LPBITMAPINFOHEADER lpbi, LPVOID lpBits, int x, int y, int dx, int dy) PURE; -}; - -#undef PGETFRAME -alias TypeDef!(IGetFrame FAR*) PGETFRAME; - -#define DEFINE_AVIGUID(name, l, w1, w2) DEFINE_GUID(name, l, w1, w2, 0xC0,0,0,0,0,0,0,0x46) - -DEFINE_AVIGUID(IID_IAVIFile, 0x00020020, 0, 0); -DEFINE_AVIGUID(IID_IAVIStream, 0x00020021, 0, 0); -DEFINE_AVIGUID(IID_IAVIStreaming, 0x00020022, 0, 0); -DEFINE_AVIGUID(IID_IGetFrame, 0x00020023, 0, 0); -DEFINE_AVIGUID(IID_IAVIEditStream, 0x00020024, 0, 0); -DEFINE_AVIGUID(IID_IAVIPersistFile, 0x00020025, 0, 0); -#ifndef UNICODE -DEFINE_AVIGUID(CLSID_AVISimpleUnMarshal, 0x00020009, 0, 0); -#endif - -DEFINE_AVIGUID(CLSID_AVIFile, 0x00020000, 0, 0); - -#define AVIFILEHANDLER_CANREAD 0x0001 -#define AVIFILEHANDLER_CANWRITE 0x0002 -#define AVIFILEHANDLER_CANACCEPTNONRGB 0x0004 - -STDAPI_(void) AVIFileInit(void); -STDAPI_(void) AVIFileExit(void); - -STDAPI_(ULONG) AVIFileAddRef (PAVIFILE pfile); -STDAPI_(ULONG) AVIFileRelease (PAVIFILE pfile); - -#ifdef _WIN32 -STDAPI AVIFileOpenA (PAVIFILE FAR * ppfile, LPCSTR szFile, - UINT uMode, LPCLSID lpHandler); -STDAPI AVIFileOpenW (PAVIFILE FAR * ppfile, LPCWSTR szFile, - UINT uMode, LPCLSID lpHandler); -#ifdef UNICODE -#define AVIFileOpen AVIFileOpenW -#else -#define AVIFileOpen AVIFileOpenA -#endif -#else -STDAPI AVIFileOpen (PAVIFILE FAR * ppfile, LPCSTR szFile, - UINT uMode, LPCLSID lpHandler); -#define AVIFileOpenW AVIFileOpen -#endif - -#ifdef _WIN32 -STDAPI AVIFileInfoW (PAVIFILE pfile, LPAVIFILEINFOW pfi, LONG lSize); -STDAPI AVIFileInfoA (PAVIFILE pfile, LPAVIFILEINFOA pfi, LONG lSize); -#ifdef UNICODE -#define AVIFileInfo AVIFileInfoW -#else -#define AVIFileInfo AVIFileInfoA -#endif -#else -STDAPI AVIFileInfo (PAVIFILE pfile, LPAVIFILEINFO pfi, LONG lSize); -#define AVIFileInfoW AVIFileInfo -#endif - - -STDAPI AVIFileGetStream (PAVIFILE pfile, PAVISTREAM FAR * ppavi, DWORD fccType, LONG lParam); - - -#ifdef _WIN32 -STDAPI AVIFileCreateStreamW (PAVIFILE pfile, PAVISTREAM FAR *ppavi, AVISTREAMINFOW FAR * psi); -STDAPI AVIFileCreateStreamA (PAVIFILE pfile, PAVISTREAM FAR *ppavi, AVISTREAMINFOA FAR * psi); -#ifdef UNICODE -#define AVIFileCreateStream AVIFileCreateStreamW -#else -#define AVIFileCreateStream AVIFileCreateStreamA -#endif -#else -STDAPI AVIFileCreateStream(PAVIFILE pfile, PAVISTREAM FAR *ppavi, AVISTREAMINFO FAR * psi); -#define AVIFileCreateStreamW AVIFileCreateStream -#endif - -STDAPI AVIFileWriteData (PAVIFILE pfile, - DWORD ckid, - LPVOID lpData, - LONG cbData); -STDAPI AVIFileReadData (PAVIFILE pfile, - DWORD ckid, - LPVOID lpData, - LONG FAR *lpcbData); -STDAPI AVIFileEndRecord (PAVIFILE pfile); - -STDAPI_(ULONG) AVIStreamAddRef (PAVISTREAM pavi); -STDAPI_(ULONG) AVIStreamRelease (PAVISTREAM pavi); - -STDAPI AVIStreamInfoW (PAVISTREAM pavi, LPAVISTREAMINFOW psi, LONG lSize); -STDAPI AVIStreamInfoA (PAVISTREAM pavi, LPAVISTREAMINFOA psi, LONG lSize); -#ifdef UNICODE -#define AVIStreamInfo AVIStreamInfoW -#else -#define AVIStreamInfo AVIStreamInfoA -#endif - -STDAPI_(LONG) AVIStreamFindSample(PAVISTREAM pavi, LONG lPos, LONG lFlags); -STDAPI AVIStreamReadFormat (PAVISTREAM pavi, LONG lPos,LPVOID lpFormat,LONG FAR *lpcbFormat); -STDAPI AVIStreamSetFormat (PAVISTREAM pavi, LONG lPos,LPVOID lpFormat,LONG cbFormat); -STDAPI AVIStreamReadData (PAVISTREAM pavi, DWORD fcc, LPVOID lp, LONG FAR *lpcb); -STDAPI AVIStreamWriteData (PAVISTREAM pavi, DWORD fcc, LPVOID lp, LONG cb); - -STDAPI AVIStreamRead (PAVISTREAM pavi, - LONG lStart, - LONG lSamples, - LPVOID lpBuffer, - LONG cbBuffer, - LONG FAR * plBytes, - LONG FAR * plSamples); -#define AVISTREAMREAD_CONVENIENT (-1L) - -STDAPI AVIStreamWrite (PAVISTREAM pavi, - LONG lStart, LONG lSamples, - LPVOID lpBuffer, LONG cbBuffer, DWORD dwFlags, - LONG FAR *plSampWritten, - LONG FAR *plBytesWritten); - -STDAPI_(LONG) AVIStreamStart (PAVISTREAM pavi); -STDAPI_(LONG) AVIStreamLength (PAVISTREAM pavi); -STDAPI_(LONG) AVIStreamTimeToSample (PAVISTREAM pavi, LONG lTime); -STDAPI_(LONG) AVIStreamSampleToTime (PAVISTREAM pavi, LONG lSample); - - -STDAPI AVIStreamBeginStreaming(PAVISTREAM pavi, LONG lStart, LONG lEnd, LONG lRate); -STDAPI AVIStreamEndStreaming(PAVISTREAM pavi); - -STDAPI_(PGETFRAME) AVIStreamGetFrameOpen(PAVISTREAM pavi, - LPBITMAPINFOHEADER lpbiWanted); -STDAPI_(LPVOID) AVIStreamGetFrame(PGETFRAME pg, LONG lPos); -STDAPI AVIStreamGetFrameClose(PGETFRAME pg); - -STDAPI AVIStreamOpenFromFileA(PAVISTREAM FAR *ppavi, LPCSTR szFile, - DWORD fccType, LONG lParam, - UINT mode, CLSID FAR *pclsidHandler); -STDAPI AVIStreamOpenFromFileW(PAVISTREAM FAR *ppavi, LPCWSTR szFile, - DWORD fccType, LONG lParam, - UINT mode, CLSID FAR *pclsidHandler); -#ifdef UNICODE -#define AVIStreamOpenFromFile AVIStreamOpenFromFileW -#else -#define AVIStreamOpenFromFile AVIStreamOpenFromFileA -#endif - -STDAPI AVIStreamCreate(PAVISTREAM FAR *ppavi, LONG lParam1, LONG lParam2, - CLSID FAR *pclsidHandler); - - - -#define FIND_DIR 0x0000000FL -#define FIND_NEXT 0x00000001L -#define FIND_PREV 0x00000004L -#define FIND_FROM_START 0x00000008L - -#define FIND_TYPE 0x000000F0L -#define FIND_KEY 0x00000010L -#define FIND_ANY 0x00000020L -#define FIND_FORMAT 0x00000040L - -#define FIND_RET 0x0000F000L -#define FIND_POS 0x00000000L -#define FIND_LENGTH 0x00001000L -#define FIND_OFFSET 0x00002000L -#define FIND_SIZE 0x00003000L -#define FIND_INDEX 0x00004000L - -#define AVIStreamFindKeyFrame AVIStreamFindSample -#define FindKeyFrame FindSample - -#define AVIStreamClose AVIStreamRelease -#define AVIFileClose AVIFileRelease -#define AVIStreamInit AVIFileInit -#define AVIStreamExit AVIFileExit - -#define SEARCH_NEAREST FIND_PREV -#define SEARCH_BACKWARD FIND_PREV -#define SEARCH_FORWARD FIND_NEXT -#define SEARCH_KEY FIND_KEY -#define SEARCH_ANY FIND_ANY - -#define AVIStreamSampleToSample(pavi1, pavi2, l) AVIStreamTimeToSample(pavi1,AVIStreamSampleToTime(pavi2, l)) - -#define AVIStreamNextSample(pavi, l) AVIStreamFindSample(pavi,l+1,FIND_NEXT|FIND_ANY) - -#define AVIStreamPrevSample(pavi, l) AVIStreamFindSample(pavi,l-1,FIND_PREV|FIND_ANY) - -#define AVIStreamNearestSample(pavi, l) AVIStreamFindSample(pavi,l,FIND_PREV|FIND_ANY) - -#define AVIStreamNextKeyFrame(pavi,l) AVIStreamFindSample(pavi,l+1,FIND_NEXT|FIND_KEY) - -#define AVIStreamPrevKeyFrame(pavi, l) AVIStreamFindSample(pavi,l-1,FIND_PREV|FIND_KEY) - -#define AVIStreamNearestKeyFrame(pavi, l) AVIStreamFindSample(pavi,l,FIND_PREV|FIND_KEY) - -#define AVIStreamIsKeyFrame(pavi, l) (AVIStreamNearestKeyFrame(pavi,l) == l) - -#define AVIStreamPrevSampleTime(pavi, t) AVIStreamSampleToTime(pavi, AVIStreamPrevSample(pavi,AVIStreamTimeToSample(pavi,t))) - -#define AVIStreamNextSampleTime(pavi, t) AVIStreamSampleToTime(pavi, AVIStreamNextSample(pavi,AVIStreamTimeToSample(pavi,t))) - -#define AVIStreamNearestSampleTime(pavi, t) AVIStreamSampleToTime(pavi, AVIStreamNearestSample(pavi,AVIStreamTimeToSample(pavi,t))) - -#define AVIStreamNextKeyFrameTime(pavi, t) AVIStreamSampleToTime(pavi, AVIStreamNextKeyFrame(pavi,AVIStreamTimeToSample(pavi, t))) - -#define AVIStreamPrevKeyFrameTime(pavi, t) AVIStreamSampleToTime(pavi, AVIStreamPrevKeyFrame(pavi,AVIStreamTimeToSample(pavi, t))) - -#define AVIStreamNearestKeyFrameTime(pavi, t) AVIStreamSampleToTime(pavi, AVIStreamNearestKeyFrame(pavi,AVIStreamTimeToSample(pavi, t))) - -#define AVIStreamStartTime(pavi) AVIStreamSampleToTime(pavi, AVIStreamStart(pavi)) - -#define AVIStreamLengthTime(pavi) AVIStreamSampleToTime(pavi, AVIStreamLength(pavi)) - -#define AVIStreamEnd(pavi) (AVIStreamStart(pavi) + AVIStreamLength(pavi)) - -#define AVIStreamEndTime(pavi) AVIStreamSampleToTime(pavi, AVIStreamEnd(pavi)) - -#define AVIStreamSampleSize(pavi, lPos, plSize) AVIStreamRead(pavi,lPos,1,NULL,0,plSize,NULL) - -#define AVIStreamFormatSize(pavi, lPos, plSize) AVIStreamReadFormat(pavi,lPos,NULL,plSize) - -#define AVIStreamDataSize(pavi, fcc, plSize) AVIStreamReadData(pavi,fcc,NULL,plSize) - -#ifndef comptypeDIB -#define comptypeDIB mmioFOURCC('D', 'I', 'B', ' ') -#endif - -STDAPI AVIMakeCompressedStream( - PAVISTREAM FAR * ppsCompressed, - PAVISTREAM ppsSource, - AVICOMPRESSOPTIONS FAR * lpOptions, - CLSID FAR *pclsidHandler); - -EXTERN_C HRESULT CDECL AVISaveA (LPCSTR szFile, - CLSID FAR *pclsidHandler, - AVISAVECALLBACK lpfnCallback, - int nStreams, - PAVISTREAM pfile, - LPAVICOMPRESSOPTIONS lpOptions, - ...); - -STDAPI AVISaveVA(LPCSTR szFile, - CLSID FAR *pclsidHandler, - AVISAVECALLBACK lpfnCallback, - int nStreams, - PAVISTREAM FAR * ppavi, - LPAVICOMPRESSOPTIONS FAR *plpOptions); -EXTERN_C HRESULT CDECL AVISaveW (LPCWSTR szFile, - CLSID FAR *pclsidHandler, - AVISAVECALLBACK lpfnCallback, - int nStreams, - PAVISTREAM pfile, - LPAVICOMPRESSOPTIONS lpOptions, - ...); - -STDAPI AVISaveVW(LPCWSTR szFile, - CLSID FAR *pclsidHandler, - AVISAVECALLBACK lpfnCallback, - int nStreams, - PAVISTREAM FAR * ppavi, - LPAVICOMPRESSOPTIONS FAR *plpOptions); -#ifdef UNICODE -#define AVISave AVISaveW -#define AVISaveV AVISaveVW -#else -#define AVISave AVISaveA -#define AVISaveV AVISaveVA -#endif - - - -STDAPI_(INT_PTR) AVISaveOptions(HWND hwnd, - UINT uiFlags, - int nStreams, - PAVISTREAM FAR *ppavi, - LPAVICOMPRESSOPTIONS FAR *plpOptions); - -STDAPI AVISaveOptionsFree(int nStreams, - LPAVICOMPRESSOPTIONS FAR *plpOptions); - -STDAPI AVIBuildFilterW(LPWSTR lpszFilter, LONG cbFilter, BOOL fSaving); -STDAPI AVIBuildFilterA(LPSTR lpszFilter, LONG cbFilter, BOOL fSaving); -#ifdef UNICODE -#define AVIBuildFilter AVIBuildFilterW -#else -#define AVIBuildFilter AVIBuildFilterA -#endif -STDAPI AVIMakeFileFromStreams(PAVIFILE FAR * ppfile, - int nStreams, - PAVISTREAM FAR * papStreams); - -STDAPI AVIMakeStreamFromClipboard(UINT cfFormat, HANDLE hGlobal, PAVISTREAM FAR *ppstream); - -STDAPI AVIPutFileOnClipboard(PAVIFILE pf); - -STDAPI AVIGetFromClipboard(PAVIFILE FAR * lppf); - -STDAPI AVIClearClipboard(void); - -STDAPI CreateEditableStream( - PAVISTREAM FAR * ppsEditable, - PAVISTREAM psSource); - -STDAPI EditStreamCut(PAVISTREAM pavi, LONG FAR *plStart, LONG FAR *plLength, PAVISTREAM FAR * ppResult); - -STDAPI EditStreamCopy(PAVISTREAM pavi, LONG FAR *plStart, LONG FAR *plLength, PAVISTREAM FAR * ppResult); - -STDAPI EditStreamPaste(PAVISTREAM pavi, LONG FAR *plPos, LONG FAR *plLength, PAVISTREAM pstream, LONG lStart, LONG lEnd); - -STDAPI EditStreamClone(PAVISTREAM pavi, PAVISTREAM FAR *ppResult); - - -STDAPI EditStreamSetNameA(PAVISTREAM pavi, LPCSTR lpszName); -STDAPI EditStreamSetNameW(PAVISTREAM pavi, LPCWSTR lpszName); -STDAPI EditStreamSetInfoW(PAVISTREAM pavi, LPAVISTREAMINFOW lpInfo, LONG cbInfo); -STDAPI EditStreamSetInfoA(PAVISTREAM pavi, LPAVISTREAMINFOA lpInfo, LONG cbInfo); -#ifdef UNICODE -#define EditStreamSetInfo EditStreamSetInfoW -#define EditStreamSetName EditStreamSetNameW -#else -#define EditStreamSetInfo EditStreamSetInfoA -#define EditStreamSetName EditStreamSetNameA -#endif -+/ -const AVIERR_OK = 0L; - -SCODE MAKE_AVIERR(DWORD error) { - return MAKE_SCODE(SEVERITY_ERROR, FACILITY_ITF, 0x4000 + error); -} - -const AVIERR_UNSUPPORTED = MAKE_AVIERR(101); -const AVIERR_BADFORMAT = MAKE_AVIERR(102); -const AVIERR_MEMORY = MAKE_AVIERR(103); -const AVIERR_INTERNAL = MAKE_AVIERR(104); -const AVIERR_BADFLAGS = MAKE_AVIERR(105); -const AVIERR_BADPARAM = MAKE_AVIERR(106); -const AVIERR_BADSIZE = MAKE_AVIERR(107); -const AVIERR_BADHANDLE = MAKE_AVIERR(108); -const AVIERR_FILEREAD = MAKE_AVIERR(109); -const AVIERR_FILEWRITE = MAKE_AVIERR(110); -const AVIERR_FILEOPEN = MAKE_AVIERR(111); -const AVIERR_COMPRESSOR = MAKE_AVIERR(112); -const AVIERR_NOCOMPRESSOR = MAKE_AVIERR(113); -const AVIERR_READONLY = MAKE_AVIERR(114); -const AVIERR_NODATA = MAKE_AVIERR(115); -const AVIERR_BUFFERTOOSMALL = MAKE_AVIERR(116); -const AVIERR_CANTCOMPRESS = MAKE_AVIERR(117); -const AVIERR_USERABORT = MAKE_AVIERR(198); -const AVIERR_ERROR = MAKE_AVIERR(199); - -const TCHAR[] MCIWND_WINDOW_CLASS = "MCIWndClass"; - -extern (Windows) { - HWND MCIWndCreateA(HWND hwndParent, HINSTANCE hInstance, DWORD dwStyle, LPCSTR szFile); - HWND MCIWndCreateW(HWND hwndParent, HINSTANCE hInstance, DWORD dwStyle, LPCWSTR szFile); -} - -version(Unicode) { - alias MCIWndCreateW MCIWndCreate; -} else { // Unicode - alias MCIWndCreateA MCIWndCreate; -} - -extern(Windows) { - BOOL MCIWndRegisterClass(); -} - -enum { - MCIWNDOPENF_NEW = 0x0001, - MCIWNDF_NOAUTOSIZEWINDOW = 0x0001, - MCIWNDF_NOPLAYBAR = 0x0002, - MCIWNDF_NOAUTOSIZEMOVIE = 0x0004, - MCIWNDF_NOMENU = 0x0008, - MCIWNDF_SHOWNAME = 0x0010, - MCIWNDF_SHOWPOS = 0x0020, - MCIWNDF_SHOWMODE = 0x0040, - MCIWNDF_SHOWALL = 0x0070, - MCIWNDF_NOTIFYMODE = 0x0100, - MCIWNDF_NOTIFYPOS = 0x0200, - MCIWNDF_NOTIFYSIZE = 0x0400, - MCIWNDF_NOTIFYERROR = 0x1000, - MCIWNDF_NOTIFYALL = 0x1F00, - MCIWNDF_NOTIFYANSI = 0x0080, - MCIWNDF_NOTIFYMEDIAA = 0x0880, - MCIWNDF_NOTIFYMEDIAW = 0x0800, -} - -version(Unicode) { - alias MCIWNDF_NOTIFYMEDIAW MCIWNDF_NOTIFYMEDIA; -} else { // Unicode - alias MCIWNDF_NOTIFYMEDIAA MCIWNDF_NOTIFYMEDIA; -} - -enum { - MCIWNDF_RECORD = 0x2000, - MCIWNDF_NOERRORDLG = 0x4000, - MCIWNDF_NOOPEN = 0x8000, -} - -// can macros - -BOOL MCIWndCanPlay(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_CAN_PLAY, 0, 0); } -BOOL MCIWndCanRecord(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_CAN_RECORD, 0, 0); } -BOOL MCIWndCanSave(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_CAN_SAVE, 0, 0); } -BOOL MCIWndCanWindow(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_CAN_WINDOW, 0, 0); } -BOOL MCIWndCanEject(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_CAN_EJECT, 0, 0); } -BOOL MCIWndCanConfig(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_CAN_CONFIG, 0, 0); } -BOOL MCIWndPaletteKick(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_PALETTEKICK, 0, 0); } -LONG MCIWndSave(HWND hwnd, LPVOID szFile) - { return cast(LONG)SendMessage(hwnd, MCI_SAVE, 0, cast(LPARAM)szFile); } -LONG MCIWndSaveDialog(HWND hwnd) - { return MCIWndSave(hwnd, cast(LPVOID)-1); } -LONG MCIWndNew(HWND hwnd, LPVOID lp) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_NEW, 0, cast(LPARAM)lp); } -LONG MCIWndRecord(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCI_RECORD, 0, 0); } -LONG MCIWndOpen(HWND hwnd, LPVOID sz, UINT f) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_OPEN, cast(WPARAM)f, cast(LPARAM)sz); } -LONG MCIWndOpenDialog(HWND hwnd) - { return MCIWndOpen(hwnd, cast(LPVOID)-1, 0); } -LONG MCIWndClose(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCI_CLOSE, 0, 0); } -LONG MCIWndPlay(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCI_PLAY, 0, 0); } -LONG MCIWndStop(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCI_STOP, 0, 0); } -LONG MCIWndPause(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCI_PAUSE, 0, 0); } -LONG MCIWndResume(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCI_RESUME, 0, 0); } -LONG MCIWndSeek(HWND hwnd, LONG lPos) - { return cast(LONG)SendMessage(hwnd, MCI_SEEK, 0, cast(LPARAM)lPos); } -LONG MCIWndHome(HWND hwnd) - { return MCIWndSeek(hwnd, MCIWND_START); } -LONG MCIWndEnd(HWND hwnd) - { return MCIWndSeek(hwnd, MCIWND_END); } -LONG MCIWndEject(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_EJECT, 0, 0); } -LONG MCIWndGetSource(HWND hwnd, LPRECT prc) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GET_SOURCE, 0, cast(LPARAM)prc); } -LONG MCIWndPutSource(HWND hwnd, LPRECT prc) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_PUT_SOURCE, 0, cast(LPARAM)prc); } -LONG MCIWndGetDest(HWND hwnd, LPRECT prc) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GET_DEST, 0, cast(LPARAM)prc); } -LONG MCIWndPutDest(HWND hwnd, LPRECT prc) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_PUT_DEST, 0, cast(LPARAM)prc); } -LONG MCIWndPlayReverse(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_PLAYREVERSE, 0, 0); } -LONG MCIWndPlayFrom(HWND hwnd, LONG lPos) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_PLAYFROM, 0, cast(LPARAM)lPos); } -LONG MCIWndPlayTo(HWND hwnd, LONG lPos) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_PLAYTO, 0, cast(LPARAM)lPos); } -LONG MCIWndPlayFromTo(HWND hwnd, LONG lStart, LONG lEnd) - { MCIWndSeek(hwnd, lStart); return MCIWndPlayTo(hwnd, lEnd); } -UINT MCIWndGetDeviceID(HWND hwnd) - { return cast(UINT)SendMessage(hwnd, MCIWNDM_GETDEVICEID, 0, 0); } -UINT MCIWndGetAlias(HWND hwnd) - { return cast(UINT)SendMessage(hwnd, MCIWNDM_GETALIAS, 0, 0); } -LONG MCIWndGetMode(HWND hwnd, LPTSTR lp, UINT len) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETMODE, cast(WPARAM)len, cast(LPARAM)lp); } -LONG MCIWndGetPosition(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETPOSITION, 0, 0); } -LONG MCIWndGetPositionString(HWND hwnd, LPTSTR lp, UINT len) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETPOSITION, cast(WPARAM)len, cast(LPARAM)lp); } -LONG MCIWndGetStart(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETSTART, 0, 0); } -LONG MCIWndGetLength(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETLENGTH, 0, 0); } -LONG MCIWndGetEnd(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETEND, 0, 0); } -LONG MCIWndStep(HWND hwnd, LONG n) - { return cast(LONG)SendMessage(hwnd, MCI_STEP, 0, cast(LPARAM)n); } -void MCIWndDestroy(HWND hwnd) - { SendMessage(hwnd, WM_CLOSE, 0, 0); } -void MCIWndSetZoom(HWND hwnd, UINT iZoom) - { SendMessage(hwnd, MCIWNDM_SETZOOM, 0, cast(LPARAM)iZoom); } -UINT MCIWndGetZoom(HWND hwnd) - { return cast(UINT)SendMessage(hwnd, MCIWNDM_GETZOOM, 0, 0); } -LONG MCIWndSetVolume(HWND hwnd, UINT iVol) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_SETVOLUME, 0, cast(LPARAM)iVol); } -LONG MCIWndGetVolume(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETVOLUME, 0, 0); } -LONG MCIWndSetSpeed(HWND hwnd, UINT iSpeed) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_SETSPEED, 0, cast(LPARAM)iSpeed); } -LONG MCIWndGetSpeed(HWND hwnd) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETSPEED, 0, 0); } -LONG MCIWndSetTimeFormat(HWND hwnd, LPTSTR lp) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_SETTIMEFORMAT, 0, cast(LPARAM)lp); } -LONG MCIWndUseFrames(HWND hwnd) - { return MCIWndSetTimeFormat(hwnd, (cast(TCHAR[])"frames").ptr); } -LONG MCIWndUseTime(HWND hwnd) - { return MCIWndSetTimeFormat(hwnd, (cast(TCHAR[])"ms").ptr); } -LONG MCIWndGetTimeFormat(HWND hwnd, LPTSTR lp, UINT len) - { return cast(LONG)SendMessage(hwnd, MCIWNDM_GETTIMEFORMAT, cast(WPARAM)len, cast(LPARAM)lp); } -void MCIWndValidateMedia(HWND hwnd) - { SendMessage(hwnd, MCIWNDM_VALIDATEMEDIA, 0, 0); } -void MCIWndSetRepeat(HWND hwnd, BOOL f) - { SendMessage(hwnd, MCIWNDM_SETREPEAT, 0, cast(LPARAM)f); } -BOOL MCIWndGetRepeat(HWND hwnd) - { return cast(BOOL)SendMessage(hwnd, MCIWNDM_GETREPEAT, 0, 0); } -void MCIWndSetActiveTimer(HWND hwnd, UINT active) - { SendMessage(hwnd, MCIWNDM_SETACTIVETIMER, cast(WPARAM)active, 0); } -void MCIWndSetInactiveTimer(HWND hwnd, UINT inactive) - { SendMessage(hwnd, MCIWNDM_SETINACTIVETIMER, cast(WPARAM)inactive, 0); } -void MCIWndSetTimers(HWND hwnd, UINT active, UINT inactive) - { SendMessage(hwnd, MCIWNDM_SETTIMERS, cast(WPARAM)active, cast(LPARAM)inactive); } -UINT MCIWndGetActiveTimer(HWND hwnd) - { return cast(UINT)SendMessage(hwnd, MCIWNDM_GETACTIVETIMER, 0, 0); } -UINT MCIWndGetInactiveTimer(HWND hwnd) - { return cast(UINT)SendMessage(hwnd, MCIWNDM_GETINACTIVETIMER, 0, 0); } -LONG MCIWndRealize(HWND hwnd, BOOL fBkgnd) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_REALIZE, cast(WPARAM)fBkgnd, 0); } -LONG MCIWndSendString(HWND hwnd, LPTSTR sz) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_SENDSTRING, 0, cast(LPARAM)sz); } -LONG MCIWndReturnString(HWND hwnd, LPVOID lp, UINT len) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_RETURNSTRING, cast(WPARAM)len, cast(LPARAM)lp); } -LONG MCIWndGetError(HWND hwnd, LPVOID lp, UINT len) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_GETERROR, cast(WPARAM)len, cast(LPARAM)lp); } -HPALETTE MCIWndGetPalette(HWND hwnd) - { return cast(HPALETTE)SendMessage(hwnd, MCIWNDM_GETPALETTE, 0, 0); } -LONG MCIWndSetPalette(HWND hwnd, HPALETTE hpal) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_SETPALETTE, cast(WPARAM)hpal, 0); } -LONG MCIWndGetFileName(HWND hwnd, LPVOID lp, UINT len) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_GETFILENAME, cast(WPARAM)len, cast(LPARAM)lp); } -LONG MCIWndGetDevice(HWND hwnd, LPVOID lp, UINT len) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_GETDEVICE, cast(WPARAM)len, cast(LPARAM)lp); } -UINT MCIWndGetStyles(HWND hwnd) - { return cast(UINT) SendMessage(hwnd, MCIWNDM_GETSTYLES, 0, 0); } -LONG MCIWndChangeStyles(HWND hwnd, UINT mask, LONG value) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_CHANGESTYLES, cast(WPARAM)mask, cast(LPARAM)value); } -LONG MCIWndOpenInterface(HWND hwnd, LPUNKNOWN pUnk) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_OPENINTERFACE, 0, cast(LPARAM)cast(void*)pUnk); } -LONG MCIWndSetOwner(HWND hwnd, HWND hwndP) - { return cast(LONG) SendMessage(hwnd, MCIWNDM_SETOWNER, cast(WPARAM)hwndP, 0); } - -enum { - MCIWNDM_GETDEVICEID = WM_USER + 100, - MCIWNDM_SENDSTRINGA = WM_USER + 101, - MCIWNDM_GETPOSITIONA = WM_USER + 102, - MCIWNDM_GETSTART = WM_USER + 103, - MCIWNDM_GETLENGTH = WM_USER + 104, - MCIWNDM_GETEND = WM_USER + 105, - MCIWNDM_GETMODEA = WM_USER + 106, - MCIWNDM_EJECT = WM_USER + 107, - MCIWNDM_SETZOOM = WM_USER + 108, - MCIWNDM_GETZOOM = WM_USER + 109, - MCIWNDM_SETVOLUME = WM_USER + 110, - MCIWNDM_GETVOLUME = WM_USER + 111, - MCIWNDM_SETSPEED = WM_USER + 112, - MCIWNDM_GETSPEED = WM_USER + 113, - MCIWNDM_SETREPEAT = WM_USER + 114, - MCIWNDM_GETREPEAT = WM_USER + 115, - MCIWNDM_REALIZE = WM_USER + 118, - MCIWNDM_SETTIMEFORMATA = WM_USER + 119, - MCIWNDM_GETTIMEFORMATA = WM_USER + 120, - MCIWNDM_VALIDATEMEDIA = WM_USER + 121, - MCIWNDM_PLAYFROM = WM_USER + 122, - MCIWNDM_PLAYTO = WM_USER + 123, - MCIWNDM_GETFILENAMEA = WM_USER + 124, - MCIWNDM_GETDEVICEA = WM_USER + 125, - MCIWNDM_GETPALETTE = WM_USER + 126, - MCIWNDM_SETPALETTE = WM_USER + 127, - MCIWNDM_GETERRORA = WM_USER + 128, - MCIWNDM_SETTIMERS = WM_USER + 129, - MCIWNDM_SETACTIVETIMER = WM_USER + 130, - MCIWNDM_SETINACTIVETIMER = WM_USER + 131, - MCIWNDM_GETACTIVETIMER = WM_USER + 132, - MCIWNDM_GETINACTIVETIMER = WM_USER + 133, - MCIWNDM_NEWA = WM_USER + 134, - MCIWNDM_CHANGESTYLES = WM_USER + 135, - MCIWNDM_GETSTYLES = WM_USER + 136, - MCIWNDM_GETALIAS = WM_USER + 137, - MCIWNDM_RETURNSTRINGA = WM_USER + 138, - MCIWNDM_PLAYREVERSE = WM_USER + 139, - MCIWNDM_GET_SOURCE = WM_USER + 140, - MCIWNDM_PUT_SOURCE = WM_USER + 141, - MCIWNDM_GET_DEST = WM_USER + 142, - MCIWNDM_PUT_DEST = WM_USER + 143, - MCIWNDM_CAN_PLAY = WM_USER + 144, - MCIWNDM_CAN_WINDOW = WM_USER + 145, - MCIWNDM_CAN_RECORD = WM_USER + 146, - MCIWNDM_CAN_SAVE = WM_USER + 147, - MCIWNDM_CAN_EJECT = WM_USER + 148, - MCIWNDM_CAN_CONFIG = WM_USER + 149, - MCIWNDM_PALETTEKICK = WM_USER + 150, - MCIWNDM_OPENINTERFACE = WM_USER + 151, - MCIWNDM_SETOWNER = WM_USER + 152, - MCIWNDM_OPENA = WM_USER + 153, - MCIWNDM_SENDSTRINGW = WM_USER + 201, - MCIWNDM_GETPOSITIONW = WM_USER + 202, - MCIWNDM_GETMODEW = WM_USER + 206, - MCIWNDM_SETTIMEFORMATW = WM_USER + 219, - MCIWNDM_GETTIMEFORMATW = WM_USER + 220, - MCIWNDM_GETFILENAMEW = WM_USER + 224, - MCIWNDM_GETDEVICEW = WM_USER + 225, - MCIWNDM_GETERRORW = WM_USER + 228, - MCIWNDM_NEWW = WM_USER + 234, - MCIWNDM_RETURNSTRINGW = WM_USER + 238, - MCIWNDM_OPENW = WM_USER + 252, -} - -version(Unicode) { - alias MCIWNDM_SENDSTRINGW MCIWNDM_SENDSTRING; - alias MCIWNDM_GETPOSITIONW MCIWNDM_GETPOSITION; - alias MCIWNDM_GETMODEW MCIWNDM_GETMODE; - alias MCIWNDM_SETTIMEFORMATW MCIWNDM_SETTIMEFORMAT; - alias MCIWNDM_GETTIMEFORMATW MCIWNDM_GETTIMEFORMAT; - alias MCIWNDM_GETFILENAMEW MCIWNDM_GETFILENAME; - alias MCIWNDM_GETDEVICEW MCIWNDM_GETDEVICE; - alias MCIWNDM_GETERRORW MCIWNDM_GETERROR; - alias MCIWNDM_NEWW MCIWNDM_NEW; - alias MCIWNDM_RETURNSTRINGW MCIWNDM_RETURNSTRING; - alias MCIWNDM_OPENW MCIWNDM_OPEN; -} else { // Unicode - alias MCIWNDM_SENDSTRINGA MCIWNDM_SENDSTRING; - alias MCIWNDM_GETPOSITIONA MCIWNDM_GETPOSITION; - alias MCIWNDM_GETMODEA MCIWNDM_GETMODE; - alias MCIWNDM_SETTIMEFORMATA MCIWNDM_SETTIMEFORMAT; - alias MCIWNDM_GETTIMEFORMATA MCIWNDM_GETTIMEFORMAT; - alias MCIWNDM_GETFILENAMEA MCIWNDM_GETFILENAME; - alias MCIWNDM_GETDEVICEA MCIWNDM_GETDEVICE; - alias MCIWNDM_GETERRORA MCIWNDM_GETERROR; - alias MCIWNDM_NEWA MCIWNDM_NEW; - alias MCIWNDM_RETURNSTRINGA MCIWNDM_RETURNSTRING; - alias MCIWNDM_OPENA MCIWNDM_OPEN; -} - -enum { - MCIWNDM_NOTIFYMODE = WM_USER + 200, - MCIWNDM_NOTIFYPOS = WM_USER + 201, - MCIWNDM_NOTIFYSIZE = WM_USER + 202, - MCIWNDM_NOTIFYMEDIA = WM_USER + 203, - MCIWNDM_NOTIFYERROR = WM_USER + 205, -} - -const MCIWND_START = -1; -const MCIWND_END = -2; - -enum { - MCI_CLOSE = 0x0804, - MCI_PLAY = 0x0806, - MCI_SEEK = 0x0807, - MCI_STOP = 0x0808, - MCI_PAUSE = 0x0809, - MCI_STEP = 0x080E, - MCI_RECORD = 0x080F, - MCI_SAVE = 0x0813, - MCI_CUT = 0x0851, - MCI_COPY = 0x0852, - MCI_PASTE = 0x0853, - MCI_RESUME = 0x0855, - MCI_DELETE = 0x0856, -} - -enum { - MCI_MODE_NOT_READY = 524, - MCI_MODE_STOP, - MCI_MODE_PLAY, - MCI_MODE_RECORD, - MCI_MODE_SEEK, - MCI_MODE_PAUSE, - MCI_MODE_OPEN, -} - -alias TypeDef!(HANDLE) HVIDEO; -alias HVIDEO* LPHVIDEO; - -// Error Return Values - -enum { - DV_ERR_OK = 0, - DV_ERR_BASE = 1, - DV_ERR_NONSPECIFIC = DV_ERR_BASE, - DV_ERR_BADFORMAT = DV_ERR_BASE + 1, - DV_ERR_STILLPLAYING = DV_ERR_BASE + 2, - DV_ERR_UNPREPARED = DV_ERR_BASE + 3, - DV_ERR_SYNC = DV_ERR_BASE + 4, - DV_ERR_TOOMANYCHANNELS = DV_ERR_BASE + 5, - DV_ERR_NOTDETECTED = DV_ERR_BASE + 6, - DV_ERR_BADINSTALL = DV_ERR_BASE + 7, - DV_ERR_CREATEPALETTE = DV_ERR_BASE + 8, - DV_ERR_SIZEFIELD = DV_ERR_BASE + 9, - DV_ERR_PARAM1 = DV_ERR_BASE + 10, - DV_ERR_PARAM2 = DV_ERR_BASE + 11, - DV_ERR_CONFIG1 = DV_ERR_BASE + 12, - DV_ERR_CONFIG2 = DV_ERR_BASE + 13, - DV_ERR_FLAGS = DV_ERR_BASE + 14, - DV_ERR_13 = DV_ERR_BASE + 15, - DV_ERR_NOTSUPPORTED = DV_ERR_BASE + 16, - DV_ERR_NOMEM = DV_ERR_BASE + 17, - DV_ERR_ALLOCATED = DV_ERR_BASE + 18, - DV_ERR_BADDEVICEID = DV_ERR_BASE + 19, - DV_ERR_INVALHANDLE = DV_ERR_BASE + 20, - DV_ERR_BADERRNUM = DV_ERR_BASE + 21, - DV_ERR_NO_BUFFERS = DV_ERR_BASE + 22, - DV_ERR_MEM_CONFLICT = DV_ERR_BASE + 23, - DV_ERR_IO_CONFLICT = DV_ERR_BASE + 24, - DV_ERR_DMA_CONFLICT = DV_ERR_BASE + 25, - DV_ERR_INT_CONFLICT = DV_ERR_BASE + 26, - DV_ERR_PROTECT_ONLY = DV_ERR_BASE + 27, - DV_ERR_LASTERROR = DV_ERR_BASE + 27, - DV_ERR_USER_MSG = DV_ERR_BASE + 1000, -} - -// Callback Messages - -enum { - MM_DRVM_OPEN = 0x3D0, - MM_DRVM_CLOSE, - MM_DRVM_DATA, - MM_DRVM_ERROR, -} - -enum { - DV_VM_OPEN = MM_DRVM_OPEN, - DV_VM_CLOSE = MM_DRVM_CLOSE, - DV_VM_DATA = MM_DRVM_DATA, - DV_VM_ERROR = MM_DRVM_ERROR, -} - -/** - * Structures - */ - -struct VIDEOHDR { - LPBYTE lpData; - DWORD dwBufferLength; - DWORD dwBytesUsed; - DWORD dwTimeCaptured; - DWORD_PTR dwUser; - DWORD dwFlags; - DWORD_PTR[4] dwReserved; -} -alias VIDEOHDR* PVIDEOHDR, LPVIDEOHDR; - -enum { - VHDR_DONE = 0x00000001, - VHDR_PREPARED = 0x00000002, - VHDR_INQUEUE = 0x00000004, - VHDR_KEYFRAME = 0x00000008, - VHDR_VALID = 0x0000000F, -} - -struct CHANNEL_CAPS { - DWORD dwFlags; - DWORD dwSrcRectXMod; - DWORD dwSrcRectYMod; - DWORD dwSrcRectWidthMod; - DWORD dwSrcRectHeightMod; - DWORD dwDstRectXMod; - DWORD dwDstRectYMod; - DWORD dwDstRectWidthMod; - DWORD dwDstRectHeightMod; -} -alias CHANNEL_CAPS* PCHANNEL_CAPS, LPCHANNEL_CAPS; - -enum { - VCAPS_OVERLAY = 0x00000001, - VCAPS_SRC_CAN_CLIP = 0x00000002, - VCAPS_DST_CAN_CLIP = 0x00000004, - VCAPS_CAN_SCALE = 0x00000008, -} - -/** - * API Flags - */ - -enum { - VIDEO_EXTERNALIN = 0x0001, - VIDEO_EXTERNALOUT = 0x0002, - VIDEO_IN = 0x0004, - VIDEO_OUT = 0x0008, - VIDEO_DLG_QUERY = 0x0010, -} - -enum { - VIDEO_CONFIGURE_QUERYSIZE = 0x0001, - VIDEO_CONFIGURE_CURRENT = 0x0010, - VIDEO_CONFIGURE_NOMINAL = 0x0020, - VIDEO_CONFIGURE_MIN = 0x0040, - VIDEO_CONFIGURE_MAX = 0x0080, - VIDEO_CONFIGURE_SET = 0x1000, - VIDEO_CONFIGURE_GET = 0x2000, - VIDEO_CONFIGURE_QUERY = 0x8000, -} - -/** - * CONFIGURE MESSAGES - */ - -enum { - DVM_USER = 0x4000, - DVM_CONFIGURE_START = 0x1000, - DVM_CONFIGURE_END = 0x1FFF, - DVM_PALETTE = DVM_CONFIGURE_START + 1, - DVM_FORMAT = DVM_CONFIGURE_START + 2, - DVM_PALETTERGB555 = DVM_CONFIGURE_START + 3, - DVM_SRC_RECT = DVM_CONFIGURE_START + 4, - DVM_DST_RECT = DVM_CONFIGURE_START + 5, -} - -/** - * AVICap window class - */ - -LRESULT AVICapSM(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam) { - if (IsWindow(hWnd)) { - return SendMessage(hWnd, msg, wParam, lParam); - } - return 0; -} - -enum { - WM_CAP_START = WM_USER, - WM_CAP_UNICODE_START = WM_USER + 100, - - WM_CAP_GET_CAPSTREAMPTR = WM_CAP_START + 1, - WM_CAP_SET_CALLBACK_ERRORA = WM_CAP_START + 2, - WM_CAP_SET_CALLBACK_STATUSA = WM_CAP_START + 3, - - WM_CAP_SET_CALLBACK_ERRORW = WM_CAP_UNICODE_START + 2, - WM_CAP_SET_CALLBACK_STATUSW = WM_CAP_UNICODE_START + 3, -} - -version(Unicode) { - alias WM_CAP_SET_CALLBACK_ERRORW WM_CAP_SET_CALLBACK_ERROR; - alias WM_CAP_SET_CALLBACK_STATUSW WM_CAP_SET_CALLBACK_STATUS; -} else { // Unicode - alias WM_CAP_SET_CALLBACK_ERRORA WM_CAP_SET_CALLBACK_ERROR; - alias WM_CAP_SET_CALLBACK_STATUSA WM_CAP_SET_CALLBACK_STATUS; -} - -enum { - WM_CAP_SET_CALLBACK_YIELD = WM_CAP_START + 4, - WM_CAP_SET_CALLBACK_FRAME = WM_CAP_START + 5, - WM_CAP_SET_CALLBACK_VIDEOSTREAM = WM_CAP_START + 6, - WM_CAP_SET_CALLBACK_WAVESTREAM = WM_CAP_START + 7, - WM_CAP_GET_USER_DATA = WM_CAP_START + 8, - WM_CAP_SET_USER_DATA = WM_CAP_START + 9, - WM_CAP_DRIVER_CONNECT = WM_CAP_START + 10, - WM_CAP_DRIVER_DISCONNECT = WM_CAP_START + 11, - WM_CAP_DRIVER_GET_NAMEA = WM_CAP_START + 12, - WM_CAP_DRIVER_GET_VERSIONA = WM_CAP_START + 13, - - WM_CAP_DRIVER_GET_NAMEW = WM_CAP_UNICODE_START + 12, - WM_CAP_DRIVER_GET_VERSIONW = WM_CAP_UNICODE_START + 13, -} - -version(Unicode) { - alias WM_CAP_DRIVER_GET_NAMEW WM_CAP_DRIVER_GET_NAME; - alias WM_CAP_DRIVER_GET_VERSIONW WM_CAP_DRIVER_GET_VERSION; -} else { // Unicode - alias WM_CAP_DRIVER_GET_NAMEA WM_CAP_DRIVER_GET_NAME; - alias WM_CAP_DRIVER_GET_VERSIONA WM_CAP_DRIVER_GET_VERSION; -} - -enum { - WM_CAP_DRIVER_GET_CAPS = WM_CAP_START + 14, - WM_CAP_FILE_SET_CAPTURE_FILEA = WM_CAP_START + 20, - WM_CAP_FILE_GET_CAPTURE_FILEA = WM_CAP_START + 21, - WM_CAP_FILE_SAVEASA = WM_CAP_START + 23, - WM_CAP_FILE_SAVEDIBA = WM_CAP_START + 25, - - WM_CAP_FILE_SET_CAPTURE_FILEW = WM_CAP_UNICODE_START + 20, - WM_CAP_FILE_GET_CAPTURE_FILEW = WM_CAP_UNICODE_START + 21, - WM_CAP_FILE_SAVEASW = WM_CAP_UNICODE_START + 23, - WM_CAP_FILE_SAVEDIBW = WM_CAP_UNICODE_START + 25, -} - -version(Unicode) { - alias WM_CAP_FILE_SET_CAPTURE_FILEW WM_CAP_FILE_SET_CAPTURE_FILE; - alias WM_CAP_FILE_GET_CAPTURE_FILEW WM_CAP_FILE_GET_CAPTURE_FILE; - alias WM_CAP_FILE_SAVEASW WM_CAP_FILE_SAVEAS; - alias WM_CAP_FILE_SAVEDIBW WM_CAP_FILE_SAVEDIB; -} else { // Unicode - alias WM_CAP_FILE_SET_CAPTURE_FILEA WM_CAP_FILE_SET_CAPTURE_FILE; - alias WM_CAP_FILE_GET_CAPTURE_FILEA WM_CAP_FILE_GET_CAPTURE_FILE; - alias WM_CAP_FILE_SAVEASA WM_CAP_FILE_SAVEAS; - alias WM_CAP_FILE_SAVEDIBA WM_CAP_FILE_SAVEDIB; -} - -enum { - WM_CAP_FILE_ALLOCATE = WM_CAP_START + 22, - WM_CAP_FILE_SET_INFOCHUNK = WM_CAP_START + 24, - WM_CAP_EDIT_COPY = WM_CAP_START + 30, - WM_CAP_SET_AUDIOFORMAT = WM_CAP_START + 35, - WM_CAP_GET_AUDIOFORMAT = WM_CAP_START + 36, - WM_CAP_DLG_VIDEOFORMAT = WM_CAP_START + 41, - WM_CAP_DLG_VIDEOSOURCE = WM_CAP_START + 42, - WM_CAP_DLG_VIDEODISPLAY = WM_CAP_START + 43, - WM_CAP_GET_VIDEOFORMAT = WM_CAP_START + 44, - WM_CAP_SET_VIDEOFORMAT = WM_CAP_START + 45, - WM_CAP_DLG_VIDEOCOMPRESSION = WM_CAP_START + 46, - WM_CAP_SET_PREVIEW = WM_CAP_START + 50, - WM_CAP_SET_OVERLAY = WM_CAP_START + 51, - WM_CAP_SET_PREVIEWRATE = WM_CAP_START + 52, - WM_CAP_SET_SCALE = WM_CAP_START + 53, - WM_CAP_GET_STATUS = WM_CAP_START + 54, - WM_CAP_SET_SCROLL = WM_CAP_START + 55, - WM_CAP_GRAB_FRAME = WM_CAP_START + 60, - WM_CAP_GRAB_FRAME_NOSTOP = WM_CAP_START + 61, - WM_CAP_SEQUENCE = WM_CAP_START + 62, - WM_CAP_SEQUENCE_NOFILE = WM_CAP_START + 63, - WM_CAP_SET_SEQUENCE_SETUP = WM_CAP_START + 64, - WM_CAP_GET_SEQUENCE_SETUP = WM_CAP_START + 65, - WM_CAP_SET_MCI_DEVICEA = WM_CAP_START + 66, - WM_CAP_GET_MCI_DEVICEA = WM_CAP_START + 67, - - WM_CAP_SET_MCI_DEVICEW = WM_CAP_UNICODE_START + 66, - WM_CAP_GET_MCI_DEVICEW = WM_CAP_UNICODE_START + 67, -} - -version(Unicode) { - alias WM_CAP_SET_MCI_DEVICEW WM_CAP_SET_MCI_DEVICE; - alias WM_CAP_GET_MCI_DEVICEW WM_CAP_GET_MCI_DEVICE; -} else { // Unicode - alias WM_CAP_SET_MCI_DEVICEA WM_CAP_SET_MCI_DEVICE; - alias WM_CAP_GET_MCI_DEVICEA WM_CAP_GET_MCI_DEVICE; -} - -enum { - WM_CAP_STOP = WM_CAP_START + 68, - WM_CAP_ABORT = WM_CAP_START + 69, - WM_CAP_SINGLE_FRAME_OPEN = WM_CAP_START + 70, - WM_CAP_SINGLE_FRAME_CLOSE = WM_CAP_START + 71, - WM_CAP_SINGLE_FRAME = WM_CAP_START + 72, - WM_CAP_PAL_OPENA = WM_CAP_START + 80, - WM_CAP_PAL_SAVEA = WM_CAP_START + 81, - - WM_CAP_PAL_OPENW = WM_CAP_UNICODE_START + 80, - WM_CAP_PAL_SAVEW = WM_CAP_UNICODE_START + 81, -} - -version(Unicode) { - alias WM_CAP_PAL_OPENW WM_CAP_PAL_OPEN; - alias WM_CAP_PAL_SAVEW WM_CAP_PAL_SAVE; -} else { // Unicode - alias WM_CAP_PAL_OPENA WM_CAP_PAL_OPEN; - alias WM_CAP_PAL_SAVEA WM_CAP_PAL_SAVE; -} - -enum { - WM_CAP_PAL_PASTE = WM_CAP_START + 82, - WM_CAP_PAL_AUTOCREATE = WM_CAP_START + 83, - WM_CAP_PAL_MANUALCREATE = WM_CAP_START + 84, - WM_CAP_SET_CALLBACK_CAPCONTROL = WM_CAP_START + 85, - WM_CAP_UNICODE_END = WM_CAP_PAL_SAVEW, - WM_CAP_END = WM_CAP_UNICODE_END, -} - -/** - * message wrapper - */ - -BOOL capSetCallbackOnError(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_ERROR, 0, cast(LPARAM)fpProc); } -BOOL capSetCallbackOnStatus(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_STATUS, 0, cast(LPARAM)fpProc); } -BOOL capSetCallbackOnYield(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_YIELD, 0, cast(LPARAM)fpProc); } -BOOL capSetCallbackOnFrame(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_FRAME, 0, cast(LPARAM)fpProc); } -BOOL capSetCallbackOnVideoStream(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, cast(LPARAM)fpProc); } -BOOL capSetCallbackOnWaveStream(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_WAVESTREAM, 0, cast(LPARAM)fpProc); } -BOOL capSetCallbackOnCapControl(HWND hWnd, LPVOID fpProc) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_CALLBACK_CAPCONTROL, 0, cast(LPARAM)fpProc); } - -BOOL capSetUserData(HWND hWnd, LPARAM lUser) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_USER_DATA, 0, lUser); } -BOOL capGetUserData(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_GET_USER_DATA, 0, 0); } - -BOOL capDriverConnect(HWND hWnd, WPARAM i) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DRIVER_CONNECT, i, 0); } -BOOL capDriverDisconnect(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DRIVER_DISCONNECT, 0, 0); } -BOOL capDriverGetName(HWND hWnd, LPTSTR szName, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DRIVER_GET_NAME, wSize, cast(LPARAM)szName); } -BOOL capDriverGetVersion(HWND hWnd, LPTSTR szVer, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DRIVER_GET_VERSION, wSize, cast(LPARAM)szVer); } -BOOL capDriverGetCaps(HWND hWnd, LPCAPDRIVERCAPS s, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DRIVER_GET_CAPS, wSize, cast(LPARAM)s); } - -BOOL capFileSetCaptureFile(HWND hWnd, LPTSTR szName) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_FILE_SET_CAPTURE_FILE, 0, cast(LPARAM)szName); } -BOOL capFileGetCaptureFile(HWND hWnd, LPTSTR szName, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_FILE_GET_CAPTURE_FILE, wSize, cast(LPARAM)szName); } -BOOL capFileAlloc(HWND hWnd, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_FILE_ALLOCATE, wSize, 0); } -BOOL capFileSaveAs(HWND hWnd, LPTSTR szName) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_FILE_SAVEAS, 0, cast(LPARAM)szName); } -BOOL capFileSetInfoChunk(HWND hWnd, LPCAPINFOCHUNK lpInfoChunk) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_FILE_SET_INFOCHUNK, 0, cast(LPARAM)lpInfoChunk); } -BOOL capFileSaveDIB(HWND hWnd, LPTSTR szName) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_FILE_SAVEDIB, 0, cast(LPARAM)szName); } - -BOOL capEditCopy(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_EDIT_COPY, 0, 0); } - -BOOL capSetAudioFormat(HWND hWnd, LPWAVEFORMATEX s, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_AUDIOFORMAT, wSize, cast(LPARAM)s); } -DWORD capGetAudioFormat(HWND hWnd, LPWAVEFORMATEX s, WPARAM wSize) { return cast(DWORD)AVICapSM(hWnd, WM_CAP_GET_AUDIOFORMAT, wSize, cast(LPARAM)s); } -DWORD capGetAudioFormatSize(HWND hWnd) { return cast(DWORD)AVICapSM(hWnd, WM_CAP_GET_AUDIOFORMAT, 0, 0); } - -BOOL capDlgVideoFormat(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DLG_VIDEOFORMAT, 0, 0); } -BOOL capDlgVideoSource(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DLG_VIDEOSOURCE, 0, 0); } -BOOL capDlgVideoDisplay(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DLG_VIDEODISPLAY, 0, 0); } -BOOL capDlgVideoCompression(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_DLG_VIDEOCOMPRESSION, 0, 0); } - -DWORD capGetVideoFormat(HWND hWnd, void* s, WPARAM wSize) { return cast(DWORD)AVICapSM(hWnd, WM_CAP_GET_VIDEOFORMAT, wSize, cast(LPARAM)s); } -DWORD capGetVideoFormatSize(HWND hWnd) { return cast(DWORD)AVICapSM(hWnd, WM_CAP_GET_VIDEOFORMAT, 0, 0); } -BOOL capSetVideoFormat(HWND hWnd, void* s, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_VIDEOFORMAT, wSize, cast(LPARAM)s); } - -BOOL capPreview(HWND hWnd, BOOL f) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_PREVIEW, cast(WPARAM)f, 0); } -BOOL capPreviewRate(HWND hWnd, WPARAM wMS) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_PREVIEWRATE, wMS, 0); } -BOOL capOverlay(HWND hWnd, BOOL f) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_OVERLAY, cast(WPARAM)f, 0); } -BOOL capPreviewScale(HWND hWnd, BOOL f) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_SCALE, cast(WPARAM)f, 0); } -BOOL capGetStatus(HWND hWnd, LPCAPSTATUS s, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_GET_STATUS, wSize, cast(LPARAM)s); } -BOOL capSetScrollPos(HWND hWnd, LPPOINT lpP) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_SCROLL, 0, cast(LPARAM)lpP); } - -BOOL capGrabFrame(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_GRAB_FRAME, 0, 0); } -BOOL capGrabFrameNoStop(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_GRAB_FRAME_NOSTOP, 0, 0); } - -BOOL capCaptureSequence(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SEQUENCE, 0, 0); } -BOOL capCaptureSequenceNoFile(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SEQUENCE_NOFILE, 0, 0); } -BOOL capCaptureStop(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_STOP, 0, 0); } -BOOL capCaptureAbort(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_ABORT, 0, 0); } - -BOOL capCaptureSingleFrameOpen(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SINGLE_FRAME_OPEN, 0, 0); } -BOOL capCaptureSingleFrameClose(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SINGLE_FRAME_CLOSE, 0, 0); } -BOOL capCaptureSingleFrame(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SINGLE_FRAME, 0, 0); } - -BOOL capCaptureGetSetup(HWND hWnd, LPCAPTUREPARMS s, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_GET_SEQUENCE_SETUP, wSize, cast(LPARAM)s); } -BOOL capCaptureSetSetup(HWND hWnd, LPCAPTUREPARMS s, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_SEQUENCE_SETUP, wSize, cast(LPARAM)s); } - -BOOL capSetMCIDeviceName(HWND hWnd, LPTSTR szName) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_SET_MCI_DEVICE, 0, cast(LPARAM)szName); } -BOOL capGetMCIDeviceName(HWND hWnd, LPTSTR szName, WPARAM wSize) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_GET_MCI_DEVICE, wSize, cast(LPARAM)szName); } - -BOOL capPaletteOpen(HWND hWnd, LPTSTR szName) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_PAL_OPEN, 0, cast(LPARAM)szName); } -BOOL capPaletteSave(HWND hWnd, LPTSTR szName) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_PAL_SAVE, 0, cast(LPARAM)szName); } -BOOL capPalettePaste(HWND hWnd) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_PAL_PASTE, 0, 0); } -BOOL capPaletteAuto(HWND hWnd, WPARAM iFrames, LPARAM iColors) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_PAL_AUTOCREATE, iFrames, iColors); } -BOOL capPaletteManual(HWND hWnd, WPARAM fGrab, LPARAM iColors) { return cast(BOOL)AVICapSM(hWnd, WM_CAP_PAL_MANUALCREATE, fGrab, iColors); } - -/** - * structs - */ - -struct CAPDRIVERCAPS { - UINT wDeviceIndex; - BOOL fHasOverlay; - BOOL fHasDlgVideoSource; - BOOL fHasDlgVideoFormat; - BOOL fHasDlgVideoDisplay; - BOOL fCaptureInitialized; - BOOL fDriverSuppliesPalettes; - HANDLE hVideoIn; - HANDLE hVideoOut; - HANDLE hVideoExtIn; - HANDLE hVideoExtOut; -} -alias CAPDRIVERCAPS* PCAPDRIVERCAPS, LPCAPDRIVERCAPS; - -struct CAPSTATUS { - UINT uiImageWidth; - UINT uiImageHeight; - BOOL fLiveWindow; - BOOL fOverlayWindow; - BOOL fScale; - POINT ptScroll; - BOOL fUsingDefaultPalette; - BOOL fAudioHardware; - BOOL fCapFileExists; - DWORD dwCurrentVideoFrame; - DWORD dwCurrentVideoFramesDropped; - DWORD dwCurrentWaveSamples; - DWORD dwCurrentTimeElapsedMS; - HPALETTE hPalCurrent; - BOOL fCapturingNow; - DWORD dwReturn; - UINT wNumVideoAllocated; - UINT wNumAudioAllocated; -} -alias CAPSTATUS* PCAPSTATUS, LPCAPSTATUS; - -struct CAPTUREPARMS { - DWORD dwRequestMicroSecPerFrame; - BOOL fMakeUserHitOKToCapture; - UINT wPercentDropForError; - BOOL fYield; - DWORD dwIndexSize; - UINT wChunkGranularity; - BOOL fUsingDOSMemory; - UINT wNumVideoRequested; - BOOL fCaptureAudio; - UINT wNumAudioRequested; - UINT vKeyAbort; - BOOL fAbortLeftMouse; - BOOL fAbortRightMouse; - BOOL fLimitEnabled; - UINT wTimeLimit; - BOOL fMCIControl; - BOOL fStepMCIDevice; - DWORD dwMCIStartTime; - DWORD dwMCIStopTime; - BOOL fStepCaptureAt2x; - UINT wStepCaptureAverageFrames; - DWORD dwAudioBufferSize; - BOOL fDisableWriteCache; - UINT AVStreamMaster; -} -alias CAPTUREPARMS* PCAPTUREPARMS, LPCAPTUREPARMS; - -const AVSTREAMMASTER_AUDIO = 0; -const AVSTREAMMASTER_NONE = 1; - -struct CAPINFOCHUNK { - FOURCC fccInfoID; - LPVOID lpData; - LONG cbData; -} -alias CAPINFOCHUNK* PCAPINFOCHUNK, LPCAPINFOCHUNK; - -// Callback Definitions - -extern (Windows) { - alias LRESULT function(HWND hWnd) CAPYIELDCALLBACK; - alias LRESULT function(HWND hWnd, int nID, LPCWSTR lpsz) CAPSTATUSCALLBACKW; - alias LRESULT function(HWND hWnd, int nID, LPCWSTR lpsz) CAPERRORCALLBACKW; - alias LRESULT function(HWND hWnd, int nID, LPCSTR lpsz) CAPSTATUSCALLBACKA; - alias LRESULT function(HWND hWnd, int nID, LPCSTR lpsz) CAPERRORCALLBACKA; -} - -version(Unicode) { - alias CAPSTATUSCALLBACKW CAPSTATUSCALLBACK; - alias CAPERRORCALLBACKW CAPERRORCALLBACK; -} else { // Unicode - alias CAPSTATUSCALLBACKA CAPSTATUSCALLBACK; - alias CAPERRORCALLBACKA CAPERRORCALLBACK; -} - -extern (Windows) { - alias LRESULT function(HWND hWnd, LPVIDEOHDR lpVHdr) CAPVIDEOCALLBACK; - alias LRESULT function(HWND hWnd, LPWAVEHDR lpWHdr) CAPWAVECALLBACK; - alias LRESULT function(HWND hWnd, int nState) CAPCONTROLCALLBACK; -} - -// CapControlCallback states -const CONTROLCALLBACK_PREROLL = 1; -const CONTROLCALLBACK_CAPTURING = 2; - -extern (Windows) { - HWND capCreateCaptureWindowA(LPCSTR lpszWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hwndParent, int nID); - BOOL capGetDriverDescriptionA(UINT wDriverIndex, LPSTR lpszName, int cbName, LPSTR lpszVer, int cbVer); - HWND capCreateCaptureWindowW(LPCWSTR lpszWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hwndParent, int nID); - BOOL capGetDriverDescriptionW(UINT wDriverIndex, LPWSTR lpszName, int cbName, LPWSTR lpszVer, int cbVer); -} - -version(Unicode) { - alias capCreateCaptureWindowW capCreateCaptureWindow; - alias capGetDriverDescriptionW capGetDriverDescription; -} else { // Unicode - alias capCreateCaptureWindowA capCreateCaptureWindow; - alias capGetDriverDescriptionA capGetDriverDescription; -} - -// New Information chunk IDs -const infotypeDIGITIZATION_TIME = mmioFOURCC!('I', 'D', 'I', 'T'); -const infotypeSMPTE_TIME = mmioFOURCC!('I', 'S', 'M', 'P'); - -// status and error callbacks -enum { - IDS_CAP_BEGIN = 300, - IDS_CAP_END = 301, - - IDS_CAP_INFO = 401, - IDS_CAP_OUTOFMEM = 402, - IDS_CAP_FILEEXISTS = 403, - IDS_CAP_ERRORPALOPEN = 404, - IDS_CAP_ERRORPALSAVE = 405, - IDS_CAP_ERRORDIBSAVE = 406, - IDS_CAP_DEFAVIEXT = 407, - IDS_CAP_DEFPALEXT = 408, - IDS_CAP_CANTOPEN = 409, - IDS_CAP_SEQ_MSGSTART = 410, - IDS_CAP_SEQ_MSGSTOP = 411, - - IDS_CAP_VIDEDITERR = 412, - IDS_CAP_READONLYFILE = 413, - IDS_CAP_WRITEERROR = 414, - IDS_CAP_NODISKSPACE = 415, - IDS_CAP_SETFILESIZE = 416, - IDS_CAP_SAVEASPERCENT = 417, - - IDS_CAP_DRIVER_ERROR = 418, - - IDS_CAP_WAVE_OPEN_ERROR = 419, - IDS_CAP_WAVE_ALLOC_ERROR = 420, - IDS_CAP_WAVE_PREPARE_ERROR = 421, - IDS_CAP_WAVE_ADD_ERROR = 422, - IDS_CAP_WAVE_SIZE_ERROR = 423, - - IDS_CAP_VIDEO_OPEN_ERROR = 424, - IDS_CAP_VIDEO_ALLOC_ERROR = 425, - IDS_CAP_VIDEO_PREPARE_ERROR = 426, - IDS_CAP_VIDEO_ADD_ERROR = 427, - IDS_CAP_VIDEO_SIZE_ERROR = 428, - - IDS_CAP_FILE_OPEN_ERROR = 429, - IDS_CAP_FILE_WRITE_ERROR = 430, - IDS_CAP_RECORDING_ERROR = 431, - IDS_CAP_RECORDING_ERROR2 = 432, - IDS_CAP_AVI_INIT_ERROR = 433, - IDS_CAP_NO_FRAME_CAP_ERROR = 434, - IDS_CAP_NO_PALETTE_WARN = 435, - IDS_CAP_MCI_CONTROL_ERROR = 436, - IDS_CAP_MCI_CANT_STEP_ERROR = 437, - IDS_CAP_NO_AUDIO_CAP_ERROR = 438, - IDS_CAP_AVI_DRAWDIB_ERROR = 439, - IDS_CAP_COMPRESSOR_ERROR = 440, - IDS_CAP_AUDIO_DROP_ERROR = 441, - IDS_CAP_AUDIO_DROP_COMPERROR = 442, - - IDS_CAP_STAT_LIVE_MODE = 500, - IDS_CAP_STAT_OVERLAY_MODE = 501, - IDS_CAP_STAT_CAP_INIT = 502, - IDS_CAP_STAT_CAP_FINI = 503, - IDS_CAP_STAT_PALETTE_BUILD = 504, - IDS_CAP_STAT_OPTPAL_BUILD = 505, - IDS_CAP_STAT_I_FRAMES = 506, - IDS_CAP_STAT_L_FRAMES = 507, - IDS_CAP_STAT_CAP_L_FRAMES = 508, - IDS_CAP_STAT_CAP_AUDIO = 509, - IDS_CAP_STAT_VIDEOCURRENT = 510, - IDS_CAP_STAT_VIDEOAUDIO = 511, - IDS_CAP_STAT_VIDEOONLY = 512, - IDS_CAP_STAT_FRAMESDROPPED = 513, -} - -/** - * FilePreview dialog. - */ - -extern (Windows) { - BOOL GetOpenFileNamePreviewA(LPOPENFILENAMEA lpofn); - BOOL GetSaveFileNamePreviewA(LPOPENFILENAMEA lpofn); - BOOL GetOpenFileNamePreviewW(LPOPENFILENAMEW lpofn); - BOOL GetSaveFileNamePreviewW(LPOPENFILENAMEW lpofn); -} - -version(Unicode) { - alias GetOpenFileNamePreviewW GetOpenFileNamePreview; - alias GetSaveFileNamePreviewW GetSaveFileNamePreview; -} else { // Unicode - alias GetOpenFileNamePreviewA GetOpenFileNamePreview; - alias GetSaveFileNamePreviewA GetSaveFileNamePreview; -} \ No newline at end of file diff --git a/3rdparty-extra/win32/winber.d b/3rdparty-extra/win32/winber.d deleted file mode 100644 index 2921c0d27..000000000 --- a/3rdparty-extra/win32/winber.d +++ /dev/null @@ -1,71 +0,0 @@ -/***********************************************************************\ -* winber.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.winber; -version(Windows): - -/* Comment from MinGW - winber.h - Header file for the Windows LDAP Basic Encoding Rules API - - Written by Filip Navara - - References: - The C LDAP Application Program Interface - http://www.watersprings.org/pub/id/draft-ietf-ldapext-ldap-c-api-05.txt - - Lightweight Directory Access Protocol Reference - http://msdn.microsoft.com/library/en-us/netdir/ldap/ldap_reference.asp - - This library 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. - */ - - import win32.basetsd; - -/* Opaque structure - * http://msdn.microsoft.com/library/en-us/ldap/ldap/berelement.asp - */ -struct BerElement; - -alias int ber_int_t, ber_slen_t; -alias uint ber_uint_t, ber_len_t, ber_tag_t; - -align(4): -struct BerValue { - ber_len_t bv_len; - char* bv_val; -} -alias BerValue LDAP_BERVAL, BERVAL; -alias BerValue* PLDAP_BERVAL, PBERVAL; - -const ber_tag_t - LBER_ERROR = -1, - LBER_DEFAULT = -1, - LBER_USE_DER = 1; - -/* FIXME: In MinGW, these are WINBERAPI == DECLSPEC_IMPORT. Linkage - * attribute? - */ -extern (C) { - BerElement* ber_init(const(BerValue)*); - int ber_printf(BerElement*, const(char)*, ...); - int ber_flatten(BerElement*, BerValue**); - ber_tag_t ber_scanf(BerElement*, const(char)*, ...); - ber_tag_t ber_peek_tag(BerElement*, ber_len_t*); - ber_tag_t ber_skip_tag(BerElement*, ber_len_t*); - ber_tag_t ber_first_element(BerElement*, ber_len_t*, char**); - ber_tag_t ber_next_element(BerElement*, ber_len_t*, char*); - void ber_bvfree(BerValue*); - void ber_bvecfree(BerValue**); - void ber_free(BerElement*, int); - BerValue* ber_bvdup(BerValue*); - BerElement* ber_alloc_t(int); -} diff --git a/3rdparty-extra/win32/wincrypt.d b/3rdparty-extra/win32/wincrypt.d deleted file mode 100644 index 3cb99445a..000000000 --- a/3rdparty-extra/win32/wincrypt.d +++ /dev/null @@ -1,900 +0,0 @@ -/***********************************************************************\ -* wincrypt.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.wincrypt; -version(Windows): - -private import win32.w32api, win32.winbase, win32.windef; - -/* FIXME: - * Types of some constants - * Types of macros - * Inits of various "size" and "version" members - * Why are some #ifdefs commented out? - */ - -const TCHAR[] - MS_DEF_PROV = "Microsoft Base Cryptographic Provider v1.0", - MS_ENHANCED_PROV = "Microsoft Enhanced Cryptographic Provider v1.0", - MS_STRONG_PROV = "Microsoft Strong Cryptographic Provider", - MS_DEF_RSA_SIG_PROV = "Microsoft RSA Signature Cryptographic Provider", - MS_DEF_RSA_SCHANNEL_PROV = "Microsoft RSA SChannel Cryptographic Provider", - MS_DEF_DSS_PROV = "Microsoft Base DSS Cryptographic Provider", - MS_DEF_DSS_DH_PROV - = "Microsoft Base DSS and Diffie-Hellman Cryptographic Provider", - MS_ENH_DSS_DH_PROV - = "Microsoft Enhanced DSS and Diffie-Hellman Cryptographic Provider", - MS_DEF_DH_SCHANNEL_PROV = "Microsoft DH SChannel Cryptographic Provider", - MS_SCARD_PROV = "Microsoft Base Smart Card Crypto Provider"; - -static if (_WIN32_WINNT > 0x501) { - const TCHAR[] MS_ENH_RSA_AES_PROV - = "Microsoft Enhanced RSA and AES Cryptographic Provider"; -} else static if (_WIN32_WINNT == 0x501) { - const TCHAR[] MS_ENH_RSA_AES_PROV - = "Microsoft Enhanced RSA and AES Cryptographic Provider (Prototype)"; -} - -ALG_ID GET_ALG_CLASS(ALG_ID x) { return x & 0xE000; } -ALG_ID GET_ALG_TYPE (ALG_ID x) { return x & 0x1E00; } -ALG_ID GET_ALG_SID (ALG_ID x) { return x & 0x01FF; } - -enum : ALG_ID { - ALG_CLASS_ANY = 0, - ALG_CLASS_SIGNATURE = 0x2000, - ALG_CLASS_MSG_ENCRYPT = 0x4000, - ALG_CLASS_DATA_ENCRYPT = 0x6000, - ALG_CLASS_HASH = 0x8000, - ALG_CLASS_KEY_EXCHANGE = 0xA000, - ALG_CLASS_ALL = 0xE000 -} - -enum : ALG_ID { - ALG_TYPE_ANY = 0, - ALG_TYPE_DSS = 0x0200, - ALG_TYPE_RSA = 0x0400, - ALG_TYPE_BLOCK = 0x0600, - ALG_TYPE_STREAM = 0x0800, - ALG_TYPE_DH = 0x0A00, - ALG_TYPE_SECURECHANNEL = 0x0C00 -} - -enum : ALG_ID { - ALG_SID_ANY = 0, - ALG_SID_RSA_ANY = 0, - ALG_SID_RSA_PKCS, - ALG_SID_RSA_MSATWORK, - ALG_SID_RSA_ENTRUST, - ALG_SID_RSA_PGP, // = 4 - ALG_SID_DSS_ANY = 0, - ALG_SID_DSS_PKCS, - ALG_SID_DSS_DMS, // = 2 - ALG_SID_DES = 1, - ALG_SID_3DES = 3, - ALG_SID_DESX, - ALG_SID_IDEA, - ALG_SID_CAST, - ALG_SID_SAFERSK64, - ALG_SID_SAFERSK128, - ALG_SID_3DES_112, - ALG_SID_SKIPJACK, - ALG_SID_TEK, - ALG_SID_CYLINK_MEK, - ALG_SID_RC5, // = 13 - ALG_SID_RC2 = 2, - ALG_SID_RC4 = 1, - ALG_SID_SEAL = 2, - ALG_SID_MD2 = 1, - ALG_SID_MD4, - ALG_SID_MD5, - ALG_SID_SHA, - ALG_SID_MAC, - ALG_SID_RIPEMD, - ALG_SID_RIPEMD160, - ALG_SID_SSL3SHAMD5, - ALG_SID_HMAC, - ALG_SID_TLS1PRF, // = 10 - ALG_SID_AES_128 = 14, - ALG_SID_AES_192, - ALG_SID_AES_256, - ALG_SID_AES, // = 17 - ALG_SID_EXAMPLE = 80 -} - -enum : ALG_ID { - CALG_MD2 = ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MD2, - CALG_MD4 = ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MD4, - CALG_MD5 = ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MD5, - CALG_SHA = ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_SHA, - CALG_SHA1 = CALG_SHA, - CALG_MAC = ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_MAC, - CALG_3DES = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | 3, - CALG_CYLINK_MEK = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | 12, - CALG_SKIPJACK = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | 10, - CALG_KEA_KEYX = ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_STREAM | ALG_TYPE_DSS | 4, - CALG_RSA_SIGN = ALG_CLASS_SIGNATURE | ALG_TYPE_RSA | ALG_SID_RSA_ANY, - CALG_DSS_SIGN = ALG_CLASS_SIGNATURE | ALG_TYPE_DSS | ALG_SID_DSS_ANY, - CALG_RSA_KEYX = ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_RSA | ALG_SID_RSA_ANY, - CALG_DES = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_DES, - CALG_RC2 = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_RC2, - CALG_RC4 = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_STREAM | ALG_SID_RC4, - CALG_SEAL = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_STREAM | ALG_SID_SEAL, - CALG_DH_EPHEM = ALG_CLASS_KEY_EXCHANGE | ALG_TYPE_STREAM | ALG_TYPE_DSS - | ALG_SID_DSS_DMS, - CALG_DESX = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_DESX, -// is undefined ALG_CLASS_DHASH in MinGW - presuming typo - CALG_TLS1PRF = ALG_CLASS_HASH | ALG_TYPE_ANY | ALG_SID_TLS1PRF, - CALG_AES_128 = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES_128, - CALG_AES_192 = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES_192, - CALG_AES_256 = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES_256, - CALG_AES = ALG_CLASS_DATA_ENCRYPT | ALG_TYPE_BLOCK | ALG_SID_AES, -} - -enum { - CRYPT_VERIFYCONTEXT = 0xF0000000, -} - -enum { - CRYPT_NEWKEYSET = 8, - CRYPT_DELETEKEYSET = 16, - CRYPT_MACHINE_KEYSET = 32, - CRYPT_SILENT = 64, -} - -enum { - CRYPT_EXPORTABLE = 1, - CRYPT_USER_PROTECTED = 2, - CRYPT_CREATE_SALT = 4, - CRYPT_UPDATE_KEY = 8, -} - -enum { - SIMPLEBLOB = 1, - PUBLICKEYBLOB = 6, - PRIVATEKEYBLOB = 7, - PLAINTEXTKEYBLOB = 8, - OPAQUEKEYBLOB = 9, - PUBLICKEYBLOBEX = 10, - SYMMETRICWRAPKEYBLOB = 11, -} - -enum { - AT_KEYEXCHANGE = 1, - AT_SIGNATURE = 2, -} - -enum { - CRYPT_USERDATA = 1, -} - -enum { - PKCS5_PADDING = 1, -} - -enum { - CRYPT_MODE_CBC = 1, - CRYPT_MODE_ECB = 2, - CRYPT_MODE_OFB = 3, - CRYPT_MODE_CFB = 4, - CRYPT_MODE_CTS = 5, - CRYPT_MODE_CBCI = 6, - CRYPT_MODE_CFBP = 7, - CRYPT_MODE_OFBP = 8, - CRYPT_MODE_CBCOFM = 9, - CRYPT_MODE_CBCOFMI = 10, -} - -enum { - CRYPT_ENCRYPT = 1, - CRYPT_DECRYPT = 2, - CRYPT_EXPORT = 4, - CRYPT_READ = 8, - CRYPT_WRITE = 16, - CRYPT_MAC = 32, -} - -enum { - HP_ALGID = 1, - HP_HASHVAL = 2, - HP_HASHSIZE = 4, - HP_HMAC_INFO = 5, -} - -enum { - CRYPT_FAILED = FALSE, - CRYPT_SUCCEED = TRUE, -} - -bool RCRYPT_SUCCEEDED(BOOL r) { return r==CRYPT_SUCCEED; } -bool RCRYPT_FAILED(BOOL r) { return r==CRYPT_FAILED; } - -enum { - PP_ENUMALGS = 1, - PP_ENUMCONTAINERS = 2, - PP_IMPTYPE = 3, - PP_NAME = 4, - PP_VERSION = 5, - PP_CONTAINER = 6, - PP_CHANGE_PASSWORD = 7, - PP_KEYSET_SEC_DESCR = 8, - PP_CERTCHAIN = 9, - PP_KEY_TYPE_SUBTYPE = 10, - PP_PROVTYPE = 16, - PP_KEYSTORAGE = 17, - PP_APPLI_CERT = 18, - PP_SYM_KEYSIZE = 19, - PP_SESSION_KEYSIZE = 20, - PP_UI_PROMPT = 21, - PP_ENUMALGS_EX = 22, - PP_ENUMMANDROOTS = 25, - PP_ENUMELECTROOTS = 26, - PP_KEYSET_TYPE = 27, - PP_ADMIN_PIN = 31, - PP_KEYEXCHANGE_PIN = 32, - PP_SIGNATURE_PIN = 33, - PP_SIG_KEYSIZE_INC = 34, - PP_KEYX_KEYSIZE_INC = 35, - PP_UNIQUE_CONTAINER = 36, - PP_SGC_INFO = 37, - PP_USE_HARDWARE_RNG = 38, - PP_KEYSPEC = 39, - PP_ENUMEX_SIGNING_PROT = 40, -} - -enum { - CRYPT_FIRST = 1, - CRYPT_NEXT = 2, -} - -enum { - CRYPT_IMPL_HARDWARE = 1, - CRYPT_IMPL_SOFTWARE = 2, - CRYPT_IMPL_MIXED = 3, - CRYPT_IMPL_UNKNOWN = 4, -} - -enum { - PROV_RSA_FULL = 1, - PROV_RSA_SIG = 2, - PROV_DSS = 3, - PROV_FORTEZZA = 4, - PROV_MS_MAIL = 5, - PROV_SSL = 6, - PROV_STT_MER = 7, - PROV_STT_ACQ = 8, - PROV_STT_BRND = 9, - PROV_STT_ROOT = 10, - PROV_STT_ISS = 11, - PROV_RSA_SCHANNEL = 12, - PROV_DSS_DH = 13, - PROV_EC_ECDSA_SIG = 14, - PROV_EC_ECNRA_SIG = 15, - PROV_EC_ECDSA_FULL = 16, - PROV_EC_ECNRA_FULL = 17, - PROV_DH_SCHANNEL = 18, - PROV_SPYRUS_LYNKS = 20, - PROV_RNG = 21, - PROV_INTEL_SEC = 22, - PROV_RSA_AES = 24, - MAXUIDLEN = 64, -} - -enum { - CUR_BLOB_VERSION = 2, -} - -enum { - X509_ASN_ENCODING = 1, - PKCS_7_ASN_ENCODING = 65536, -} - -enum { - CERT_V1 = 0, - CERT_V2 = 1, - CERT_V3 = 2, -} - -enum { - CERT_E_CHAINING = (-2146762486), - CERT_E_CN_NO_MATCH = (-2146762481), - CERT_E_EXPIRED = (-2146762495), - CERT_E_PURPOSE = (-2146762490), - CERT_E_REVOCATION_FAILURE = (-2146762482), - CERT_E_REVOKED = (-2146762484), - CERT_E_ROLE = (-2146762493), - CERT_E_UNTRUSTEDROOT = (-2146762487), - CERT_E_UNTRUSTEDTESTROOT = (-2146762483), - CERT_E_VALIDITYPERIODNESTING = (-2146762494), - CERT_E_WRONG_USAGE = (-2146762480), - CERT_E_PATHLENCONST = (-2146762492), - CERT_E_CRITICAL = (-2146762491), - CERT_E_ISSUERCHAINING = (-2146762489), - CERT_E_MALFORMED = (-2146762488), - CRYPT_E_REVOCATION_OFFLINE = (-2146885613), - CRYPT_E_REVOKED = (-2146885616), - TRUST_E_BASIC_CONSTRAINTS = (-2146869223), - TRUST_E_CERT_SIGNATURE = (-2146869244), - TRUST_E_FAIL = (-2146762485), -} - -enum { - CERT_TRUST_NO_ERROR = 0, - CERT_TRUST_IS_NOT_TIME_VALID = 1, - CERT_TRUST_IS_NOT_TIME_NESTED = 2, - CERT_TRUST_IS_REVOKED = 4, - CERT_TRUST_IS_NOT_SIGNATURE_VALID = 8, - CERT_TRUST_IS_NOT_VALID_FOR_USAGE = 16, - CERT_TRUST_IS_UNTRUSTED_ROOT = 32, - CERT_TRUST_REVOCATION_STATUS_UNKNOWN = 64, - CERT_TRUST_IS_CYCLIC = 128, - CERT_TRUST_IS_PARTIAL_CHAIN = 65536, - CERT_TRUST_CTL_IS_NOT_TIME_VALID = 131072, - CERT_TRUST_CTL_IS_NOT_SIGNATURE_VALID = 262144, - CERT_TRUST_CTL_IS_NOT_VALID_FOR_USAGE = 524288, -} - -enum { - CERT_TRUST_HAS_EXACT_MATCH_ISSUER = 1, - CERT_TRUST_HAS_KEY_MATCH_ISSUER = 2, - CERT_TRUST_HAS_NAME_MATCH_ISSUER = 4, - CERT_TRUST_IS_SELF_SIGNED = 8, - CERT_TRUST_IS_COMPLEX_CHAIN = 65536, -} - -enum { - CERT_CHAIN_POLICY_BASE = cast(LPCSTR) 1, - CERT_CHAIN_POLICY_AUTHENTICODE = cast(LPCSTR) 2, - CERT_CHAIN_POLICY_AUTHENTICODE_TS = cast(LPCSTR) 3, - CERT_CHAIN_POLICY_SSL = cast(LPCSTR) 4, - CERT_CHAIN_POLICY_BASIC_CONSTRAINTS = cast(LPCSTR) 5, - CERT_CHAIN_POLICY_NT_AUTH = cast(LPCSTR) 6, -} - -enum { - USAGE_MATCH_TYPE_AND = 0, - USAGE_MATCH_TYPE_OR = 1, -} - -enum { - CERT_SIMPLE_NAME_STR = 1, - CERT_OID_NAME_STR = 2, - CERT_X500_NAME_STR = 3, -} -enum { - CERT_NAME_STR_SEMICOLON_FLAG = 1073741824, - CERT_NAME_STR_CRLF_FLAG = 134217728, - CERT_NAME_STR_NO_PLUS_FLAG = 536870912, - CERT_NAME_STR_NO_QUOTING_FLAG = 268435456, - CERT_NAME_STR_REVERSE_FLAG = 33554432, - CERT_NAME_STR_ENABLE_T61_UNICODE_FLAG = 131072, -} - -enum { - CERT_FIND_ANY = 0, - CERT_FIND_CERT_ID = 1048576, - CERT_FIND_CTL_USAGE = 655360, - CERT_FIND_ENHKEY_USAGE = 655360, - CERT_FIND_EXISTING = 851968, - CERT_FIND_HASH = 65536, - CERT_FIND_ISSUER_ATTR = 196612, - CERT_FIND_ISSUER_NAME = 131076, - CERT_FIND_ISSUER_OF = 786432, - CERT_FIND_KEY_IDENTIFIER = 983040, - CERT_FIND_KEY_SPEC = 589824, - CERT_FIND_MD5_HASH = 262144, - CERT_FIND_PROPERTY = 327680, - CERT_FIND_PUBLIC_KEY = 393216, - CERT_FIND_SHA1_HASH = 65536, - CERT_FIND_SIGNATURE_HASH = 917504, - CERT_FIND_SUBJECT_ATTR = 196615, - CERT_FIND_SUBJECT_CERT = 720896, - CERT_FIND_SUBJECT_NAME = 131079, - CERT_FIND_SUBJECT_STR_A = 458759, - CERT_FIND_SUBJECT_STR_W = 524295, - CERT_FIND_ISSUER_STR_A = 458756, - CERT_FIND_ISSUER_STR_W = 524292, -} - -enum { - CERT_FIND_OR_ENHKEY_USAGE_FLAG = 16, - CERT_FIND_OPTIONAL_ENHKEY_USAGE_FLAG = 1, - CERT_FIND_NO_ENHKEY_USAGE_FLAG = 8, - CERT_FIND_VALID_ENHKEY_USAGE_FLAG = 32, - CERT_FIND_EXT_ONLY_ENHKEY_USAGE_FLAG = 2, -} - -enum { - CERT_CASE_INSENSITIVE_IS_RDN_ATTRS_FLAG = 2, - CERT_UNICODE_IS_RDN_ATTRS_FLAG = 1, - CERT_CHAIN_FIND_BY_ISSUER = 1, -} - -enum { - CERT_CHAIN_FIND_BY_ISSUER_COMPARE_KEY_FLAG = 1, - CERT_CHAIN_FIND_BY_ISSUER_COMPLEX_CHAIN_FLAG = 2, - CERT_CHAIN_FIND_BY_ISSUER_CACHE_ONLY_URL_FLAG = 4, - CERT_CHAIN_FIND_BY_ISSUER_LOCAL_MACHINE_FLAG = 8, - CERT_CHAIN_FIND_BY_ISSUER_NO_KEY_FLAG = 16384, - CERT_CHAIN_FIND_BY_ISSUER_CACHE_ONLY_FLAG = 32768, -} - -enum { - CERT_STORE_PROV_SYSTEM = 10, - CERT_SYSTEM_STORE_LOCAL_MACHINE = 131072, -} - -enum { - szOID_PKIX_KP_SERVER_AUTH = "4235600", - szOID_SERVER_GATED_CRYPTO = "4235658", - szOID_SGC_NETSCAPE = "2.16.840.1.113730.4.1", - szOID_PKIX_KP_CLIENT_AUTH = "1.3.6.1.5.5.7.3.2", -} - -enum { - CRYPT_NOHASHOID = 0x00000001, - CRYPT_NO_SALT = 0x10, - CRYPT_PREGEN = 0x40, -} - -enum { - CRYPT_RECIPIENT = 0x10, - CRYPT_INITIATOR = 0x40, - CRYPT_ONLINE = 0x80, - CRYPT_SF = 0x100, - CRYPT_CREATE_IV = 0x200, - CRYPT_KEK = 0x400, - CRYPT_DATA_KEY = 0x800, - CRYPT_VOLATILE = 0x1000, - CRYPT_SGCKEY = 0x2000, -} - -enum { - KP_IV = 0x00000001, - KP_SALT = 0x00000002, - KP_PADDING = 0x00000003, - KP_MODE = 0x00000004, - KP_MODE_BITS = 0x00000005, - KP_PERMISSIONS = 0x00000006, - KP_ALGID = 0x00000007, - KP_BLOCKLEN = 0x00000008, - KP_KEYLEN = 0x00000009, - KP_SALT_EX = 0x0000000a, - KP_P = 0x0000000b, - KP_G = 0x0000000c, - KP_Q = 0x0000000d, - KP_X = 0x0000000e, - KP_Y = 0x0000000f, - KP_RA = 0x00000010, - KP_RB = 0x00000011, - KP_INFO = 0x00000012, - KP_EFFECTIVE_KEYLEN = 0x00000013, - KP_SCHANNEL_ALG = 0x00000014, - KP_PUB_PARAMS = 0x00000027, -} - -enum { - CRYPT_FLAG_PCT1 = 0x0001, - CRYPT_FLAG_SSL2 = 0x0002, - CRYPT_FLAG_SSL3 = 0x0004, - CRYPT_FLAG_TLS1 = 0x0008, - CRYPT_FLAG_IPSEC = 0x0010, - CRYPT_FLAG_SIGNING = 0x0020, -} - -enum { - SCHANNEL_MAC_KEY = 0x00000000, - SCHANNEL_ENC_KEY = 0x00000001, -} - -enum { - INTERNATIONAL_USAGE = 0x00000001, -} - - -alias UINT ALG_ID; -alias ULONG HCRYPTPROV, HCRYPTKEY, HCRYPTHASH; -alias PVOID HCERTSTORE, HCRYPTMSG, HCERTCHAINENGINE; - -struct VTableProvStruc { - FARPROC FuncVerifyImage; -} -alias VTableProvStruc* PVTableProvStruc; - -struct _CRYPTOAPI_BLOB { - DWORD cbData; - BYTE* pbData; -} -alias _CRYPTOAPI_BLOB CRYPT_INTEGER_BLOB, CRYPT_UINT_BLOB, - CRYPT_OBJID_BLOB, CERT_NAME_BLOB, CERT_RDN_VALUE_BLOB, CERT_BLOB, - CRL_BLOB, DATA_BLOB, CRYPT_DATA_BLOB, CRYPT_HASH_BLOB, - CRYPT_DIGEST_BLOB, CRYPT_DER_BLOB, CRYPT_ATTR_BLOB; -alias _CRYPTOAPI_BLOB* PCRYPT_INTEGER_BLOB, PCRYPT_UINT_BLOB, - PCRYPT_OBJID_BLOB, PCERT_NAME_BLOB, PCERT_RDN_VALUE_BLOB, PCERT_BLOB, - PCRL_BLOB, PDATA_BLOB, PCRYPT_DATA_BLOB, PCRYPT_HASH_BLOB, - PCRYPT_DIGEST_BLOB, PCRYPT_DER_BLOB, PCRYPT_ATTR_BLOB; - -// not described in SDK; has the same layout as HTTPSPolicyCallbackData -struct SSL_EXTRA_CERT_CHAIN_POLICY_PARA { - DWORD cbStruct; - DWORD dwAuthType; - DWORD fdwChecks; - LPWSTR pwszServerName; -} -alias SSL_EXTRA_CERT_CHAIN_POLICY_PARA HTTPSPolicyCallbackData; -alias SSL_EXTRA_CERT_CHAIN_POLICY_PARA* PSSL_EXTRA_CERT_CHAIN_POLICY_PARA, - PHTTPSPolicyCallbackData; - -/* #if (_WIN32_WINNT>=0x500) */ -struct CERT_CHAIN_POLICY_PARA { - DWORD cbSize = CERT_CHAIN_POLICY_PARA.sizeof; - DWORD dwFlags; - void* pvExtraPolicyPara; -} -alias CERT_CHAIN_POLICY_PARA* PCERT_CHAIN_POLICY_PARA; - -struct CERT_CHAIN_POLICY_STATUS { - DWORD cbSize = CERT_CHAIN_POLICY_STATUS.sizeof; - DWORD dwError; - LONG lChainIndex; - LONG lElementIndex; - void* pvExtraPolicyStatus; -} -alias CERT_CHAIN_POLICY_STATUS* PCERT_CHAIN_POLICY_STATUS; -/* #endif */ - -struct CRYPT_ALGORITHM_IDENTIFIER { - LPSTR pszObjId; - CRYPT_OBJID_BLOB Parameters; -} -alias CRYPT_ALGORITHM_IDENTIFIER* PCRYPT_ALGORITHM_IDENTIFIER; - -struct CRYPT_BIT_BLOB { - DWORD cbData; - BYTE* pbData; - DWORD cUnusedBits; -} -alias CRYPT_BIT_BLOB* PCRYPT_BIT_BLOB; - -struct CERT_PUBLIC_KEY_INFO { - CRYPT_ALGORITHM_IDENTIFIER Algorithm; - CRYPT_BIT_BLOB PublicKey; -} -alias CERT_PUBLIC_KEY_INFO* PCERT_PUBLIC_KEY_INFO; - -struct CERT_EXTENSION { - LPSTR pszObjId; - BOOL fCritical; - CRYPT_OBJID_BLOB Value; -} -alias CERT_EXTENSION* PCERT_EXTENSION; - -struct CERT_INFO { - DWORD dwVersion; - CRYPT_INTEGER_BLOB SerialNumber; - CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm; - CERT_NAME_BLOB Issuer; - FILETIME NotBefore; - FILETIME NotAfter; - CERT_NAME_BLOB Subject; - CERT_PUBLIC_KEY_INFO SubjectPublicKeyInfo; - CRYPT_BIT_BLOB IssuerUniqueId; - CRYPT_BIT_BLOB SubjectUniqueId; - DWORD cExtension; - PCERT_EXTENSION rgExtension; -} -alias CERT_INFO* PCERT_INFO; - -struct CERT_CONTEXT { - DWORD dwCertEncodingType; - BYTE* pbCertEncoded; - DWORD cbCertEncoded; - PCERT_INFO pCertInfo; - HCERTSTORE hCertStore; -} -alias CERT_CONTEXT* PCERT_CONTEXT; -alias const(CERT_CONTEXT)* PCCERT_CONTEXT; - -struct CTL_USAGE { - DWORD cUsageIdentifier; - LPSTR* rgpszUsageIdentifier; -} -alias CTL_USAGE CERT_ENHKEY_USAGE; -alias CTL_USAGE* PCTRL_USAGE, PCERT_ENHKEY_USAGE; - -struct CERT_USAGE_MATCH { - DWORD dwType; - CERT_ENHKEY_USAGE Usage; -} -alias CERT_USAGE_MATCH* PCERT_USAGE_MATCH; -/* #if (_WIN32_WINNT>=0x500) */ - -struct CERT_CHAIN_PARA { - DWORD cbSize = CERT_CHAIN_PARA.sizeof; - CERT_USAGE_MATCH RequestedUsage; -//#if CERT_CHAIN_PARA_HAS_EXTRA_FIELDS - CERT_USAGE_MATCH RequestedIssuancePolicy; - DWORD dwUrlRetrievalTimeout; - BOOL fCheckRevocationFreshnessTime; - DWORD dwRevocationFreshnessTime; -//#endif -} -alias CERT_CHAIN_PARA* PCERT_CHAIN_PARA; - -extern (Windows) alias BOOL function(PCCERT_CONTEXT, void*) - PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK; - -struct CERT_CHAIN_FIND_BY_ISSUER_PARA { - DWORD cbSize = CERT_CHAIN_FIND_BY_ISSUER_PARA.sizeof; - LPCSTR pszUsageIdentifier; - DWORD dwKeySpec; - DWORD dwAcquirePrivateKeyFlags; - DWORD cIssuer; - CERT_NAME_BLOB* rgIssuer; - PFN_CERT_CHAIN_FIND_BY_ISSUER_CALLBACK pfnFIndCallback; - void* pvFindArg; - DWORD* pdwIssuerChainIndex; - DWORD* pdwIssuerElementIndex; -} -alias CERT_CHAIN_FIND_BY_ISSUER_PARA* PCERT_CHAIN_FIND_BY_ISSUER_PARA; -/* #endif */ - -struct CERT_TRUST_STATUS { - DWORD dwErrorStatus; - DWORD dwInfoStatus; -} -alias CERT_TRUST_STATUS* PCERT_TRUST_STATUS; - -struct CRL_ENTRY { - CRYPT_INTEGER_BLOB SerialNumber; - FILETIME RevocationDate; - DWORD cExtension; - PCERT_EXTENSION rgExtension; -} -alias CRL_ENTRY* PCRL_ENTRY; - -struct CRL_INFO { - DWORD dwVersion; - CRYPT_ALGORITHM_IDENTIFIER SignatureAlgorithm; - CERT_NAME_BLOB Issuer; - FILETIME ThisUpdate; - FILETIME NextUpdate; - DWORD cCRLEntry; - PCRL_ENTRY rgCRLEntry; - DWORD cExtension; - PCERT_EXTENSION rgExtension; -} -alias CRL_INFO* PCRL_INFO; - -struct CRL_CONTEXT { - DWORD dwCertEncodingType; - BYTE* pbCrlEncoded; - DWORD cbCrlEncoded; - PCRL_INFO pCrlInfo; - HCERTSTORE hCertStore; -} -alias CRL_CONTEXT* PCRL_CONTEXT; -alias const(CRL_CONTEXT)* PCCRL_CONTEXT; - -struct CERT_REVOCATION_CRL_INFO { - DWORD cbSize = CERT_REVOCATION_CRL_INFO.sizeof; - PCCRL_CONTEXT pBaseCRLContext; - PCCRL_CONTEXT pDeltaCRLContext; - PCRL_ENTRY pCrlEntry; - BOOL fDeltaCrlEntry; -} -alias CERT_REVOCATION_CRL_INFO* PCERT_REVOCATION_CRL_INFO; - -struct CERT_REVOCATION_INFO { - DWORD cbSize = CERT_REVOCATION_INFO.sizeof; - DWORD dwRevocationResult; - LPCSTR pszRevocationOid; - LPVOID pvOidSpecificInfo; - BOOL fHasFreshnessTime; - DWORD dwFreshnessTime; - PCERT_REVOCATION_CRL_INFO pCrlInfo; -} -alias CERT_REVOCATION_INFO* PCERT_REVOCATION_INFO; - -/* #if (_WIN32_WINNT>=0x500) */ -struct CERT_CHAIN_ELEMENT { - DWORD cbSize = CERT_CHAIN_ELEMENT.sizeof; - PCCERT_CONTEXT pCertContext; - CERT_TRUST_STATUS TrustStatus; - PCERT_REVOCATION_INFO pRevocationInfo; - PCERT_ENHKEY_USAGE pIssuanceUsage; - PCERT_ENHKEY_USAGE pApplicationUsage; -} -alias CERT_CHAIN_ELEMENT* PCERT_CHAIN_ELEMENT; -/* #endif */ - -struct CRYPT_ATTRIBUTE { - LPSTR pszObjId; - DWORD cValue; - PCRYPT_ATTR_BLOB rgValue; -} -alias CRYPT_ATTRIBUTE* PCRYPT_ATTRIBUTE; - -struct CTL_ENTRY { - CRYPT_DATA_BLOB SubjectIdentifier; - DWORD cAttribute; - PCRYPT_ATTRIBUTE rgAttribute; -} -alias CTL_ENTRY* PCTL_ENTRY; - -struct CTL_INFO { - DWORD dwVersion; - CTL_USAGE SubjectUsage; - CRYPT_DATA_BLOB ListIdentifier; - CRYPT_INTEGER_BLOB SequenceNumber; - FILETIME ThisUpdate; - FILETIME NextUpdate; - CRYPT_ALGORITHM_IDENTIFIER SubjectAlgorithm; - DWORD cCTLEntry; - PCTL_ENTRY rgCTLEntry; - DWORD cExtension; - PCERT_EXTENSION rgExtension; -} -alias CTL_INFO* PCTL_INFO; - -struct CTL_CONTEXT { - DWORD dwMsgAndCertEncodingType; - BYTE* pbCtlEncoded; - DWORD cbCtlEncoded; - PCTL_INFO pCtlInfo; - HCERTSTORE hCertStore; - HCRYPTMSG hCryptMsg; - BYTE* pbCtlContent; - DWORD cbCtlContent; -} -alias CTL_CONTEXT* PCTL_CONTEXT; -alias const(CTL_CONTEXT)* PCCTL_CONTEXT; - -struct CERT_TRUST_LIST_INFO { - DWORD cbSize = CERT_TRUST_LIST_INFO.sizeof; - PCTL_ENTRY pCtlEntry; - PCCTL_CONTEXT pCtlContext; -} -alias CERT_TRUST_LIST_INFO* PCERT_TRUST_LIST_INFO; - -struct CERT_SIMPLE_CHAIN { - DWORD cbSize = CERT_SIMPLE_CHAIN.sizeof; - CERT_TRUST_STATUS TrustStatus; - DWORD cElement; - PCERT_CHAIN_ELEMENT* rgpElement; - PCERT_TRUST_LIST_INFO pTrustListInfo; - BOOL fHasRevocationFreshnessTime; - DWORD dwRevocationFreshnessTime; -} -alias CERT_SIMPLE_CHAIN* PCERT_SIMPLE_CHAIN; - -/* #if (_WIN32_WINNT>=0x500) */ -alias const(CERT_CHAIN_CONTEXT)* PCCERT_CHAIN_CONTEXT; -struct CERT_CHAIN_CONTEXT { - DWORD cbSize = CERT_CHAIN_CONTEXT.sizeof; - CERT_TRUST_STATUS TrustStatus; - DWORD cChain; - PCERT_SIMPLE_CHAIN* rgpChain; - DWORD cLowerQualityChainContext; - PCCERT_CHAIN_CONTEXT* rgpLowerQualityChainContext; - BOOL fHasRevocationFreshnessTime; - DWORD dwRevocationFreshnessTime; -} -alias CERT_CHAIN_CONTEXT* PCERT_CHAIN_CONTEXT; -/* #endif */ - -struct PROV_ENUMALGS { - ALG_ID aiAlgid; - DWORD dwBitLen; - DWORD dwNameLen; - CHAR[20] szName; -} - -struct PUBLICKEYSTRUC { - BYTE bType; - BYTE bVersion; - WORD reserved; - ALG_ID aiKeyAlg; -} -alias PUBLICKEYSTRUC BLOBHEADER; - -struct RSAPUBKEY { - DWORD magic; - DWORD bitlen; - DWORD pubexp; -} - -struct HMAC_INFO { - ALG_ID HashAlgid; - BYTE* pbInnerString; - DWORD cbInnerString; - BYTE* pbOuterString; - DWORD cbOuterString; -} -alias HMAC_INFO* PHMAC_INFO; - -extern (Windows) { - BOOL CertCloseStore(HCERTSTORE, DWORD); - BOOL CertGetCertificateChain(HCERTCHAINENGINE, PCCERT_CONTEXT, LPFILETIME, - HCERTSTORE, PCERT_CHAIN_PARA, DWORD, LPVOID, PCCERT_CHAIN_CONTEXT*); - BOOL CertVerifyCertificateChainPolicy(LPCSTR, PCCERT_CHAIN_CONTEXT, - PCERT_CHAIN_POLICY_PARA, PCERT_CHAIN_POLICY_STATUS); - void CertFreeCertificateChain(PCCERT_CHAIN_CONTEXT); - DWORD CertNameToStrA(DWORD, PCERT_NAME_BLOB, DWORD, LPSTR, DWORD); - DWORD CertNameToStrW(DWORD, PCERT_NAME_BLOB, DWORD, LPWSTR, DWORD); - HCERTSTORE CertOpenSystemStoreA(HCRYPTPROV, LPCSTR); - HCERTSTORE CertOpenSystemStoreW(HCRYPTPROV, LPCWSTR); - HCERTSTORE CertOpenStore(LPCSTR, DWORD, HCRYPTPROV, DWORD, const(void)*); - PCCERT_CONTEXT CertFindCertificateInStore(HCERTSTORE, DWORD, DWORD, DWORD, - const(void)*, PCCERT_CONTEXT); - BOOL CertFreeCertificateContext(PCCERT_CONTEXT); - PCCERT_CONTEXT CertGetIssuerCertificateFromStore(HCERTSTORE, - PCCERT_CONTEXT, PCCERT_CONTEXT, DWORD*); - PCCERT_CHAIN_CONTEXT CertFindChainInStore(HCERTSTORE, DWORD, DWORD, DWORD, - const(void)*, PCCERT_CHAIN_CONTEXT); - - BOOL CryptAcquireContextA(HCRYPTPROV*, LPCSTR, LPCSTR, DWORD, DWORD); - BOOL CryptAcquireContextW(HCRYPTPROV*, LPCWSTR, LPCWSTR, DWORD, DWORD); - BOOL CryptContextAddRef(HCRYPTPROV, DWORD*, DWORD); - BOOL CryptReleaseContext(HCRYPTPROV, DWORD); - BOOL CryptGenKey(HCRYPTPROV, ALG_ID, DWORD, HCRYPTKEY*); - BOOL CryptDeriveKey(HCRYPTPROV, ALG_ID, HCRYPTHASH, DWORD, HCRYPTKEY*); - BOOL CryptDestroyKey(HCRYPTKEY); - static if (_WIN32_WINNT >= 0x500) { - BOOL CryptDuplicateHash(HCRYPTHASH, DWORD*, DWORD, HCRYPTHASH*); - BOOL CryptDuplicateKey(HCRYPTKEY, DWORD*, DWORD, HCRYPTKEY*); - } - BOOL CryptSetKeyParam(HCRYPTKEY, DWORD, PBYTE, DWORD); - BOOL CryptGetKeyParam(HCRYPTKEY, DWORD, PBYTE, PDWORD, DWORD); - BOOL CryptSetHashParam(HCRYPTHASH, DWORD, PBYTE, DWORD); - BOOL CryptGetHashParam(HCRYPTHASH, DWORD, PBYTE, PDWORD, DWORD); - BOOL CryptSetProvParam(HCRYPTPROV, DWORD, PBYTE, DWORD); - BOOL CryptGetProvParam(HCRYPTPROV, DWORD, PBYTE, PDWORD, DWORD); - BOOL CryptGenRandom(HCRYPTPROV, DWORD, PBYTE); - BOOL CryptGetUserKey(HCRYPTPROV, DWORD, HCRYPTKEY*); - BOOL CryptExportKey(HCRYPTKEY, HCRYPTKEY, DWORD, DWORD, PBYTE, PDWORD); - BOOL CryptImportKey(HCRYPTPROV, PBYTE, DWORD, HCRYPTKEY, DWORD, - HCRYPTKEY*); - BOOL CryptEncrypt(HCRYPTKEY, HCRYPTHASH, BOOL, DWORD, PBYTE, PDWORD, - DWORD); - BOOL CryptDecrypt(HCRYPTKEY, HCRYPTHASH, BOOL, DWORD, PBYTE, PDWORD); - BOOL CryptCreateHash(HCRYPTPROV, ALG_ID, HCRYPTKEY, DWORD, HCRYPTHASH*); - BOOL CryptHashData(HCRYPTHASH, PBYTE, DWORD, DWORD); - BOOL CryptHashSessionKey(HCRYPTHASH, HCRYPTKEY, DWORD); - BOOL CryptGetHashValue(HCRYPTHASH, DWORD, PBYTE, PDWORD); - BOOL CryptDestroyHash(HCRYPTHASH); - BOOL CryptSignHashA(HCRYPTHASH, DWORD, LPCSTR, DWORD, PBYTE, PDWORD); - BOOL CryptSignHashW(HCRYPTHASH, DWORD, LPCWSTR, DWORD, PBYTE, PDWORD); - BOOL CryptVerifySignatureA(HCRYPTHASH, PBYTE, DWORD, HCRYPTKEY, LPCSTR, - DWORD); - BOOL CryptVerifySignatureW(HCRYPTHASH, PBYTE, DWORD, HCRYPTKEY, LPCWSTR, - DWORD); - BOOL CryptSetProviderA(LPCSTR, DWORD); - BOOL CryptSetProviderW(LPCWSTR, DWORD); -} - -version (Unicode) { - alias CertNameToStrW CertNameToStr; - alias CryptAcquireContextW CryptAcquireContext; - alias CryptSignHashW CryptSignHash; - alias CryptVerifySignatureW CryptVerifySignature; - alias CryptSetProviderW CryptSetProvider; - alias CertOpenSystemStoreW CertOpenSystemStore; - /+alias CERT_FIND_SUBJECT_STR_W CERT_FIND_SUBJECT_STR; - alias CERT_FIND_ISSUER_STR_W CERT_FIND_ISSUER_STR;+/ -} else { - alias CertNameToStrA CertNameToStr; - alias CryptAcquireContextA CryptAcquireContext; - alias CryptSignHashA CryptSignHash; - alias CryptVerifySignatureA CryptVerifySignature; - alias CryptSetProviderA CryptSetProvider; - alias CertOpenSystemStoreA CertOpenSystemStore; - /+alias CERT_FIND_SUBJECT_STR_A CERT_FIND_SUBJECT_STR; - alias CERT_FIND_ISSUER_STR_A CERT_FIND_ISSUER_STR;+/ -} diff --git a/3rdparty-extra/win32/wininet.d b/3rdparty-extra/win32/wininet.d deleted file mode 100644 index 95a1f81a3..000000000 --- a/3rdparty-extra/win32/wininet.d +++ /dev/null @@ -1,1247 +0,0 @@ -/***********************************************************************\ -* wininet.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.wininet; -version(Windows): -pragma(lib, "wininet"); - -// FIXME: check types and grouping of constants - -import win32.windows; - -enum { - INTERNET_INVALID_PORT_NUMBER = 0, - INTERNET_DEFAULT_FTP_PORT = 21, - INTERNET_DEFAULT_GOPHER_PORT = 70, - INTERNET_DEFAULT_HTTP_PORT = 80, - INTERNET_DEFAULT_HTTPS_PORT = 443, - INTERNET_DEFAULT_SOCKS_PORT = 1080 -} - -const size_t - MAX_CACHE_ENTRY_INFO_SIZE = 4096, - INTERNET_MAX_HOST_NAME_LENGTH = 256, - INTERNET_MAX_USER_NAME_LENGTH = 128, - INTERNET_MAX_PASSWORD_LENGTH = 128, - INTERNET_MAX_PORT_NUMBER_LENGTH = 5, - INTERNET_MAX_PORT_NUMBER_VALUE = 65535, - INTERNET_MAX_PATH_LENGTH = 2048, - INTERNET_MAX_SCHEME_LENGTH = 32, - INTERNET_MAX_URL_LENGTH = INTERNET_MAX_SCHEME_LENGTH - + "://".length - + INTERNET_MAX_PATH_LENGTH; - -enum : DWORD { - INTERNET_KEEP_ALIVE_UNKNOWN = DWORD.max, - INTERNET_KEEP_ALIVE_DISABLED = 0, - INTERNET_KEEP_ALIVE_ENABLED -} - -enum { - INTERNET_REQFLAG_FROM_CACHE = 1, - INTERNET_REQFLAG_ASYNC = 2 -} - -const DWORD - INTERNET_FLAG_RELOAD = 0x80000000, - INTERNET_FLAG_RAW_DATA = 0x40000000, - INTERNET_FLAG_EXISTING_CONNECT = 0x20000000, - INTERNET_FLAG_ASYNC = 0x10000000, - INTERNET_FLAG_PASSIVE = 0x08000000, - INTERNET_FLAG_NO_CACHE_WRITE = 0x04000000, - INTERNET_FLAG_DONT_CACHE = INTERNET_FLAG_NO_CACHE_WRITE, - INTERNET_FLAG_MAKE_PERSISTENT = 0x02000000, - INTERNET_FLAG_OFFLINE = 0x01000000, - INTERNET_FLAG_SECURE = 0x00800000, - INTERNET_FLAG_KEEP_CONNECTION = 0x00400000, - INTERNET_FLAG_NO_AUTO_REDIRECT = 0x00200000, - INTERNET_FLAG_READ_PREFETCH = 0x00100000, - INTERNET_FLAG_NO_COOKIES = 0x00080000, - INTERNET_FLAG_NO_AUTH = 0x00040000, - INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP = 0x00008000, - INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS = 0x00004000, - INTERNET_FLAG_IGNORE_CERT_DATE_INVALID = 0x00002000, - INTERNET_FLAG_IGNORE_CERT_CN_INVALID = 0x00001000, - INTERNET_FLAG_RESYNCHRONIZE = 0x00000800, - INTERNET_FLAG_HYPERLINK = 0x00000400, - INTERNET_FLAG_NO_UI = 0x00000200, - INTERNET_FLAG_PRAGMA_NOCACHE = 0x00000100, - INTERNET_FLAG_MUST_CACHE_REQUEST = 0x00000010, - INTERNET_FLAG_TRANSFER_ASCII = FTP_TRANSFER_TYPE_ASCII, - INTERNET_FLAG_TRANSFER_BINARY = FTP_TRANSFER_TYPE_BINARY, - - SECURITY_INTERNET_MASK = 0x0000F000, - SECURITY_SET_MASK = SECURITY_INTERNET_MASK, - - INTERNET_FLAGS_MASK = 0xFFFCFE13, - INTERNET_OPTIONS_MASK = ~INTERNET_FLAGS_MASK; - -const INTERNET_NO_CALLBACK = 0; -const INTERNET_RFC1123_FORMAT = 0; -const size_t INTERNET_RFC1123_BUFSIZE = 30; - -const DWORD - ICU_ESCAPE = 0x80000000, - ICU_USERNAME = 0x40000000, - ICU_NO_ENCODE = 0x20000000, - ICU_DECODE = 0x10000000, - ICU_NO_META = 0x08000000, - ICU_ENCODE_SPACES_ONLY = 0x04000000, - ICU_BROWSER_MODE = 0x02000000; - -enum { - INTERNET_OPEN_TYPE_PRECONFIG = 0, - INTERNET_OPEN_TYPE_DIRECT = 1, - INTERNET_OPEN_TYPE_PROXY = 3, - PRE_CONFIG_INTERNET_ACCESS = INTERNET_OPEN_TYPE_PRECONFIG, - LOCAL_INTERNET_ACCESS = INTERNET_OPEN_TYPE_DIRECT, - GATEWAY_INTERNET_ACCESS = 2, - CERN_PROXY_INTERNET_ACCESS = INTERNET_OPEN_TYPE_PROXY, -} - -const ISO_GLOBAL = 1; -const ISO_REGISTRY = 2; -const ISO_VALID_FLAGS = ISO_GLOBAL | ISO_REGISTRY; - -enum { - INTERNET_OPTION_CALLBACK = 1, - INTERNET_OPTION_CONNECT_TIMEOUT, - INTERNET_OPTION_CONNECT_RETRIES, - INTERNET_OPTION_CONNECT_BACKOFF, - INTERNET_OPTION_SEND_TIMEOUT, - INTERNET_OPTION_CONTROL_SEND_TIMEOUT = INTERNET_OPTION_SEND_TIMEOUT, - INTERNET_OPTION_RECEIVE_TIMEOUT, - INTERNET_OPTION_CONTROL_RECEIVE_TIMEOUT = INTERNET_OPTION_RECEIVE_TIMEOUT, - INTERNET_OPTION_DATA_SEND_TIMEOUT, - INTERNET_OPTION_DATA_RECEIVE_TIMEOUT, - INTERNET_OPTION_HANDLE_TYPE, - INTERNET_OPTION_CONTEXT_VALUE, - INTERNET_OPTION_LISTEN_TIMEOUT, - INTERNET_OPTION_READ_BUFFER_SIZE, - INTERNET_OPTION_WRITE_BUFFER_SIZE, // = 13 - INTERNET_OPTION_ASYNC_ID = 15, - INTERNET_OPTION_ASYNC_PRIORITY, // = 16 - INTERNET_OPTION_PARENT_HANDLE = 21, - INTERNET_OPTION_KEEP_CONNECTION, - INTERNET_OPTION_REQUEST_FLAGS, - INTERNET_OPTION_EXTENDED_ERROR, // = 24 - INTERNET_OPTION_OFFLINE_MODE = 26, - INTERNET_OPTION_CACHE_STREAM_HANDLE, - INTERNET_OPTION_USERNAME, - INTERNET_OPTION_PASSWORD, - INTERNET_OPTION_ASYNC, - INTERNET_OPTION_SECURITY_FLAGS, - INTERNET_OPTION_SECURITY_CERTIFICATE_STRUCT, - INTERNET_OPTION_DATAFILE_NAME, - INTERNET_OPTION_URL, - INTERNET_OPTION_SECURITY_CERTIFICATE, - INTERNET_OPTION_SECURITY_KEY_BITNESS, - INTERNET_OPTION_REFRESH, - INTERNET_OPTION_PROXY, - INTERNET_OPTION_SETTINGS_CHANGED, - INTERNET_OPTION_VERSION, - INTERNET_OPTION_USER_AGENT, - INTERNET_OPTION_END_BROWSER_SESSION, - INTERNET_OPTION_PROXY_USERNAME, - INTERNET_OPTION_PROXY_PASSWORD, // = 44 - INTERNET_FIRST_OPTION = INTERNET_OPTION_CALLBACK, - // why? - INTERNET_LAST_OPTION = INTERNET_OPTION_USER_AGENT -} - -const INTERNET_PRIORITY_FOREGROUND = 1000; - -enum { - INTERNET_HANDLE_TYPE_INTERNET = 1, - INTERNET_HANDLE_TYPE_CONNECT_FTP, - INTERNET_HANDLE_TYPE_CONNECT_GOPHER, - INTERNET_HANDLE_TYPE_CONNECT_HTTP, - INTERNET_HANDLE_TYPE_FTP_FIND, - INTERNET_HANDLE_TYPE_FTP_FIND_HTML, - INTERNET_HANDLE_TYPE_FTP_FILE, - INTERNET_HANDLE_TYPE_FTP_FILE_HTML, - INTERNET_HANDLE_TYPE_GOPHER_FIND, - INTERNET_HANDLE_TYPE_GOPHER_FIND_HTML, - INTERNET_HANDLE_TYPE_GOPHER_FILE, - INTERNET_HANDLE_TYPE_GOPHER_FILE_HTML, - INTERNET_HANDLE_TYPE_HTTP_REQUEST -} - -const DWORD - SECURITY_FLAG_SECURE = 0x00000001, - SECURITY_FLAG_SSL = 0x00000002, - SECURITY_FLAG_SSL3 = 0x00000004, - SECURITY_FLAG_PCT = 0x00000008, - SECURITY_FLAG_PCT4 = 0x00000010, - SECURITY_FLAG_IETFSSL4 = 0x00000020, - SECURITY_FLAG_IGNORE_REVOCATION = 0x00000080, - SECURITY_FLAG_IGNORE_UNKNOWN_CA = 0x00000100, - SECURITY_FLAG_IGNORE_WRONG_USAGE = 0x00000200, - SECURITY_FLAG_40BIT = 0x10000000, - SECURITY_FLAG_128BIT = 0x20000000, - SECURITY_FLAG_56BIT = 0x40000000, - SECURITY_FLAG_UNKNOWNBIT = 0x80000000, - SECURITY_FLAG_NORMALBITNESS = SECURITY_FLAG_40BIT, - SECURITY_FLAG_IGNORE_CERT_CN_INVALID = INTERNET_FLAG_IGNORE_CERT_CN_INVALID, - SECURITY_FLAG_IGNORE_CERT_DATE_INVALID = INTERNET_FLAG_IGNORE_CERT_DATE_INVALID, - SECURITY_FLAG_IGNORE_REDIRECT_TO_HTTPS = INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTPS, - SECURITY_FLAG_IGNORE_REDIRECT_TO_HTTP = INTERNET_FLAG_IGNORE_REDIRECT_TO_HTTP; - -enum { - INTERNET_SERVICE_FTP = 1, - INTERNET_SERVICE_GOPHER, - INTERNET_SERVICE_HTTP -} - -enum { - INTERNET_STATUS_RESOLVING_NAME = 10, - INTERNET_STATUS_NAME_RESOLVED = 11, - INTERNET_STATUS_CONNECTING_TO_SERVER = 20, - INTERNET_STATUS_CONNECTED_TO_SERVER = 21, - INTERNET_STATUS_SENDING_REQUEST = 30, - INTERNET_STATUS_REQUEST_SENT = 31, - INTERNET_STATUS_RECEIVING_RESPONSE = 40, - INTERNET_STATUS_RESPONSE_RECEIVED = 41, - INTERNET_STATUS_CTL_RESPONSE_RECEIVED = 42, - INTERNET_STATUS_PREFETCH = 43, - INTERNET_STATUS_CLOSING_CONNECTION = 50, - INTERNET_STATUS_CONNECTION_CLOSED = 51, - INTERNET_STATUS_HANDLE_CREATED = 60, - INTERNET_STATUS_HANDLE_CLOSING = 70, - INTERNET_STATUS_REQUEST_COMPLETE = 100, - INTERNET_STATUS_REDIRECT = 110 -} - -enum { - FTP_TRANSFER_TYPE_UNKNOWN = 0, - FTP_TRANSFER_TYPE_ASCII = 1, - FTP_TRANSFER_TYPE_BINARY = 2, - FTP_TRANSFER_TYPE_MASK = 3 -} - -const size_t - MAX_GOPHER_DISPLAY_TEXT = 128, - MAX_GOPHER_SELECTOR_TEXT = 256, - MAX_GOPHER_HOST_NAME = INTERNET_MAX_HOST_NAME_LENGTH, - MAX_GOPHER_LOCATOR_LENGTH - = 1 + MAX_GOPHER_DISPLAY_TEXT + 1 + MAX_GOPHER_SELECTOR_TEXT + 1 - + MAX_GOPHER_HOST_NAME + 1 + INTERNET_MAX_PORT_NUMBER_LENGTH + 4; - -const DWORD - GOPHER_TYPE_TEXT_FILE = 0x00000001, - GOPHER_TYPE_DIRECTORY = 0x00000002, - GOPHER_TYPE_CSO = 0x00000004, - GOPHER_TYPE_ERROR = 0x00000008, - GOPHER_TYPE_MAC_BINHEX = 0x00000010, - GOPHER_TYPE_DOS_ARCHIVE = 0x00000020, - GOPHER_TYPE_UNIX_UUENCODED = 0x00000040, - GOPHER_TYPE_INDEX_SERVER = 0x00000080, - GOPHER_TYPE_TELNET = 0x00000100, - GOPHER_TYPE_BINARY = 0x00000200, - GOPHER_TYPE_REDUNDANT = 0x00000400, - GOPHER_TYPE_TN3270 = 0x00000800, - GOPHER_TYPE_GIF = 0x00001000, - GOPHER_TYPE_IMAGE = 0x00002000, - GOPHER_TYPE_BITMAP = 0x00004000, - GOPHER_TYPE_MOVIE = 0x00008000, - GOPHER_TYPE_SOUND = 0x00010000, - GOPHER_TYPE_HTML = 0x00020000, - GOPHER_TYPE_PDF = 0x00040000, - GOPHER_TYPE_CALENDAR = 0x00080000, - GOPHER_TYPE_INLINE = 0x00100000, - GOPHER_TYPE_UNKNOWN = 0x20000000, - GOPHER_TYPE_ASK = 0x40000000, - GOPHER_TYPE_GOPHER_PLUS = 0x80000000, - GOPHER_TYPE_FILE_MASK = 0x001FF271; - -BOOL IS_GOPHER_FILE(DWORD t) { - return !!(t & GOPHER_TYPE_FILE_MASK); -} - -BOOL IS_GOPHER_DIRECTORY(DWORD t) { - return !!(t & GOPHER_TYPE_DIRECTORY); -} - -BOOL IS_GOPHER_PHONE_SERVER(DWORD t) { - return !!(t & GOPHER_TYPE_CSO); -} - -BOOL IS_GOPHER_ERROR(DWORD t) { - return !!(t & GOPHER_TYPE_ERROR); -} - -BOOL IS_GOPHER_INDEX_SERVER(DWORD t) { - return !!(t & GOPHER_TYPE_INDEX_SERVER); -} - -BOOL IS_GOPHER_TELNET_SESSION(DWORD t) { - return !!(t & GOPHER_TYPE_TELNET); -} - -BOOL IS_GOPHER_BACKUP_SERVER(DWORD t) { - return !!(t & GOPHER_TYPE_REDUNDANT); -} - -BOOL IS_GOPHER_TN3270_SESSION(DWORD t) { - return !!(t & GOPHER_TYPE_TN3270); -} - -BOOL IS_GOPHER_ASK(DWORD t) { - return !!(t & GOPHER_TYPE_ASK); -} - -BOOL IS_GOPHER_PLUS(DWORD t) { - return !!(t & GOPHER_TYPE_GOPHER_PLUS); -} - -BOOL IS_GOPHER_TYPE_KNOWN(DWORD t) { - return !(t & GOPHER_TYPE_UNKNOWN); -} - -const size_t - MAX_GOPHER_CATEGORY_NAME = 128, - MAX_GOPHER_ATTRIBUTE_NAME = 128, - MIN_GOPHER_ATTRIBUTE_LENGTH = 256; - -const TCHAR[] - GOPHER_INFO_CATEGORY = "+INFO", - GOPHER_ADMIN_CATEGORY = "+ADMIN", - GOPHER_VIEWS_CATEGORY = "+VIEWS", - GOPHER_ABSTRACT_CATEGORY = "+ABSTRACT", - GOPHER_VERONICA_CATEGORY = "+VERONICA", - GOPHER_ADMIN_ATTRIBUTE = "Admin", - GOPHER_MOD_DATE_ATTRIBUTE = "Mod-Date", - GOPHER_TTL_ATTRIBUTE = "TTL", - GOPHER_SCORE_ATTRIBUTE = "Score", - GOPHER_RANGE_ATTRIBUTE = "Score-range", - GOPHER_SITE_ATTRIBUTE = "Site", - GOPHER_ORG_ATTRIBUTE = "Org", - GOPHER_LOCATION_ATTRIBUTE = "Loc", - GOPHER_GEOG_ATTRIBUTE = "Geog", - GOPHER_TIMEZONE_ATTRIBUTE = "TZ", - GOPHER_PROVIDER_ATTRIBUTE = "Provider", - GOPHER_VERSION_ATTRIBUTE = "Version", - GOPHER_ABSTRACT_ATTRIBUTE = "Abstract", - GOPHER_VIEW_ATTRIBUTE = "View", - GOPHER_TREEWALK_ATTRIBUTE = "treewalk"; - -enum : DWORD { - GOPHER_ATTRIBUTE_ID_BASE = 0xABCCCC00, - GOPHER_CATEGORY_ID_ALL, - GOPHER_CATEGORY_ID_INFO, - GOPHER_CATEGORY_ID_ADMIN, - GOPHER_CATEGORY_ID_VIEWS, - GOPHER_CATEGORY_ID_ABSTRACT, - GOPHER_CATEGORY_ID_VERONICA, - GOPHER_CATEGORY_ID_ASK, - GOPHER_CATEGORY_ID_UNKNOWN, - GOPHER_ATTRIBUTE_ID_ALL, - GOPHER_ATTRIBUTE_ID_ADMIN, - GOPHER_ATTRIBUTE_ID_MOD_DATE, - GOPHER_ATTRIBUTE_ID_TTL, - GOPHER_ATTRIBUTE_ID_SCORE, - GOPHER_ATTRIBUTE_ID_RANGE, - GOPHER_ATTRIBUTE_ID_SITE, - GOPHER_ATTRIBUTE_ID_ORG, - GOPHER_ATTRIBUTE_ID_LOCATION, - GOPHER_ATTRIBUTE_ID_GEOG, - GOPHER_ATTRIBUTE_ID_TIMEZONE, - GOPHER_ATTRIBUTE_ID_PROVIDER, - GOPHER_ATTRIBUTE_ID_VERSION, - GOPHER_ATTRIBUTE_ID_ABSTRACT, - GOPHER_ATTRIBUTE_ID_VIEW, - GOPHER_ATTRIBUTE_ID_TREEWALK, - GOPHER_ATTRIBUTE_ID_UNKNOWN -} - -const HTTP_MAJOR_VERSION = 1; -const HTTP_MINOR_VERSION = 0; -const TCHAR[] HTTP_VERSION = "HTTP/1.0"; - -enum : DWORD { - HTTP_QUERY_MIME_VERSION, - HTTP_QUERY_CONTENT_TYPE, - HTTP_QUERY_CONTENT_TRANSFER_ENCODING, - HTTP_QUERY_CONTENT_ID, - HTTP_QUERY_CONTENT_DESCRIPTION, - HTTP_QUERY_CONTENT_LENGTH, - HTTP_QUERY_CONTENT_LANGUAGE, - HTTP_QUERY_ALLOW, - HTTP_QUERY_PUBLIC, - HTTP_QUERY_DATE, - HTTP_QUERY_EXPIRES, - HTTP_QUERY_LAST_MODIFIED, - HTTP_QUERY_MESSAGE_ID, - HTTP_QUERY_URI, - HTTP_QUERY_DERIVED_FROM, - HTTP_QUERY_COST, - HTTP_QUERY_LINK, - HTTP_QUERY_PRAGMA, - HTTP_QUERY_VERSION, - HTTP_QUERY_STATUS_CODE, - HTTP_QUERY_STATUS_TEXT, - HTTP_QUERY_RAW_HEADERS, - HTTP_QUERY_RAW_HEADERS_CRLF, - HTTP_QUERY_CONNECTION, - HTTP_QUERY_ACCEPT, - HTTP_QUERY_ACCEPT_CHARSET, - HTTP_QUERY_ACCEPT_ENCODING, - HTTP_QUERY_ACCEPT_LANGUAGE, - HTTP_QUERY_AUTHORIZATION, - HTTP_QUERY_CONTENT_ENCODING, - HTTP_QUERY_FORWARDED, - HTTP_QUERY_FROM, - HTTP_QUERY_IF_MODIFIED_SINCE, - HTTP_QUERY_LOCATION, - HTTP_QUERY_ORIG_URI, - HTTP_QUERY_REFERER, - HTTP_QUERY_RETRY_AFTER, - HTTP_QUERY_SERVER, - HTTP_QUERY_TITLE, - HTTP_QUERY_USER_AGENT, - HTTP_QUERY_WWW_AUTHENTICATE, - HTTP_QUERY_PROXY_AUTHENTICATE, - HTTP_QUERY_ACCEPT_RANGES, - HTTP_QUERY_SET_COOKIE, - HTTP_QUERY_COOKIE, - HTTP_QUERY_REQUEST_METHOD, - HTTP_QUERY_MAX = 45, - HTTP_QUERY_CUSTOM = 65535 -} - -const DWORD - HTTP_QUERY_FLAG_REQUEST_HEADERS = 0x80000000, - HTTP_QUERY_FLAG_SYSTEMTIME = 0x40000000, - HTTP_QUERY_FLAG_NUMBER = 0x20000000, - HTTP_QUERY_FLAG_COALESCE = 0x10000000, - HTTP_QUERY_MODIFIER_FLAGS_MASK = 0xF0000000, - HTTP_QUERY_HEADER_MASK = ~HTTP_QUERY_MODIFIER_FLAGS_MASK; - -enum { - HTTP_STATUS_OK = 200, - HTTP_STATUS_CREATED, - HTTP_STATUS_ACCEPTED, - HTTP_STATUS_PARTIAL, - HTTP_STATUS_NO_CONTENT, // = 204 - HTTP_STATUS_AMBIGUOUS = 300, - HTTP_STATUS_MOVED, - HTTP_STATUS_REDIRECT, - HTTP_STATUS_REDIRECT_METHOD, - HTTP_STATUS_NOT_MODIFIED, // = 304 - HTTP_STATUS_BAD_REQUEST = 400, - HTTP_STATUS_DENIED, - HTTP_STATUS_PAYMENT_REQ, - HTTP_STATUS_FORBIDDEN, - HTTP_STATUS_NOT_FOUND, - HTTP_STATUS_BAD_METHOD, - HTTP_STATUS_NONE_ACCEPTABLE, - HTTP_STATUS_PROXY_AUTH_REQ, - HTTP_STATUS_REQUEST_TIMEOUT, - HTTP_STATUS_CONFLICT, - HTTP_STATUS_GONE, - HTTP_STATUS_AUTH_REFUSED, // = 411 - HTTP_STATUS_SERVER_ERROR = 500, - HTTP_STATUS_NOT_SUPPORTED, - HTTP_STATUS_BAD_GATEWAY, - HTTP_STATUS_SERVICE_UNAVAIL, - HTTP_STATUS_GATEWAY_TIMEOUT // = 504 -} - -enum { - INTERNET_PREFETCH_PROGRESS, - INTERNET_PREFETCH_COMPLETE, - INTERNET_PREFETCH_ABORTED -} - -const FLAGS_ERROR_UI_FILTER_FOR_ERRORS = 0x01; -const FLAGS_ERROR_UI_FLAGS_CHANGE_OPTIONS = 0x02; -const FLAGS_ERROR_UI_FLAGS_GENERATE_DATA = 0x04; -const FLAGS_ERROR_UI_FLAGS_NO_UI = 0x08; - -const DWORD - HTTP_ADDREQ_INDEX_MASK = 0x0000FFFF, - HTTP_ADDREQ_FLAGS_MASK = 0xFFFF0000, - HTTP_ADDREQ_FLAG_COALESCE_WITH_SEMICOLON = 0x01000000, - HTTP_ADDREQ_FLAG_ADD_IF_NEW = 0x10000000, - HTTP_ADDREQ_FLAG_ADD = 0x20000000, - HTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA = 0x40000000, - HTTP_ADDREQ_FLAG_COALESCE = HTTP_ADDREQ_FLAG_COALESCE_WITH_COMMA, - HTTP_ADDREQ_FLAG_REPLACE = 0x80000000; - -enum { - INTERNET_ERROR_BASE = 12000, - ERROR_INTERNET_OUT_OF_HANDLES, - ERROR_INTERNET_TIMEOUT, - ERROR_INTERNET_EXTENDED_ERROR, - ERROR_INTERNET_INTERNAL_ERROR, - ERROR_INTERNET_INVALID_URL, - ERROR_INTERNET_UNRECOGNIZED_SCHEME, - ERROR_INTERNET_NAME_NOT_RESOLVED, - ERROR_INTERNET_PROTOCOL_NOT_FOUND, - ERROR_INTERNET_INVALID_OPTION, - ERROR_INTERNET_BAD_OPTION_LENGTH, - ERROR_INTERNET_OPTION_NOT_SETTABLE, - ERROR_INTERNET_SHUTDOWN, - ERROR_INTERNET_INCORRECT_USER_NAME, - ERROR_INTERNET_INCORRECT_PASSWORD, - ERROR_INTERNET_LOGIN_FAILURE, - ERROR_INTERNET_INVALID_OPERATION, - ERROR_INTERNET_OPERATION_CANCELLED, - ERROR_INTERNET_INCORRECT_HANDLE_TYPE, - ERROR_INTERNET_INCORRECT_HANDLE_STATE, - ERROR_INTERNET_NOT_PROXY_REQUEST, - ERROR_INTERNET_REGISTRY_VALUE_NOT_FOUND, - ERROR_INTERNET_BAD_REGISTRY_PARAMETER, - ERROR_INTERNET_NO_DIRECT_ACCESS, - ERROR_INTERNET_NO_CONTEXT, - ERROR_INTERNET_NO_CALLBACK, - ERROR_INTERNET_REQUEST_PENDING, - ERROR_INTERNET_INCORRECT_FORMAT, - ERROR_INTERNET_ITEM_NOT_FOUND, - ERROR_INTERNET_CANNOT_CONNECT, - ERROR_INTERNET_CONNECTION_ABORTED, - ERROR_INTERNET_CONNECTION_RESET, - ERROR_INTERNET_FORCE_RETRY, - ERROR_INTERNET_INVALID_PROXY_REQUEST, - ERROR_INTERNET_NEED_UI, // = INTERNET_ERROR_BASE + 34 - ERROR_INTERNET_HANDLE_EXISTS = INTERNET_ERROR_BASE + 36, - ERROR_INTERNET_SEC_CERT_DATE_INVALID, - ERROR_INTERNET_SEC_CERT_CN_INVALID, - ERROR_INTERNET_HTTP_TO_HTTPS_ON_REDIR, - ERROR_INTERNET_HTTPS_TO_HTTP_ON_REDIR, - ERROR_INTERNET_MIXED_SECURITY, - ERROR_INTERNET_CHG_POST_IS_NON_SECURE, - ERROR_INTERNET_POST_IS_NON_SECURE, - ERROR_INTERNET_CLIENT_AUTH_CERT_NEEDED, - ERROR_INTERNET_INVALID_CA, - ERROR_INTERNET_CLIENT_AUTH_NOT_SETUP, - ERROR_INTERNET_ASYNC_THREAD_FAILED, - ERROR_INTERNET_REDIRECT_SCHEME_CHANGE, // = INTERNET_ERROR_BASE + 48 - - ERROR_FTP_TRANSFER_IN_PROGRESS = INTERNET_ERROR_BASE + 110, - ERROR_FTP_DROPPED, // = INTERNET_ERROR_BASE + 111 - ERROR_GOPHER_PROTOCOL_ERROR = INTERNET_ERROR_BASE + 130, - ERROR_GOPHER_NOT_FILE, - ERROR_GOPHER_DATA_ERROR, - ERROR_GOPHER_END_OF_DATA, - ERROR_GOPHER_INVALID_LOCATOR, - ERROR_GOPHER_INCORRECT_LOCATOR_TYPE, - ERROR_GOPHER_NOT_GOPHER_PLUS, - ERROR_GOPHER_ATTRIBUTE_NOT_FOUND, - ERROR_GOPHER_UNKNOWN_LOCATOR, // = INTERNET_ERROR_BASE + 138, - ERROR_HTTP_HEADER_NOT_FOUND = INTERNET_ERROR_BASE + 150, - ERROR_HTTP_DOWNLEVEL_SERVER, - ERROR_HTTP_INVALID_SERVER_RESPONSE, - ERROR_HTTP_INVALID_HEADER, - ERROR_HTTP_INVALID_QUERY_REQUEST, - ERROR_HTTP_HEADER_ALREADY_EXISTS, - ERROR_HTTP_REDIRECT_FAILED, - ERROR_INTERNET_SECURITY_CHANNEL_ERROR, - ERROR_INTERNET_UNABLE_TO_CACHE_FILE, - ERROR_INTERNET_TCPIP_NOT_INSTALLED, - ERROR_HTTP_NOT_REDIRECTED, // = INTERNET_ERROR_BASE + 160 - // why? - INTERNET_ERROR_LAST = ERROR_INTERNET_TCPIP_NOT_INSTALLED -} - - -const NORMAL_CACHE_ENTRY = 0x000001; -const STABLE_CACHE_ENTRY = 0x000002; -const STICKY_CACHE_ENTRY = 0x000004; -const SPARSE_CACHE_ENTRY = 0x010000; -const OCX_CACHE_ENTRY = 0x020000; -const COOKIE_CACHE_ENTRY = 0x100000; -const URLHISTORY_CACHE_ENTRY = 0x200000; - -const CACHE_ENTRY_ATTRIBUTE_FC = 0x0004; -const CACHE_ENTRY_HITRATE_FC = 0x0010; -const CACHE_ENTRY_MODTIME_FC = 0x0040; -const CACHE_ENTRY_EXPTIME_FC = 0x0080; -const CACHE_ENTRY_ACCTIME_FC = 0x0100; -const CACHE_ENTRY_SYNCTIME_FC = 0x0200; -const CACHE_ENTRY_HEADERINFO_FC = 0x0400; - -enum { - WININET_API_FLAG_ASYNC = 1, - WININET_API_FLAG_SYNC = 4, - WININET_API_FLAG_USE_CONTEXT = 8 -} - -// FIXME: how should these really be grouped? -enum { - IRF_ASYNC = WININET_API_FLAG_ASYNC, - IRF_SYNC = WININET_API_FLAG_SYNC, - IRF_USE_CONTEXT = WININET_API_FLAG_USE_CONTEXT, -} -const IRF_NO_WAIT = 8; - -enum { - HSR_ASYNC = WININET_API_FLAG_ASYNC, - HSR_SYNC = WININET_API_FLAG_SYNC, - HSR_USE_CONTEXT = WININET_API_FLAG_USE_CONTEXT, -} - -const HSR_INITIATE = 8; -const HSR_DOWNLOAD = 16; -const HSR_CHUNKED = 32; - -const INTERNET_DIAL_UNATTENDED = 0x8000; -const INTERNET_DIALSTATE_DISCONNECTED = 1; -const INTERENT_GOONLINE_REFRESH = 1; -const INTERENT_GOONLINE_MASK = 1; -const INTERNET_AUTODIAL_FORCE_ONLINE = 1; -const INTERNET_AUTODIAL_FORCE_UNATTENDED = 2; -const INTERNET_AUTODIAL_FAILIFSECURITYCHECK = 4; -const INTERNET_CONNECTION_MODEM = 0x01; -const INTERNET_CONNECTION_LAN = 0x02; -const INTERNET_CONNECTION_PROXY = 0x04; -const INTERNET_CONNECTION_MODEM_BUSY = 0x08; -const INTERNET_RAS_INSTALLED = 0x10; -const INTERNET_CONNECTION_OFFLINE = 0x20; -const INTERNET_CONNECTION_CONFIGURED = 0x40; - -enum { - CACHEGROUP_SEARCH_ALL = 0, - CACHEGROUP_SEARCH_BYURL = 1 -} - -enum { - INTERNET_CACHE_GROUP_ADD = 0, - INTERNET_CACHE_GROUP_REMOVE = 1 -} - -mixin DECLARE_HANDLE!("HINTERNET"); // doesn't work - bug -/*struct HINTERNET { - HANDLE h; - alias h this; -}*/ -alias HINTERNET* LPHINTERNET; - -alias LONGLONG GROUPID; -alias WORD INTERNET_PORT; -alias WORD* LPINTERNET_PORT; - -enum INTERNET_SCHEME { - INTERNET_SCHEME_PARTIAL = -2, - INTERNET_SCHEME_UNKNOWN, - INTERNET_SCHEME_DEFAULT, - INTERNET_SCHEME_FTP, - INTERNET_SCHEME_GOPHER, - INTERNET_SCHEME_HTTP, - INTERNET_SCHEME_HTTPS, - INTERNET_SCHEME_FILE, - INTERNET_SCHEME_NEWS, - INTERNET_SCHEME_MAILTO, - INTERNET_SCHEME_SOCKS, - INTERNET_SCHEME_FIRST = INTERNET_SCHEME_FTP, - INTERNET_SCHEME_LAST = INTERNET_SCHEME_SOCKS -} -alias INTERNET_SCHEME* LPINTERNET_SCHEME; - -struct INTERNET_ASYNC_RESULT { - DWORD dwResult; - DWORD dwError; -} -alias INTERNET_ASYNC_RESULT* LPINTERNET_ASYNC_RESULT; - -struct INTERNET_PREFETCH_STATUS { - DWORD dwStatus; - DWORD dwSize; -} -alias INTERNET_PREFETCH_STATUS* LPINTERNET_PREFETCH_STATUS; - -struct INTERNET_PROXY_INFO { - DWORD dwAccessType; - LPCTSTR lpszProxy; - LPCTSTR lpszProxyBypass; -} -alias INTERNET_PROXY_INFO* LPINTERNET_PROXY_INFO; - -struct INTERNET_VERSION_INFO { - DWORD dwMajorVersion; - DWORD dwMinorVersion; -} -alias INTERNET_VERSION_INFO* LPINTERNET_VERSION_INFO; - -struct URL_COMPONENTSA { - DWORD dwStructSize = URL_COMPONENTSA.sizeof; - LPSTR lpszScheme; - DWORD dwSchemeLength; - INTERNET_SCHEME nScheme; - LPSTR lpszHostName; - DWORD dwHostNameLength; - INTERNET_PORT nPort; - LPSTR lpszUserName; - DWORD dwUserNameLength; - LPSTR lpszPassword; - DWORD dwPasswordLength; - LPSTR lpszUrlPath; - DWORD dwUrlPathLength; - LPSTR lpszExtraInfo; - DWORD dwExtraInfoLength; -} -alias URL_COMPONENTSA* LPURL_COMPONENTSA; - -struct URL_COMPONENTSW { - DWORD dwStructSize = URL_COMPONENTSW.sizeof; - LPWSTR lpszScheme; - DWORD dwSchemeLength; - INTERNET_SCHEME nScheme; - LPWSTR lpszHostName; - DWORD dwHostNameLength; - INTERNET_PORT nPort; - LPWSTR lpszUserName; - DWORD dwUserNameLength; - LPWSTR lpszPassword; - DWORD dwPasswordLength; - LPWSTR lpszUrlPath; - DWORD dwUrlPathLength; - LPWSTR lpszExtraInfo; - DWORD dwExtraInfoLength; -} -alias URL_COMPONENTSW* LPURL_COMPONENTSW; - -struct INTERNET_CERTIFICATE_INFO { - FILETIME ftExpiry; - FILETIME ftStart; - LPTSTR lpszSubjectInfo; - LPTSTR lpszIssuerInfo; - LPTSTR lpszProtocolName; - LPTSTR lpszSignatureAlgName; - LPTSTR lpszEncryptionAlgName; - DWORD dwKeySize; -} -alias INTERNET_CERTIFICATE_INFO* LPINTERNET_CERTIFICATE_INFO; - -extern (Windows) alias void function(HINTERNET, DWORD, DWORD, PVOID, DWORD) - INTERNET_STATUS_CALLBACK; -alias INTERNET_STATUS_CALLBACK* LPINTERNET_STATUS_CALLBACK; - -const INTERNET_INVALID_STATUS_CALLBACK - = cast(INTERNET_STATUS_CALLBACK) -1; - -struct GOPHER_FIND_DATAA { - CHAR[MAX_GOPHER_DISPLAY_TEXT+1] DisplayString; - DWORD GopherType; - DWORD SizeLow; - DWORD SizeHigh; - FILETIME LastModificationTime; - CHAR[MAX_GOPHER_LOCATOR_LENGTH+1] Locator; -} -alias GOPHER_FIND_DATAA* LPGOPHER_FIND_DATAA; - -struct GOPHER_FIND_DATAW { - WCHAR[MAX_GOPHER_DISPLAY_TEXT+1] DisplayString; - DWORD GopherType; - DWORD SizeLow; - DWORD SizeHigh; - FILETIME LastModificationTime; - WCHAR[MAX_GOPHER_LOCATOR_LENGTH+1] Locator; -} -alias GOPHER_FIND_DATAW* LPGOPHER_FIND_DATAW; - -struct GOPHER_ADMIN_ATTRIBUTE_TYPE { - LPCTSTR Comment; - LPCTSTR EmailAddress; -} -alias GOPHER_ADMIN_ATTRIBUTE_TYPE* LPGOPHER_ADMIN_ATTRIBUTE_TYPE; - -struct GOPHER_MOD_DATE_ATTRIBUTE_TYPE { - FILETIME DateAndTime; -} -alias GOPHER_MOD_DATE_ATTRIBUTE_TYPE* LPGOPHER_MOD_DATE_ATTRIBUTE_TYPE; - -struct GOPHER_TTL_ATTRIBUTE_TYPE { - DWORD Ttl; -} -alias GOPHER_TTL_ATTRIBUTE_TYPE* LPGOPHER_TTL_ATTRIBUTE_TYPE; - -struct GOPHER_SCORE_ATTRIBUTE_TYPE { - INT Score; -} -alias GOPHER_SCORE_ATTRIBUTE_TYPE* LPGOPHER_SCORE_ATTRIBUTE_TYPE; - -struct GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE { - INT LowerBound; - INT UpperBound; -} -alias GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE* LPGOPHER_SCORE_RANGE_ATTRIBUTE_TYPE; - -struct GOPHER_SITE_ATTRIBUTE_TYPE { - LPCTSTR Site; -} -alias GOPHER_SITE_ATTRIBUTE_TYPE* LPGOPHER_SITE_ATTRIBUTE_TYPE; - -struct GOPHER_ORGANIZATION_ATTRIBUTE_TYPE { - LPCTSTR Organization; -} -alias GOPHER_ORGANIZATION_ATTRIBUTE_TYPE* LPGOPHER_ORGANIZATION_ATTRIBUTE_TYPE; - -struct GOPHER_LOCATION_ATTRIBUTE_TYPE { - LPCTSTR Location; -} -alias GOPHER_LOCATION_ATTRIBUTE_TYPE* LPGOPHER_LOCATION_ATTRIBUTE_TYPE; - -struct GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE { - INT DegreesNorth; - INT MinutesNorth; - INT SecondsNorth; - INT DegreesEast; - INT MinutesEast; - INT SecondsEast; -} -alias GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE* - LPGOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE; - -struct GOPHER_TIMEZONE_ATTRIBUTE_TYPE { - INT Zone; -} -alias GOPHER_TIMEZONE_ATTRIBUTE_TYPE* LPGOPHER_TIMEZONE_ATTRIBUTE_TYPE; - -struct GOPHER_PROVIDER_ATTRIBUTE_TYPE { - LPCTSTR Provider; -} -alias GOPHER_PROVIDER_ATTRIBUTE_TYPE* LPGOPHER_PROVIDER_ATTRIBUTE_TYPE; - -struct GOPHER_VERSION_ATTRIBUTE_TYPE { - LPCTSTR Version; -} -alias GOPHER_VERSION_ATTRIBUTE_TYPE* LPGOPHER_VERSION_ATTRIBUTE_TYPE; - -struct GOPHER_ABSTRACT_ATTRIBUTE_TYPE { - LPCTSTR ShortAbstract; - LPCTSTR AbstractFile; -} -alias GOPHER_ABSTRACT_ATTRIBUTE_TYPE* LPGOPHER_ABSTRACT_ATTRIBUTE_TYPE; - -struct GOPHER_VIEW_ATTRIBUTE_TYPE { - LPCTSTR ContentType; - LPCTSTR Language; - DWORD Size; -} -alias GOPHER_VIEW_ATTRIBUTE_TYPE* LPGOPHER_VIEW_ATTRIBUTE_TYPE; - -struct GOPHER_VERONICA_ATTRIBUTE_TYPE { - BOOL TreeWalk; -} -alias GOPHER_VERONICA_ATTRIBUTE_TYPE* LPGOPHER_VERONICA_ATTRIBUTE_TYPE; - -struct GOPHER_ASK_ATTRIBUTE_TYPE { - LPCTSTR QuestionType; - LPCTSTR QuestionText; -} -alias GOPHER_ASK_ATTRIBUTE_TYPE* LPGOPHER_ASK_ATTRIBUTE_TYPE; - -struct GOPHER_UNKNOWN_ATTRIBUTE_TYPE { - LPCTSTR Text; -} -alias GOPHER_UNKNOWN_ATTRIBUTE_TYPE* LPGOPHER_UNKNOWN_ATTRIBUTE_TYPE; - -struct GOPHER_ATTRIBUTE_TYPE { - DWORD CategoryId; - DWORD AttributeId; - union { - GOPHER_ADMIN_ATTRIBUTE_TYPE Admin; - GOPHER_MOD_DATE_ATTRIBUTE_TYPE ModDate; - GOPHER_TTL_ATTRIBUTE_TYPE Ttl; - GOPHER_SCORE_ATTRIBUTE_TYPE Score; - GOPHER_SCORE_RANGE_ATTRIBUTE_TYPE ScoreRange; - GOPHER_SITE_ATTRIBUTE_TYPE Site; - GOPHER_ORGANIZATION_ATTRIBUTE_TYPE Organization; - GOPHER_LOCATION_ATTRIBUTE_TYPE Location; - GOPHER_GEOGRAPHICAL_LOCATION_ATTRIBUTE_TYPE GeographicalLocation; - GOPHER_TIMEZONE_ATTRIBUTE_TYPE TimeZone; - GOPHER_PROVIDER_ATTRIBUTE_TYPE Provider; - GOPHER_VERSION_ATTRIBUTE_TYPE Version; - GOPHER_ABSTRACT_ATTRIBUTE_TYPE Abstract; - GOPHER_VIEW_ATTRIBUTE_TYPE View; - GOPHER_VERONICA_ATTRIBUTE_TYPE Veronica; - GOPHER_ASK_ATTRIBUTE_TYPE Ask; - GOPHER_UNKNOWN_ATTRIBUTE_TYPE Unknown; - } /+AttributeType;+/ -} -alias GOPHER_ATTRIBUTE_TYPE* LPGOPHER_ATTRIBUTE_TYPE; - -alias BOOL function(LPGOPHER_ATTRIBUTE_TYPE, DWORD) - GOPHER_ATTRIBUTE_ENUMERATOR; - -struct INTERNET_CACHE_ENTRY_INFOA { - DWORD dwStructSize = INTERNET_CACHE_ENTRY_INFOA.sizeof; - LPSTR lpszSourceUrlName; - LPSTR lpszLocalFileName; - DWORD CacheEntryType; - DWORD dwUseCount; - DWORD dwHitRate; - DWORD dwSizeLow; - DWORD dwSizeHigh; - FILETIME LastModifiedTime; - FILETIME ExpireTime; - FILETIME LastAccessTime; - FILETIME LastSyncTime; - PBYTE lpHeaderInfo; - DWORD dwHeaderInfoSize; - LPSTR lpszFileExtension; - DWORD dwReserved; -} -alias INTERNET_CACHE_ENTRY_INFOA* LPINTERNET_CACHE_ENTRY_INFOA; - -struct INTERNET_CACHE_ENTRY_INFOW { - DWORD dwStructSize = INTERNET_CACHE_ENTRY_INFOW.sizeof; - LPWSTR lpszSourceUrlName; - LPWSTR lpszLocalFileName; - DWORD CacheEntryType; - DWORD dwUseCount; - DWORD dwHitRate; - DWORD dwSizeLow; - DWORD dwSizeHigh; - FILETIME LastModifiedTime; - FILETIME ExpireTime; - FILETIME LastAccessTime; - FILETIME LastSyncTime; - PBYTE lpHeaderInfo; - DWORD dwHeaderInfoSize; - LPWSTR lpszFileExtension; - DWORD dwReserved; -} -alias INTERNET_CACHE_ENTRY_INFOW* LPINTERNET_CACHE_ENTRY_INFOW; - -struct INTERNET_BUFFERSA { - DWORD dwStructSize = INTERNET_BUFFERSA.sizeof; - INTERNET_BUFFERSA* Next; - LPCSTR lpcszHeader; - DWORD dwHeadersLength; - DWORD dwHeadersTotal; - LPVOID lpvBuffer; - DWORD dwBufferLength; - DWORD dwBufferTotal; - DWORD dwOffsetLow; - DWORD dwOffsetHigh; -} -alias INTERNET_BUFFERSA* LPINTERNET_BUFFERSA; - -struct INTERNET_BUFFERSW { - DWORD dwStructSize = INTERNET_BUFFERSW.sizeof; - INTERNET_BUFFERSW* Next; - LPCWSTR lpcszHeader; - DWORD dwHeadersLength; - DWORD dwHeadersTotal; - LPVOID lpvBuffer; - DWORD dwBufferLength; - DWORD dwBufferTotal; - DWORD dwOffsetLow; - DWORD dwOffsetHigh; -} -alias INTERNET_BUFFERSW* LPINTERNET_BUFFERSW; - -const size_t - GROUP_OWNER_STORAGE_SIZE = 4, - GROUPNAME_MAX_LENGTH = 120; - -struct INTERNET_CACHE_GROUP_INFOA { - DWORD dwGroupSize; - DWORD dwGroupFlags; - DWORD dwGroupType; - DWORD dwDiskUsage; - DWORD dwDiskQuota; - DWORD[GROUP_OWNER_STORAGE_SIZE] dwOwnerStorage; - CHAR[GROUPNAME_MAX_LENGTH] szGroupName; -} -alias INTERNET_CACHE_GROUP_INFOA* LPINTERNET_CACHE_GROUP_INFOA; - -struct INTERNET_CACHE_GROUP_INFOW { - DWORD dwGroupSize; - DWORD dwGroupFlags; - DWORD dwGroupType; - DWORD dwDiskUsage; - DWORD dwDiskQuota; - DWORD[GROUP_OWNER_STORAGE_SIZE] dwOwnerStorage; - WCHAR[GROUPNAME_MAX_LENGTH] szGroupName; -} -alias INTERNET_CACHE_GROUP_INFOW* LPINTERNET_CACHE_GROUP_INFOW; - -extern (Windows) { - BOOL InternetTimeFromSystemTime(SYSTEMTIME*, DWORD, LPSTR, DWORD); - BOOL InternetTimeToSystemTime(LPCSTR, SYSTEMTIME*, DWORD); - BOOL InternetDebugGetLocalTime(SYSTEMTIME*, PDWORD); - BOOL InternetCrackUrlA(LPCSTR, DWORD, DWORD, LPURL_COMPONENTSA); - BOOL InternetCrackUrlW(LPCWSTR, DWORD, DWORD, LPURL_COMPONENTSW); - BOOL InternetCreateUrlA(LPURL_COMPONENTSA, DWORD, LPSTR, PDWORD); - BOOL InternetCreateUrlW(LPURL_COMPONENTSW, DWORD, LPWSTR, PDWORD); - BOOL InternetCanonicalizeUrlA(LPCSTR, LPSTR, PDWORD, DWORD); - BOOL InternetCanonicalizeUrlW(LPCWSTR, LPWSTR, PDWORD, DWORD); - BOOL InternetCheckConnectionA(LPCSTR, DWORD, DWORD); - BOOL InternetCheckConnectionW(LPCWSTR, DWORD, DWORD); - BOOL InternetCombineUrlA(LPCSTR, LPCSTR, LPSTR, PDWORD, DWORD); - BOOL InternetCombineUrlW(LPCWSTR, LPCWSTR, LPWSTR, PDWORD, DWORD); - HINTERNET InternetOpenA(LPCSTR, DWORD, LPCSTR, LPCSTR, DWORD); - HINTERNET InternetOpenW(LPCWSTR, DWORD, LPCWSTR, LPCWSTR, DWORD); - BOOL InternetCloseHandle(HINTERNET); - HINTERNET InternetConnectA(HINTERNET, LPCSTR, INTERNET_PORT, LPCSTR, - LPCSTR, DWORD, DWORD, DWORD); - HINTERNET InternetConnectW(HINTERNET, LPCWSTR, INTERNET_PORT, LPCWSTR, - LPCWSTR, DWORD, DWORD, DWORD); - HINTERNET InternetOpenUrlA(HINTERNET, LPCSTR, LPCSTR, DWORD, DWORD, - DWORD); - HINTERNET InternetOpenUrlW(HINTERNET, LPCWSTR, LPCWSTR, DWORD, DWORD, - DWORD); - BOOL InternetReadFile(HINTERNET, PVOID, DWORD, PDWORD); - DWORD InternetSetFilePointer(HINTERNET, LONG, PVOID, DWORD, DWORD); - BOOL InternetWriteFile(HINTERNET, LPCVOID, DWORD, PDWORD); - BOOL InternetQueryDataAvailable(HINTERNET, PDWORD, DWORD, DWORD); - BOOL InternetFindNextFileA(HINTERNET, PVOID); - BOOL InternetFindNextFileW(HINTERNET, PVOID); - BOOL InternetQueryOptionA(HINTERNET, DWORD, PVOID, PDWORD); - BOOL InternetQueryOptionW(HINTERNET, DWORD, PVOID, PDWORD); - BOOL InternetSetOptionA(HINTERNET, DWORD, PVOID, DWORD); - BOOL InternetSetOptionW(HINTERNET, DWORD, PVOID, DWORD); - BOOL InternetSetOptionExA(HINTERNET, DWORD, PVOID, DWORD, DWORD); - BOOL InternetSetOptionExW(HINTERNET, DWORD, PVOID, DWORD, DWORD); - BOOL InternetGetLastResponseInfoA(PDWORD, LPSTR, PDWORD); - BOOL InternetGetLastResponseInfoW(PDWORD, LPWSTR, PDWORD); - INTERNET_STATUS_CALLBACK InternetSetStatusCallback(HINTERNET, - INTERNET_STATUS_CALLBACK); - DWORD FtpGetFileSize(HINTERNET, LPDWORD); - HINTERNET FtpFindFirstFileA(HINTERNET, LPCSTR, LPWIN32_FIND_DATA, DWORD, - DWORD); - HINTERNET FtpFindFirstFileW(HINTERNET, LPCWSTR, LPWIN32_FIND_DATA, DWORD, - DWORD); - BOOL FtpGetFileA(HINTERNET, LPCSTR, LPCSTR, BOOL, DWORD, DWORD, DWORD); - BOOL FtpGetFileW(HINTERNET, LPCWSTR, LPCWSTR, BOOL, DWORD, DWORD, DWORD); - BOOL FtpPutFileA(HINTERNET, LPCSTR, LPCSTR, DWORD, DWORD); - BOOL FtpPutFileW(HINTERNET, LPCWSTR, LPCWSTR, DWORD, DWORD); - BOOL FtpDeleteFileA(HINTERNET, LPCSTR); - BOOL FtpDeleteFileW(HINTERNET, LPCWSTR); - BOOL FtpRenameFileA(HINTERNET, LPCSTR, LPCSTR); - BOOL FtpRenameFileW(HINTERNET, LPCWSTR, LPCWSTR); - HINTERNET FtpOpenFileA(HINTERNET, LPCSTR, DWORD, DWORD, DWORD); - HINTERNET FtpOpenFileW(HINTERNET, LPCWSTR, DWORD, DWORD, DWORD); - BOOL FtpCreateDirectoryA(HINTERNET, LPCSTR); - BOOL FtpCreateDirectoryW(HINTERNET, LPCWSTR); - BOOL FtpRemoveDirectoryA(HINTERNET, LPCSTR); - BOOL FtpRemoveDirectoryW(HINTERNET, LPCWSTR); - BOOL FtpSetCurrentDirectoryA(HINTERNET, LPCSTR); - BOOL FtpSetCurrentDirectoryW(HINTERNET, LPCWSTR); - BOOL FtpGetCurrentDirectoryA(HINTERNET, LPSTR, PDWORD); - BOOL FtpGetCurrentDirectoryW(HINTERNET, LPWSTR, PDWORD); - BOOL FtpCommandA(HINTERNET, BOOL, DWORD, LPCSTR, DWORD_PTR, HINTERNET*); - BOOL FtpCommandW(HINTERNET, BOOL, DWORD, LPCWSTR, DWORD_PTR, HINTERNET*); - BOOL GopherCreateLocatorA(LPCSTR, INTERNET_PORT, LPCSTR, LPCSTR, DWORD, - LPSTR, PDWORD); - BOOL GopherCreateLocatorW(LPCWSTR, INTERNET_PORT, LPCWSTR, LPCWSTR, DWORD, - LPWSTR, PDWORD); - BOOL GopherGetLocatorTypeA(LPCSTR, PDWORD); - BOOL GopherGetLocatorTypeW(LPCWSTR, PDWORD); - HINTERNET GopherFindFirstFileA(HINTERNET, LPCSTR, LPCSTR, - LPGOPHER_FIND_DATAA, DWORD, DWORD); - HINTERNET GopherFindFirstFileW(HINTERNET, LPCWSTR, LPCWSTR, - LPGOPHER_FIND_DATAW, DWORD, DWORD); - HINTERNET GopherOpenFileA(HINTERNET, LPCSTR, LPCSTR, DWORD, DWORD); - HINTERNET GopherOpenFileW(HINTERNET, LPCWSTR, LPCWSTR, DWORD, DWORD); - BOOL GopherGetAttributeA(HINTERNET, LPCSTR, LPCSTR, LPBYTE, DWORD, - PDWORD, GOPHER_ATTRIBUTE_ENUMERATOR, DWORD); - BOOL GopherGetAttributeW(HINTERNET, LPCWSTR, LPCWSTR, LPBYTE, DWORD, - PDWORD, GOPHER_ATTRIBUTE_ENUMERATOR, DWORD); - HINTERNET HttpOpenRequestA(HINTERNET, LPCSTR, LPCSTR, LPCSTR, LPCSTR, - LPCSTR*, DWORD, DWORD); - HINTERNET HttpOpenRequestW(HINTERNET, LPCWSTR, LPCWSTR, LPCWSTR, LPCWSTR, - LPCWSTR*, DWORD, DWORD); - BOOL HttpAddRequestHeadersA(HINTERNET, LPCSTR, DWORD, DWORD); - BOOL HttpAddRequestHeadersW(HINTERNET, LPCWSTR, DWORD, DWORD); - BOOL HttpSendRequestA(HINTERNET, LPCSTR, DWORD, PVOID, DWORD); - BOOL HttpSendRequestW(HINTERNET, LPCWSTR, DWORD, PVOID, DWORD); - BOOL HttpQueryInfoA(HINTERNET, DWORD, PVOID, PDWORD, PDWORD); - BOOL HttpQueryInfoW(HINTERNET, DWORD, PVOID, PDWORD, PDWORD); - BOOL InternetSetCookieA(LPCSTR, LPCSTR, LPCSTR); - BOOL InternetSetCookieW(LPCWSTR, LPCWSTR, LPCWSTR); - BOOL InternetGetCookieA(LPCSTR, LPCSTR, LPSTR, PDWORD); - BOOL InternetGetCookieW(LPCWSTR, LPCWSTR, LPWSTR, PDWORD); - DWORD InternetAttemptConnect(DWORD); - DWORD InternetErrorDlg(HWND, HINTERNET, DWORD, DWORD, PVOID*); - DWORD InternetConfirmZoneCrossing(HWND, LPSTR, LPSTR, BOOL); - BOOL CreateUrlCacheEntryA(LPCSTR, DWORD, LPCSTR, LPSTR, DWORD); - BOOL CreateUrlCacheEntryW(LPCWSTR, DWORD, LPCWSTR, LPWSTR, DWORD); - BOOL CommitUrlCacheEntryA(LPCSTR, LPCSTR, FILETIME, FILETIME, DWORD, - LPBYTE, DWORD, LPCSTR, DWORD); - BOOL CommitUrlCacheEntryW(LPCWSTR, LPCWSTR, FILETIME, FILETIME, DWORD, - LPBYTE, DWORD, LPCWSTR, DWORD); - BOOL RetrieveUrlCacheEntryFileA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, - PDWORD, DWORD); - BOOL RetrieveUrlCacheEntryFileW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, - PDWORD, DWORD); - BOOL UnlockUrlCacheEntryFile(LPCSTR, DWORD); - HANDLE RetrieveUrlCacheEntryStreamA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, - PDWORD, BOOL, DWORD); - HANDLE RetrieveUrlCacheEntryStreamW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, - PDWORD, BOOL, DWORD); - BOOL ReadUrlCacheEntryStream(HANDLE, DWORD, PVOID, PDWORD, DWORD); - BOOL UnlockUrlCacheEntryStream(HANDLE, DWORD); - BOOL GetUrlCacheEntryInfoA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, PDWORD); - BOOL GetUrlCacheEntryInfoW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, PDWORD); - BOOL SetUrlCacheEntryInfoA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, DWORD); - BOOL SetUrlCacheEntryInfoW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, DWORD); - HANDLE FindFirstUrlCacheEntryA(LPCSTR, LPINTERNET_CACHE_ENTRY_INFOA, - PDWORD); - HANDLE FindFirstUrlCacheEntryW(LPCWSTR, LPINTERNET_CACHE_ENTRY_INFOW, - PDWORD); - BOOL FindNextUrlCacheEntryA(HANDLE, LPINTERNET_CACHE_ENTRY_INFOA, PDWORD); - BOOL FindNextUrlCacheEntryW(HANDLE, LPINTERNET_CACHE_ENTRY_INFOW, PDWORD); - BOOL FindCloseUrlCache(HANDLE); - BOOL DeleteUrlCacheEntry(LPCSTR); - DWORD AuthenticateUser(PVOID*, LPSTR, LPSTR, DWORD, LPSTR, DWORD, LPSTR, - LPSTR); - BOOL HttpSendRequestExA(HINTERNET, LPINTERNET_BUFFERSA, - LPINTERNET_BUFFERSA, DWORD, DWORD); - BOOL HttpSendRequestExW(HINTERNET, LPINTERNET_BUFFERSW, - LPINTERNET_BUFFERSW, DWORD, DWORD); - BOOL HttpEndRequestA(HINTERNET, LPINTERNET_BUFFERSA, DWORD, DWORD); - BOOL HttpEndRequestW(HINTERNET, LPINTERNET_BUFFERSW, DWORD, DWORD); - DWORD InternetDial(HWND, LPTSTR, DWORD, LPDWORD, DWORD); - DWORD InternetHangUp(DWORD, DWORD); - BOOL InternetGoOnline(LPTSTR, HWND, DWORD); - BOOL InternetAutodial(DWORD, DWORD); - BOOL InternetAutodialHangup(DWORD); - BOOL InternetGetConnectedState(LPDWORD, DWORD); - BOOL InternetSetDialState(LPCTSTR, DWORD, DWORD); - BOOL InternetReadFileExA(HINTERNET, LPINTERNET_BUFFERSA, DWORD, DWORD_PTR); - BOOL InternetReadFileExW(HINTERNET, LPINTERNET_BUFFERSW, DWORD, DWORD_PTR); - GROUPID CreateUrlCacheGroup(DWORD, LPVOID); - BOOL DeleteUrlCacheGroup(GROUPID, DWORD, LPVOID); - HANDLE FindFirstUrlCacheGroup(DWORD, DWORD, LPVOID, DWORD, GROUPID*, - LPVOID); - BOOL FindNextUrlCacheGroup(HANDLE, GROUPID*, LPVOID); - BOOL GetUrlCacheGroupAttributeA(GROUPID, DWORD, DWORD, - LPINTERNET_CACHE_GROUP_INFOA, LPDWORD, LPVOID); - BOOL GetUrlCacheGroupAttributeW(GROUPID, DWORD, DWORD, - LPINTERNET_CACHE_GROUP_INFOW, LPDWORD, LPVOID); - BOOL SetUrlCacheGroupAttributeA(GROUPID, DWORD, DWORD, - LPINTERNET_CACHE_GROUP_INFOA, LPVOID); - BOOL SetUrlCacheGroupAttributeW(GROUPID, DWORD, DWORD, - LPINTERNET_CACHE_GROUP_INFOW, LPVOID); -} - -version (Unicode) { - alias URL_COMPONENTSW URL_COMPONENTS; - alias LPURL_COMPONENTSW LPURL_COMPONENTS; - alias GOPHER_FIND_DATAW GOPHER_FIND_DATA; - alias LPGOPHER_FIND_DATAW LPGOPHER_FIND_DATA; - alias INTERNET_CACHE_ENTRY_INFOW INTERNET_CACHE_ENTRY_INFO; - alias LPINTERNET_CACHE_ENTRY_INFOW LPINTERNET_CACHE_ENTRY_INFO; - alias INTERNET_BUFFERSW INTERNET_BUFFERS; - alias INTERNET_CACHE_GROUP_INFOW INTERNET_CACHE_GROUP_INFO; - alias LPINTERNET_CACHE_GROUP_INFOW LPINTERNET_CACHE_GROUP_INFO; - alias InternetCrackUrlW InternetCrackUrl; - alias InternetCreateUrlW InternetCreateUrl; - alias InternetCanonicalizeUrlW InternetCanonicalizeUrl; - alias InternetCheckConnectionW InternetCheckConnection; - alias InternetCombineUrlW InternetCombineUrl; - alias InternetOpenW InternetOpen; - alias InternetConnectW InternetConnect; - alias InternetOpenUrlW InternetOpenUrl; - alias InternetFindNextFileW InternetFindNextFile; - alias InternetQueryOptionW InternetQueryOption; - alias InternetSetOptionW InternetSetOption; - alias InternetSetOptionExW InternetSetOptionEx; - alias InternetGetLastResponseInfoW InternetGetLastResponseInfo; - alias InternetReadFileExW InternetReadFileEx; - alias FtpFindFirstFileW FtpFindFirstFile; - alias FtpGetFileW FtpGetFile; - alias FtpPutFileW FtpPutFile; - alias FtpDeleteFileW FtpDeleteFile; - alias FtpRenameFileW FtpRenameFile; - alias FtpOpenFileW FtpOpenFile; - alias FtpCreateDirectoryW FtpCreateDirectory; - alias FtpRemoveDirectoryW FtpRemoveDirectory; - alias FtpSetCurrentDirectoryW FtpSetCurrentDirectory; - alias FtpGetCurrentDirectoryW FtpGetCurrentDirectory; - alias FtpCommandW FtpCommand; - alias GopherGetLocatorTypeW GopherGetLocatorType; - alias GopherCreateLocatorW GopherCreateLocator; - alias GopherFindFirstFileW GopherFindFirstFile; - alias GopherOpenFileW GopherOpenFile; - alias GopherGetAttributeW GopherGetAttribute; - alias HttpSendRequestW HttpSendRequest; - alias HttpOpenRequestW HttpOpenRequest; - alias HttpAddRequestHeadersW HttpAddRequestHeaders; - alias HttpQueryInfoW HttpQueryInfo; - alias InternetSetCookieW InternetSetCookie; - alias InternetGetCookieW InternetGetCookie; - alias CreateUrlCacheEntryW CreateUrlCacheEntry; - alias RetrieveUrlCacheEntryStreamW RetrieveUrlCacheEntryStream; - alias FindNextUrlCacheEntryW FindNextUrlCacheEntry; - alias CommitUrlCacheEntryW CommitUrlCacheEntry; - alias GetUrlCacheEntryInfoW GetUrlCacheEntryInfo; - alias SetUrlCacheEntryInfoW SetUrlCacheEntryInfo; - alias FindFirstUrlCacheEntryW FindFirstUrlCacheEntry; - alias RetrieveUrlCacheEntryFileW RetrieveUrlCacheEntryFile; - alias HttpSendRequestExW HttpSendRequestEx; - alias HttpEndRequestW HttpEndRequest; - alias GetUrlCacheGroupAttributeW GetUrlCacheGroupAttribute; - alias SetUrlCacheGroupAttributeW SetUrlCacheGroupAttribute; -} else { - alias URL_COMPONENTSA URL_COMPONENTS; - alias LPURL_COMPONENTSA LPURL_COMPONENTS; - alias GOPHER_FIND_DATAA GOPHER_FIND_DATA; - alias LPGOPHER_FIND_DATAA LPGOPHER_FIND_DATA; - alias INTERNET_CACHE_ENTRY_INFOA INTERNET_CACHE_ENTRY_INFO; - alias LPINTERNET_CACHE_ENTRY_INFOA LPINTERNET_CACHE_ENTRY_INFO; - alias INTERNET_BUFFERSA INTERNET_BUFFERS; - alias INTERNET_CACHE_GROUP_INFOA INTERNET_CACHE_GROUP_INFO; - alias LPINTERNET_CACHE_GROUP_INFOA LPINTERNET_CACHE_GROUP_INFO; - alias GopherGetAttributeA GopherGetAttribute; - alias InternetCrackUrlA InternetCrackUrl; - alias InternetCreateUrlA InternetCreateUrl; - alias InternetCanonicalizeUrlA InternetCanonicalizeUrl; - alias InternetCheckConnectionA InternetCheckConnection; - alias InternetCombineUrlA InternetCombineUrl; - alias InternetOpenA InternetOpen; - alias InternetConnectA InternetConnect; - alias InternetOpenUrlA InternetOpenUrl; - alias InternetFindNextFileA InternetFindNextFile; - alias InternetQueryOptionA InternetQueryOption; - alias InternetSetOptionA InternetSetOption; - alias InternetSetOptionExA InternetSetOptionEx; - alias InternetGetLastResponseInfoA InternetGetLastResponseInfo; - alias InternetReadFileExA InternetReadFileEx; - alias FtpFindFirstFileA FtpFindFirstFile; - alias FtpGetFileA FtpGetFile; - alias FtpPutFileA FtpPutFile; - alias FtpDeleteFileA FtpDeleteFile; - alias FtpRenameFileA FtpRenameFile; - alias FtpOpenFileA FtpOpenFile; - alias FtpCreateDirectoryA FtpCreateDirectory; - alias FtpRemoveDirectoryA FtpRemoveDirectory; - alias FtpSetCurrentDirectoryA FtpSetCurrentDirectory; - alias FtpGetCurrentDirectoryA FtpGetCurrentDirectory; - alias FtpCommandA FtpCommand; - alias GopherGetLocatorTypeA GopherGetLocatorType; - alias GopherCreateLocatorA GopherCreateLocator; - alias GopherFindFirstFileA GopherFindFirstFile; - alias GopherOpenFileA GopherOpenFile; - alias HttpSendRequestA HttpSendRequest; - alias HttpOpenRequestA HttpOpenRequest; - alias HttpAddRequestHeadersA HttpAddRequestHeaders; - alias HttpQueryInfoA HttpQueryInfo; - alias InternetSetCookieA InternetSetCookie; - alias InternetGetCookieA InternetGetCookie; - alias CreateUrlCacheEntryA CreateUrlCacheEntry; - alias RetrieveUrlCacheEntryStreamA RetrieveUrlCacheEntryStream; - alias FindNextUrlCacheEntryA FindNextUrlCacheEntry; - alias CommitUrlCacheEntryA CommitUrlCacheEntry; - alias GetUrlCacheEntryInfoA GetUrlCacheEntryInfo; - alias SetUrlCacheEntryInfoA SetUrlCacheEntryInfo; - alias FindFirstUrlCacheEntryA FindFirstUrlCacheEntry; - alias RetrieveUrlCacheEntryFileA RetrieveUrlCacheEntryFile; - alias HttpSendRequestExA HttpSendRequestEx; - alias HttpEndRequestA HttpEndRequest; - alias GetUrlCacheGroupAttributeA GetUrlCacheGroupAttribute; - alias SetUrlCacheGroupAttributeA SetUrlCacheGroupAttribute; -} - -alias INTERNET_BUFFERS* LPINTERNET_BUFFERS; diff --git a/3rdparty-extra/win32/winioctl.d b/3rdparty-extra/win32/winioctl.d deleted file mode 100644 index 52253b56a..000000000 --- a/3rdparty-extra/win32/winioctl.d +++ /dev/null @@ -1,713 +0,0 @@ -/***********************************************************************\ -* winioctl.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.winioctl; -version(Windows): - -// FIXME: check types of some constants - -private import win32.basetyps, win32.windef; - -const size_t - HIST_NO_OF_BUCKETS = 24, - HISTOGRAM_BUCKET_SIZE = HISTOGRAM_BUCKET.sizeof, - DISK_HISTOGRAM_SIZE = DISK_HISTOGRAM.sizeof; - -alias DWORD DEVICE_TYPE; - -enum : DEVICE_TYPE { - FILE_DEVICE_BEEP = 1, - FILE_DEVICE_CD_ROM, - FILE_DEVICE_CD_ROM_FILE_SYSTEM, - FILE_DEVICE_CONTROLLER, - FILE_DEVICE_DATALINK, - FILE_DEVICE_DFS, - FILE_DEVICE_DISK, - FILE_DEVICE_DISK_FILE_SYSTEM, - FILE_DEVICE_FILE_SYSTEM, - FILE_DEVICE_INPORT_PORT, - FILE_DEVICE_KEYBOARD, - FILE_DEVICE_MAILSLOT, - FILE_DEVICE_MIDI_IN, - FILE_DEVICE_MIDI_OUT, - FILE_DEVICE_MOUSE, - FILE_DEVICE_MULTI_UNC_PROVIDER, - FILE_DEVICE_NAMED_PIPE, - FILE_DEVICE_NETWORK, - FILE_DEVICE_NETWORK_BROWSER, - FILE_DEVICE_NETWORK_FILE_SYSTEM, - FILE_DEVICE_NULL, - FILE_DEVICE_PARALLEL_PORT, - FILE_DEVICE_PHYSICAL_NETCARD, - FILE_DEVICE_PRINTER, - FILE_DEVICE_SCANNER, - FILE_DEVICE_SERIAL_MOUSE_PORT, - FILE_DEVICE_SERIAL_PORT, - FILE_DEVICE_SCREEN, - FILE_DEVICE_SOUND, - FILE_DEVICE_STREAMS, - FILE_DEVICE_TAPE, - FILE_DEVICE_TAPE_FILE_SYSTEM, - FILE_DEVICE_TRANSPORT, - FILE_DEVICE_UNKNOWN, - FILE_DEVICE_VIDEO, - FILE_DEVICE_VIRTUAL_DISK, - FILE_DEVICE_WAVE_IN, - FILE_DEVICE_WAVE_OUT, - FILE_DEVICE_8042_PORT, - FILE_DEVICE_NETWORK_REDIRECTOR, - FILE_DEVICE_BATTERY, - FILE_DEVICE_BUS_EXTENDER, - FILE_DEVICE_MODEM, - FILE_DEVICE_VDM, - FILE_DEVICE_MASS_STORAGE, - FILE_DEVICE_SMB, - FILE_DEVICE_KS, - FILE_DEVICE_CHANGER, - FILE_DEVICE_SMARTCARD, - FILE_DEVICE_ACPI, - FILE_DEVICE_DVD, - FILE_DEVICE_FULLSCREEN_VIDEO, - FILE_DEVICE_DFS_FILE_SYSTEM, - FILE_DEVICE_DFS_VOLUME, - FILE_DEVICE_SERENUM, - FILE_DEVICE_TERMSRV, - FILE_DEVICE_KSEC // = 57 -} - -enum { - METHOD_BUFFERED, - METHOD_IN_DIRECT, - METHOD_OUT_DIRECT, - METHOD_NEITHER -} - -enum { - FILE_ANY_ACCESS, - FILE_SPECIAL_ACCESS = 0, - FILE_READ_ACCESS, - FILE_WRITE_ACCESS -} - -/* Bit pattern: - * tttttttt tttttttt aaffffff ffffffmm - */ -/+ -#define CTL_CODE(t, f, m, a) (((t)<<16)|((a)<<14)|((f)<<2)|(m)) -+/ - -template CTL_CODE_T(DEVICE_TYPE t, uint f, uint m, uint a) { - const DWORD CTL_CODE_T = (t << 16) | (a << 14) | (f << 2) | m; -} - -DEVICE_TYPE DEVICE_TYPE_FROM_CTL_CODE(DWORD c) { - return (c & 0xFFFF0000) >> 16; -} - -const DEVICE_TYPE - IOCTL_STORAGE_BASE = FILE_DEVICE_MASS_STORAGE, - IOCTL_DISK_BASE = FILE_DEVICE_DISK, - IOCTL_VOLUME_BASE = 'V'; - -enum : DWORD { - IOCTL_STORAGE_CHECK_VERIFY = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0200, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_CHECK_VERIFY2 = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0200, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_MEDIA_REMOVAL = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0201, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_EJECT_MEDIA = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0202, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_LOAD_MEDIA = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0203, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_LOAD_MEDIA2 = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0203, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_RESERVE = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0204, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_RELEASE = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0205, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_FIND_NEW_DEVICES = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0206, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_EJECTION_CONTROL = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0250, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_MCN_CONTROL = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0251, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_GET_MEDIA_TYPES = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0300, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_GET_MEDIA_TYPES_EX = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0301, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_RESET_BUS = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0400, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_RESET_DEVICE = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0401, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_STORAGE_GET_DEVICE_NUMBER = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0420, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_STORAGE_PREDICT_FAILURE = CTL_CODE_T!(IOCTL_STORAGE_BASE, 0x0440, METHOD_BUFFERED, FILE_ANY_ACCESS), - - IOCTL_DISK_GET_DRIVE_GEOMETRY = CTL_CODE_T!(IOCTL_DISK_BASE, 0, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_GET_PARTITION_INFO = CTL_CODE_T!(IOCTL_DISK_BASE, 1, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_SET_PARTITION_INFO = CTL_CODE_T!(IOCTL_DISK_BASE, 2, METHOD_BUFFERED, FILE_READ_ACCESS|FILE_WRITE_ACCESS), - IOCTL_DISK_GET_DRIVE_LAYOUT = CTL_CODE_T!(IOCTL_DISK_BASE, 3, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_SET_DRIVE_LAYOUT = CTL_CODE_T!(IOCTL_DISK_BASE, 4, METHOD_BUFFERED, FILE_READ_ACCESS|FILE_WRITE_ACCESS), - IOCTL_DISK_VERIFY = CTL_CODE_T!(IOCTL_DISK_BASE, 5, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_FORMAT_TRACKS = CTL_CODE_T!(IOCTL_DISK_BASE, 6, METHOD_BUFFERED, FILE_READ_ACCESS|FILE_WRITE_ACCESS), - IOCTL_DISK_REASSIGN_BLOCKS = CTL_CODE_T!(IOCTL_DISK_BASE, 7, METHOD_BUFFERED, FILE_READ_ACCESS|FILE_WRITE_ACCESS), - IOCTL_DISK_PERFORMANCE = CTL_CODE_T!(IOCTL_DISK_BASE, 8, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_IS_WRITABLE = CTL_CODE_T!(IOCTL_DISK_BASE, 9, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_LOGGING = CTL_CODE_T!(IOCTL_DISK_BASE, 10, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_FORMAT_TRACKS_EX = CTL_CODE_T!(IOCTL_DISK_BASE, 11, METHOD_BUFFERED, FILE_READ_ACCESS|FILE_WRITE_ACCESS), - IOCTL_DISK_HISTOGRAM_STRUCTURE = CTL_CODE_T!(IOCTL_DISK_BASE, 12, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_HISTOGRAM_DATA = CTL_CODE_T!(IOCTL_DISK_BASE, 13, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_HISTOGRAM_RESET = CTL_CODE_T!(IOCTL_DISK_BASE, 14, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_REQUEST_STRUCTURE = CTL_CODE_T!(IOCTL_DISK_BASE, 15, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_REQUEST_DATA = CTL_CODE_T!(IOCTL_DISK_BASE, 16, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_GET_PARTITION_INFO_EX = CTL_CODE_T!(IOCTL_DISK_BASE, 0x12, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_SET_PARTITION_INFO_EX = CTL_CODE_T!(IOCTL_DISK_BASE, 0x13, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_DISK_GET_DRIVE_LAYOUT_EX = CTL_CODE_T!(IOCTL_DISK_BASE, 0x14, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_SET_DRIVE_LAYOUT_EX = CTL_CODE_T!(IOCTL_DISK_BASE, 0x15, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_DISK_CREATE_DISK = CTL_CODE_T!(IOCTL_DISK_BASE, 0x16, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_DISK_GET_LENGTH_INFO = CTL_CODE_T!(IOCTL_DISK_BASE, 0x17, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_PERFORMANCE_OFF = CTL_CODE_T!(IOCTL_DISK_BASE, 0x18, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_GET_DRIVE_GEOMETRY_EX = CTL_CODE_T!(IOCTL_DISK_BASE, 0x28, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_GROW_PARTITION = CTL_CODE_T!(IOCTL_DISK_BASE, 0x34, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_DISK_GET_CACHE_INFORMATION = CTL_CODE_T!(IOCTL_DISK_BASE, 0x35, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_SET_CACHE_INFORMATION = CTL_CODE_T!(IOCTL_DISK_BASE, 0x36, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_DISK_DELETE_DRIVE_LAYOUT = CTL_CODE_T!(IOCTL_DISK_BASE, 0x40, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_DISK_UPDATE_PROPERTIES = CTL_CODE_T!(IOCTL_DISK_BASE, 0x50, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_CHECK_VERIFY = CTL_CODE_T!(IOCTL_DISK_BASE, 0x200, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_MEDIA_REMOVAL = CTL_CODE_T!(IOCTL_DISK_BASE, 0x201, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_EJECT_MEDIA = CTL_CODE_T!(IOCTL_DISK_BASE, 0x202, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_LOAD_MEDIA = CTL_CODE_T!(IOCTL_DISK_BASE, 0x203, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_RESERVE = CTL_CODE_T!(IOCTL_DISK_BASE, 0x204, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_RELEASE = CTL_CODE_T!(IOCTL_DISK_BASE, 0x205, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_FIND_NEW_DEVICES = CTL_CODE_T!(IOCTL_DISK_BASE, 0x206, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_REMOVE_DEVICE = CTL_CODE_T!(IOCTL_DISK_BASE, 0x207, METHOD_BUFFERED, FILE_READ_ACCESS), - IOCTL_DISK_GET_MEDIA_TYPES = CTL_CODE_T!(IOCTL_DISK_BASE, 0x300, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_DISK_UPDATE_DRIVE_SIZE = CTL_CODE_T!(IOCTL_DISK_BASE, 0x0032, METHOD_BUFFERED, FILE_READ_ACCESS | FILE_WRITE_ACCESS), - IOCTL_SERIAL_LSRMST_INSERT = CTL_CODE_T!(FILE_DEVICE_SERIAL_PORT, 31, METHOD_BUFFERED, FILE_ANY_ACCESS), - - IOCTL_VOLUME_GET_VOLUME_DISK_EXTENTS = CTL_CODE_T!(IOCTL_VOLUME_BASE, 0, METHOD_BUFFERED, FILE_ANY_ACCESS), - IOCTL_VOLUME_IS_CLUSTERED = CTL_CODE_T!(IOCTL_VOLUME_BASE, 12, METHOD_BUFFERED, FILE_ANY_ACCESS), - - FSCTL_LOCK_VOLUME = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 6, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_UNLOCK_VOLUME = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 7, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_DISMOUNT_VOLUME = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 8, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_MOUNT_DBLS_VOLUME = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 13, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_GET_COMPRESSION = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 15, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_SET_COMPRESSION = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 16, METHOD_BUFFERED, FILE_READ_DATA|FILE_WRITE_DATA), - FSCTL_READ_COMPRESSION = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 17, METHOD_NEITHER, FILE_READ_DATA), - FSCTL_WRITE_COMPRESSION = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 18, METHOD_NEITHER, FILE_WRITE_DATA), - FSCTL_GET_NTFS_VOLUME_DATA = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 25, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_GET_VOLUME_BITMAP = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 27, METHOD_NEITHER, FILE_ANY_ACCESS), - FSCTL_GET_RETRIEVAL_POINTERS = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 28, METHOD_NEITHER, FILE_ANY_ACCESS), - FSCTL_MOVE_FILE = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 29, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_GET_REPARSE_POINT = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 42, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_SET_REPARSE_POINT = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 41, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_DELETE_REPARSE_POINT = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 43, METHOD_BUFFERED, FILE_ANY_ACCESS), - FSCTL_SET_SPARSE = CTL_CODE_T!(FILE_DEVICE_FILE_SYSTEM, 49, METHOD_BUFFERED, FILE_SPECIAL_ACCESS), -} - -enum : BYTE { - PARTITION_ENTRY_UNUSED, - PARTITION_FAT_12, - PARTITION_XENIX_1, - PARTITION_XENIX_2, - PARTITION_FAT_16, - PARTITION_EXTENDED, - PARTITION_HUGE, - PARTITION_IFS, // = 0x07 - PARTITION_FAT32 = 0x0B, - PARTITION_FAT32_XINT13 = 0x0C, - PARTITION_XINT13 = 0x0E, - PARTITION_XINT13_EXTENDED = 0x0F, - PARTITION_PREP = 0x41, - PARTITION_LDM = 0x42, - PARTITION_UNIX = 0x63 -} - -const BYTE - PARTITION_NTFT = 0x80, - VALID_NTFT = 0xC0; - -enum { - SERIAL_LSRMST_ESCAPE, - SERIAL_LSRMST_LSR_DATA, - SERIAL_LSRMST_LSR_NODATA, - SERIAL_LSRMST_MST -} - -enum { - DISK_LOGGING_START, - DISK_LOGGING_STOP, - DISK_LOGGING_DUMP, - DISK_BINNING -} - -alias WORD BAD_TRACK_NUMBER; -alias WORD* PBAD_TRACK_NUMBER; - -enum BIN_TYPES { - RequestSize, RequestLocation -} - -struct BIN_RANGE { - LARGE_INTEGER StartValue; - LARGE_INTEGER Length; -} -alias BIN_RANGE* PBIN_RANGE; - -struct BIN_COUNT { - BIN_RANGE BinRange; - DWORD BinCount; -} -alias BIN_COUNT* PBIN_COUNT; - -struct BIN_RESULTS { - DWORD NumberOfBins; - BIN_COUNT _BinCounts; - - BIN_COUNT* BinCounts() { return &_BinCounts; } -} -alias BIN_RESULTS* PBIN_RESULTS; - -enum PARTITION_STYLE { - PARTITION_STYLE_MBR, - PARTITION_STYLE_GPT, - PARTITION_STYLE_RAW -} - -struct CREATE_DISK_GPT { - GUID DiskId; - DWORD MaxPartitionCount; -} -alias CREATE_DISK_GPT* PCREATE_DISK_GPT; - -struct CREATE_DISK_MBR { - DWORD Signature; -} -alias CREATE_DISK_MBR* PCREATE_DISK_MBR; - -struct CREATE_DISK { - PARTITION_STYLE PartitionStyle; - union { - CREATE_DISK_MBR Mbr; - CREATE_DISK_GPT Gpt; - } -} -alias CREATE_DISK* PCREATE_DISK; - -enum DISK_CACHE_RETENTION_PRIORITY { - EqualPriority, - KeepPrefetchedData, - KeepReadData -} - -struct DISK_CACHE_INFORMATION { - BOOLEAN ParametersSavable; - BOOLEAN ReadCacheEnabled; - BOOLEAN WriteCacheEnabled; - DISK_CACHE_RETENTION_PRIORITY ReadRetentionPriority; - DISK_CACHE_RETENTION_PRIORITY WriteRetentionPriority; - WORD DisablePrefetchTransferLength; - BOOLEAN PrefetchScalar; - union { - struct _ScalarPrefetch { - WORD Minimum; - WORD Maximum; - WORD MaximumBlocks; - } - _ScalarPrefetch ScalarPrefetch; - struct _BlockPrefetch { - WORD Minimum; - WORD Maximum; - } - _BlockPrefetch BlockPrefetch; - } -} -alias DISK_CACHE_INFORMATION* PDISK_CACHE_INFORMATION; - -enum DETECTION_TYPE { - DetectNone, - DetectInt13, - DetectExInt13 -} - -struct DISK_INT13_INFO { - WORD DriveSelect; - DWORD MaxCylinders; - WORD SectorsPerTrack; - WORD MaxHeads; - WORD NumberDrives; - } -alias DISK_INT13_INFO* PDISK_INT13_INFO; - -struct DISK_EX_INT13_INFO { - WORD ExBufferSize; - WORD ExFlags; - DWORD ExCylinders; - DWORD ExHeads; - DWORD ExSectorsPerTrack; - DWORD64 ExSectorsPerDrive; - WORD ExSectorSize; - WORD ExReserved; -} -alias DISK_EX_INT13_INFO* PDISK_EX_INT13_INFO; - -struct DISK_DETECTION_INFO { - DWORD SizeOfDetectInfo; - DETECTION_TYPE DetectionType; - DISK_INT13_INFO Int13; - DISK_EX_INT13_INFO ExInt13; -} -alias DISK_DETECTION_INFO* PDISK_DETECTION_INFO; - -enum MEDIA_TYPE { - Unknown, - F5_1Pt2_512, - F3_1Pt44_512, - F3_2Pt88_512, - F3_20Pt8_512, - F3_720_512, - F5_360_512, - F5_320_512, - F5_320_1024, - F5_180_512, - F5_160_512, - RemovableMedia, - FixedMedia, - F3_120M_512, - F3_640_512, - F5_640_512, - F5_720_512, - F3_1Pt2_512, - F3_1Pt23_1024, - F5_1Pt23_1024, - F3_128Mb_512, - F3_230Mb_512, - F8_256_128, - F3_200Mb_512, - F3_240M_512, - F3_32M_512 -} -alias MEDIA_TYPE* PMEDIA_TYPE; - -struct DISK_GEOMETRY { - LARGE_INTEGER Cylinders; - MEDIA_TYPE MediaType; - DWORD TracksPerCylinder; - DWORD SectorsPerTrack; - DWORD BytesPerSector; -} -alias DISK_GEOMETRY* PDISK_GEOMETRY; - -struct DISK_GEOMETRY_EX { - DISK_GEOMETRY Geometry; - LARGE_INTEGER DiskSize; - BYTE _Data; - - BYTE* Data() { return &_Data; } -} -alias DISK_GEOMETRY_EX* PDISK_GEOMETRY_EX; - -struct DISK_GROW_PARTITION { - DWORD PartitionNumber; - LARGE_INTEGER BytesToGrow; -} -alias DISK_GROW_PARTITION* PDISK_GROW_PARTITION; - -struct DISK_PARTITION_INFO { - DWORD SizeOfPartitionInfo; - PARTITION_STYLE PartitionStyle; - union { - //struct { - DWORD Signature; - //} Mbr; - //struct { - GUID DiskId; - //} Gpt; - } -} -alias DISK_PARTITION_INFO* PDISK_PARTITION_INFO; - -struct DISK_PERFORMANCE { - LARGE_INTEGER BytesRead; - LARGE_INTEGER BytesWritten; - LARGE_INTEGER ReadTime; - LARGE_INTEGER WriteTime; - DWORD ReadCount; - DWORD WriteCount; - DWORD QueueDepth; -} -alias DISK_PERFORMANCE* PDISK_PERFORMANCE; - -struct DISK_RECORD { - LARGE_INTEGER ByteOffset; - LARGE_INTEGER StartTime; - LARGE_INTEGER EndTime; - PVOID VirtualAddress; - DWORD NumberOfBytes; - BYTE DeviceNumber; - BOOLEAN ReadRequest; -} -alias DISK_RECORD* PDISK_RECORD; - -struct DISK_LOGGING { - BYTE Function; - PVOID BufferAddress; - DWORD BufferSize; -} -alias DISK_LOGGING* PDISK_LOGGING; - -struct DISKQUOTA_USER_INFORMATION { - LONGLONG QuotaUsed; - LONGLONG QuotaThreshold; - LONGLONG QuotaLimit; -} -alias DISKQUOTA_USER_INFORMATION* PDISKQUOTA_USER_INFORMATION; - -struct FORMAT_PARAMETERS { - MEDIA_TYPE MediaType; - DWORD StartCylinderNumber; - DWORD EndCylinderNumber; - DWORD StartHeadNumber; - DWORD EndHeadNumber; -} -alias FORMAT_PARAMETERS* PFORMAT_PARAMETERS; - -struct FORMAT_EX_PARAMETERS { - MEDIA_TYPE MediaType; - DWORD StartCylinderNumber; - DWORD EndCylinderNumber; - DWORD StartHeadNumber; - DWORD EndHeadNumber; - WORD FormatGapLength; - WORD SectorsPerTrack; - WORD _SectorNumber; - - WORD* SectorNumber() { return &_SectorNumber; } -} -alias FORMAT_EX_PARAMETERS* PFORMAT_EX_PARAMETERS; - -struct GET_LENGTH_INFORMATION { - LARGE_INTEGER Length; -} - -struct HISTOGRAM_BUCKET { - DWORD Reads; - DWORD Writes; -} -alias HISTOGRAM_BUCKET* PHISTOGRAM_BUCKET; - -struct DISK_HISTOGRAM { - LARGE_INTEGER DiskSize; - LARGE_INTEGER Start; - LARGE_INTEGER End; - LARGE_INTEGER Average; - LARGE_INTEGER AverageRead; - LARGE_INTEGER AverageWrite; - DWORD Granularity; - DWORD Size; - DWORD ReadCount; - DWORD WriteCount; - PHISTOGRAM_BUCKET Histogram; -} -alias DISK_HISTOGRAM* PDISK_HISTOGRAM; - -struct DISK_EXTENT { - DWORD DiskNumber; - LARGE_INTEGER StartingOffset; - LARGE_INTEGER ExtentLength; -} -alias DISK_EXTENT* PDISK_EXTENT; - -struct VOLUME_DISK_EXTENTS { - DWORD NumberOfDiskExtents; - DISK_EXTENT _Extents; - - DISK_EXTENT* Extents() { return &_Extents; } -} -alias VOLUME_DISK_EXTENTS* PVOLUME_DISK_EXTENTS; - -struct PARTITION_INFORMATION { - LARGE_INTEGER StartingOffset; - LARGE_INTEGER PartitionLength; - DWORD HiddenSectors; - DWORD PartitionNumber; - BYTE PartitionType; - BOOLEAN BootIndicator; - BOOLEAN RecognizedPartition; - BOOLEAN RewritePartition; -} -alias PARTITION_INFORMATION* PPARTITION_INFORMATION; - -struct DRIVE_LAYOUT_INFORMATION { - DWORD PartitionCount; - DWORD Signature; - PARTITION_INFORMATION _PartitionEntry; - - PARTITION_INFORMATION* PartitionEntry() { return &_PartitionEntry; } -} -alias DRIVE_LAYOUT_INFORMATION* PDRIVE_LAYOUT_INFORMATION; - -struct DRIVE_LAYOUT_INFORMATION_GPT { - GUID DiskId; - LARGE_INTEGER StartingUsableOffset; - LARGE_INTEGER UsableLength; - ULONG MaxPartitionCount; -} -alias DRIVE_LAYOUT_INFORMATION_GPT* PDRIVE_LAYOUT_INFORMATION_GPT; - -struct DRIVE_LAYOUT_INFORMATION_MBR { - ULONG Signature; -} -alias DRIVE_LAYOUT_INFORMATION_MBR* PDRIVE_LAYOUT_INFORMATION_MBR; - -struct PARTITION_INFORMATION_MBR { - BYTE PartitionType; - BOOLEAN BootIndicator; - BOOLEAN RecognizedPartition; - DWORD HiddenSectors; -} - -struct PARTITION_INFORMATION_GPT { - GUID PartitionType; - GUID PartitionId; - DWORD64 Attributes; - WCHAR[36] Name; -} - -struct PARTITION_INFORMATION_EX { - PARTITION_STYLE PartitionStyle; - LARGE_INTEGER StartingOffset; - LARGE_INTEGER PartitionLength; - DWORD PartitionNumber; - BOOLEAN RewritePartition; - union { - PARTITION_INFORMATION_MBR Mbr; - PARTITION_INFORMATION_GPT Gpt; - } -} - -struct DRIVE_LAYOUT_INFORMATION_EX { - DWORD PartitionStyle; - DWORD PartitionCount; - union { - DRIVE_LAYOUT_INFORMATION_MBR Mbr; - DRIVE_LAYOUT_INFORMATION_GPT Gpt; - } - PARTITION_INFORMATION_EX _PartitionEntry; - - PARTITION_INFORMATION_EX* PartitionEntry() { return &_PartitionEntry; } -} -alias DRIVE_LAYOUT_INFORMATION_EX* PDRIVE_LAYOUT_INFORMATION_EX; - -struct MOVE_FILE_DATA { - HANDLE FileHandle; - LARGE_INTEGER StartingVcn; - LARGE_INTEGER StartingLcn; - DWORD ClusterCount; -} -alias MOVE_FILE_DATA* PMOVE_FILE_DATA; - -struct PERF_BIN { - DWORD NumberOfBins; - DWORD TypeOfBin; - BIN_RANGE _BinsRanges; - - BIN_RANGE* BinsRanges() { return &_BinsRanges; } -} -alias PERF_BIN* PPERF_BIN; - -struct PREVENT_MEDIA_REMOVAL { - BOOLEAN PreventMediaRemoval; -} -alias PREVENT_MEDIA_REMOVAL* PPREVENT_MEDIA_REMOVAL; - -struct RETRIEVAL_POINTERS_BUFFER { - DWORD ExtentCount; - LARGE_INTEGER StartingVcn; - // In MinGW, this is declared as struct { ... } Extents[1]; - struct Extent { - LARGE_INTEGER NextVcn; - LARGE_INTEGER Lcn; - } - Extent _Extents; - - Extent* Extents() { return &_Extents; } -} -alias RETRIEVAL_POINTERS_BUFFER* PRETRIEVAL_POINTERS_BUFFER; - -struct REASSIGN_BLOCKS { - WORD Reserved; - WORD Count; - DWORD _BlockNumber; - - DWORD* BlockNumber() { return &_BlockNumber; } -} -alias REASSIGN_BLOCKS* PREASSIGN_BLOCKS; - -struct SET_PARTITION_INFORMATION { - BYTE PartitionType; -} -alias SET_PARTITION_INFORMATION* PSET_PARTITION_INFORMATION; - -struct STARTING_LCN_INPUT_BUFFER { - LARGE_INTEGER StartingLcn; -} -alias STARTING_LCN_INPUT_BUFFER* PSTARTING_LCN_INPUT_BUFFER; - -struct STARTING_VCN_INPUT_BUFFER { - LARGE_INTEGER StartingVcn; -} -alias STARTING_VCN_INPUT_BUFFER* PSTARTING_VCN_INPUT_BUFFER; - -struct VERIFY_INFORMATION { - LARGE_INTEGER StartingOffset; - DWORD Length; -} -alias VERIFY_INFORMATION* PVERIFY_INFORMATION; - -struct VOLUME_BITMAP_BUFFER { - LARGE_INTEGER StartingLcn; - LARGE_INTEGER BitmapSize; - BYTE _Buffer; - - BYTE* Buffer() { return &_Buffer; } -} -alias VOLUME_BITMAP_BUFFER* PVOLUME_BITMAP_BUFFER; - -struct NTFS_VOLUME_DATA_BUFFER { - LARGE_INTEGER VolumeSerialNumber; - LARGE_INTEGER NumberSectors; - LARGE_INTEGER TotalClusters; - LARGE_INTEGER FreeClusters; - LARGE_INTEGER TotalReserved; - DWORD BytesPerSector; - DWORD BytesPerCluster; - DWORD BytesPerFileRecordSegment; - DWORD ClustersPerFileRecordSegment; - LARGE_INTEGER MftValidDataLength; - LARGE_INTEGER MftStartLcn; - LARGE_INTEGER Mft2StartLcn; - LARGE_INTEGER MftZoneStart; - LARGE_INTEGER MftZoneEnd; -} -alias NTFS_VOLUME_DATA_BUFFER* PNTFS_VOLUME_DATA_BUFFER; - - -bool IsRecognizedPartition(BYTE t) { - return ((t & PARTITION_NTFT) - && ((t & ~VALID_NTFT) == PARTITION_FAT_12 - || (t & ~VALID_NTFT) == PARTITION_FAT_16 - || (t & ~VALID_NTFT) == PARTITION_IFS - || (t & ~VALID_NTFT) == PARTITION_HUGE - || (t & ~VALID_NTFT) == PARTITION_FAT32 - || (t & ~VALID_NTFT) == PARTITION_FAT32_XINT13 - || (t & ~VALID_NTFT) == PARTITION_XINT13)) - || (t & ~PARTITION_NTFT) == PARTITION_FAT_12 - || (t & ~PARTITION_NTFT) == PARTITION_FAT_16 - || (t & ~PARTITION_NTFT) == PARTITION_IFS - || (t & ~PARTITION_NTFT) == PARTITION_HUGE - || (t & ~PARTITION_NTFT) == PARTITION_FAT32 - || (t & ~PARTITION_NTFT) == PARTITION_FAT32_XINT13 - || (t & ~PARTITION_NTFT) == PARTITION_XINT13; -} - -bool IsContainerPartition(BYTE t) { - return ((t & PARTITION_NTFT) - && ((t & ~VALID_NTFT) == PARTITION_EXTENDED - || (t & ~VALID_NTFT) == PARTITION_XINT13_EXTENDED)) - || (t & ~PARTITION_NTFT) == PARTITION_EXTENDED - || (t & ~PARTITION_NTFT) == PARTITION_XINT13_EXTENDED; -} diff --git a/3rdparty-extra/win32/winldap.d b/3rdparty-extra/win32/winldap.d deleted file mode 100644 index 8ab4fe3f9..000000000 --- a/3rdparty-extra/win32/winldap.d +++ /dev/null @@ -1,855 +0,0 @@ -/***********************************************************************\ -* winldap.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.winldap; -version(Windows): - -/* Comment from MinGW - winldap.h - Header file for the Windows LDAP API - - Written by Filip Navara - - References: - The C LDAP Application Program Interface - http://www.watersprings.org/pub/id/draft-ietf-ldapext-ldap-c-api-05.txt - - Lightweight Directory Access Protocol Reference - http://msdn.microsoft.com/library/en-us/netdir/ldap/ldap_reference.asp - - This library 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. -*/ - -import win32.schannel, win32.winber; -private import win32.wincrypt, win32.windef; -version(Tango){ - private import tango.stdc.stdio; -} - -align(4): - -enum { - LDAP_VERSION1 = 1, - LDAP_VERSION2 = 2, - LDAP_VERSION3 = 3, - LDAP_VERSION = LDAP_VERSION2, - LDAP_VERSION_MIN = LDAP_VERSION2, - LDAP_VERSION_MAX = LDAP_VERSION3 -} - -/* MinGW defines ANSI and Unicode versions as LDAP_VENDOR_NAME and - * LDAP_VENDOR_NAME_W respectively; similarly with other string constants - * defined in this module. - */ -const TCHAR[] LDAP_VENDOR_NAME = "Microsoft Corporation."; - -const LDAP_API_VERSION = 2004; -const LDAP_VENDOR_VERSION = 510; -const LDAP_API_INFO_VERSION = 1; -const LDAP_FEATURE_INFO_VERSION = 1; - -enum { - LDAP_SUCCESS = 0x00, - LDAP_OPT_SUCCESS = LDAP_SUCCESS, - LDAP_OPERATIONS_ERROR, - LDAP_PROTOCOL_ERROR, - LDAP_TIMELIMIT_EXCEEDED, - LDAP_SIZELIMIT_EXCEEDED, - LDAP_COMPARE_FALSE, - LDAP_COMPARE_TRUE, - LDAP_STRONG_AUTH_NOT_SUPPORTED, - LDAP_AUTH_METHOD_NOT_SUPPORTED = LDAP_STRONG_AUTH_NOT_SUPPORTED, - LDAP_STRONG_AUTH_REQUIRED, - LDAP_REFERRAL_V2, - LDAP_PARTIAL_RESULTS = LDAP_REFERRAL_V2, - LDAP_REFERRAL, - LDAP_ADMIN_LIMIT_EXCEEDED, - LDAP_UNAVAILABLE_CRIT_EXTENSION, - LDAP_CONFIDENTIALITY_REQUIRED, - LDAP_SASL_BIND_IN_PROGRESS, // = 0x0e - LDAP_NO_SUCH_ATTRIBUTE = 0x10, - LDAP_UNDEFINED_TYPE, - LDAP_INAPPROPRIATE_MATCHING, - LDAP_CONSTRAINT_VIOLATION, - LDAP_TYPE_OR_VALUE_EXISTS, - LDAP_ATTRIBUTE_OR_VALUE_EXISTS = LDAP_TYPE_OR_VALUE_EXISTS, - LDAP_INVALID_SYNTAX, // = 0x15 - LDAP_NO_SUCH_OBJECT = 0x20, - LDAP_ALIAS_PROBLEM, - LDAP_INVALID_DN_SYNTAX, - LDAP_IS_LEAF, - LDAP_ALIAS_DEREF_PROBLEM, // = 0x24 - LDAP_INAPPROPRIATE_AUTH = 0x30, - LDAP_INVALID_CREDENTIALS, - LDAP_INSUFFICIENT_ACCESS, - LDAP_INSUFFICIENT_RIGHTS = LDAP_INSUFFICIENT_ACCESS, - LDAP_BUSY, - LDAP_UNAVAILABLE, - LDAP_UNWILLING_TO_PERFORM, - LDAP_LOOP_DETECT, // = 0x36 - LDAP_NAMING_VIOLATION = 0x40, - LDAP_OBJECT_CLASS_VIOLATION, - LDAP_NOT_ALLOWED_ON_NONLEAF, - LDAP_NOT_ALLOWED_ON_RDN, - LDAP_ALREADY_EXISTS, - LDAP_NO_OBJECT_CLASS_MODS, - LDAP_RESULTS_TOO_LARGE, - LDAP_AFFECTS_MULTIPLE_DSAS, // = 0x47 - LDAP_OTHER = 0x50, - LDAP_SERVER_DOWN, - LDAP_LOCAL_ERROR, - LDAP_ENCODING_ERROR, - LDAP_DECODING_ERROR, - LDAP_TIMEOUT, - LDAP_AUTH_UNKNOWN, - LDAP_FILTER_ERROR, - LDAP_USER_CANCELLED, - LDAP_PARAM_ERROR, - LDAP_NO_MEMORY, - LDAP_CONNECT_ERROR, - LDAP_NOT_SUPPORTED, - LDAP_CONTROL_NOT_FOUND, - LDAP_NO_RESULTS_RETURNED, - LDAP_MORE_RESULTS_TO_RETURN, - LDAP_CLIENT_LOOP, - LDAP_REFERRAL_LIMIT_EXCEEDED // = 0x61 -} - -enum { - LDAP_PORT = 389, - LDAP_SSL_PORT = 636, - LDAP_GC_PORT = 3268, - LDAP_SSL_GC_PORT = 3269 -} - -const void* - LDAP_OPT_OFF = null, - LDAP_OPT_ON = cast(void*) 1; - -enum { - LDAP_OPT_API_INFO = 0x00, - LDAP_OPT_DESC, - LDAP_OPT_DEREF, - LDAP_OPT_SIZELIMIT, - LDAP_OPT_TIMELIMIT, - LDAP_OPT_THREAD_FN_PTRS, - LDAP_OPT_REBIND_FN, - LDAP_OPT_REBIND_ARG, - LDAP_OPT_REFERRALS, - LDAP_OPT_RESTART, - LDAP_OPT_SSL, - LDAP_OPT_TLS = LDAP_OPT_SSL, - LDAP_OPT_IO_FN_PTRS, // = 0x0b - LDAP_OPT_CACHE_FN_PTRS = 0x0d, - LDAP_OPT_CACHE_STRATEGY, - LDAP_OPT_CACHE_ENABLE, - LDAP_OPT_REFERRAL_HOP_LIMIT, - LDAP_OPT_PROTOCOL_VERSION, - LDAP_OPT_VERSION = LDAP_OPT_PROTOCOL_VERSION, - LDAP_OPT_SERVER_CONTROLS, - LDAP_OPT_CLIENT_CONTROLS, // = 0x13 - LDAP_OPT_API_FEATURE_INFO = 0x15, - LDAP_OPT_HOST_NAME = 0x30, - LDAP_OPT_ERROR_NUMBER, - LDAP_OPT_ERROR_STRING, - LDAP_OPT_SERVER_ERROR, - LDAP_OPT_SERVER_EXT_ERROR, // = 0x34 - LDAP_OPT_PING_KEEP_ALIVE = 0x36, - LDAP_OPT_PING_WAIT_TIME, - LDAP_OPT_PING_LIMIT, // = 0x38 - LDAP_OPT_DNSDOMAIN_NAME = 0x3b, - LDAP_OPT_GETDSNAME_FLAGS = 0x3d, - LDAP_OPT_HOST_REACHABLE, - LDAP_OPT_PROMPT_CREDENTIALS, - LDAP_OPT_TCP_KEEPALIVE, // = 0x40 - LDAP_OPT_REFERRAL_CALLBACK = 0x70, - LDAP_OPT_CLIENT_CERTIFICATE = 0x80, - LDAP_OPT_SERVER_CERTIFICATE, // = 0x81 - LDAP_OPT_AUTO_RECONNECT = 0x91, - LDAP_OPT_SSPI_FLAGS, - LDAP_OPT_SSL_INFO, - LDAP_OPT_TLS_INFO = LDAP_OPT_SSL_INFO, - LDAP_OPT_REF_DEREF_CONN_PER_MSG, - LDAP_OPT_SIGN, - LDAP_OPT_ENCRYPT, - LDAP_OPT_SASL_METHOD, - LDAP_OPT_AREC_EXCLUSIVE, - LDAP_OPT_SECURITY_CONTEXT, - LDAP_OPT_ROOTDSE_CACHE // = 0x9a -} - -enum { - LDAP_DEREF_NEVER, - LDAP_DEREF_SEARCHING, - LDAP_DEREF_FINDING, - LDAP_DEREF_ALWAYS -} - -const LDAP_NO_LIMIT = 0; - -const TCHAR[] LDAP_CONTROL_REFERRALS = "1.2.840.113556.1.4.616"; - -// FIXME: check type (declared with U suffix in MinGW) -enum : uint { - LDAP_CHASE_SUBORDINATE_REFERRALS = 0x20, - LDAP_CHASE_EXTERNAL_REFERRALS = 0x40 -} - -enum { - LDAP_SCOPE_DEFAULT = -1, - LDAP_SCOPE_BASE, - LDAP_SCOPE_ONELEVEL, - LDAP_SCOPE_SUBTREE -} - -enum { - LDAP_MOD_ADD, - LDAP_MOD_DELETE, - LDAP_MOD_REPLACE, - LDAP_MOD_BVALUES = 0x80 -} - -enum : int { - LDAP_RES_BIND = 0x61, - LDAP_RES_SEARCH_ENTRY = 0x64, - LDAP_RES_SEARCH_RESULT = 0x65, - LDAP_RES_MODIFY = 0x67, - LDAP_RES_ADD = 0x69, - LDAP_RES_DELETE = 0x6b, - LDAP_RES_MODRDN = 0x6d, - LDAP_RES_COMPARE = 0x6f, - LDAP_RES_SEARCH_REFERENCE = 0x73, - LDAP_RES_EXTENDED = 0x78, - LDAP_RES_ANY = -1 -} - -enum { - LDAP_MSG_ONE, - LDAP_MSG_ALL, - LDAP_MSG_RECEIVED -} - -const TCHAR[] - LDAP_SERVER_SORT_OID = "1.2.840.113556.1.4.473", - LDAP_SERVER_RESP_SORT_OID = "1.2.840.113556.1.4.474", - LDAP_PAGED_RESULT_OID_STRING = "1.2.840.113556.1.4.319", - LDAP_CONTROL_VLVREQUEST = "2.16.840.1.113730.3.4.9", - LDAP_CONTROL_VLVRESPONSE = "2.16.840.1.113730.3.4.10", - LDAP_START_TLS_OID = "1.3.6.1.4.1.1466.20037", - LDAP_TTL_EXTENDED_OP_OID = "1.3.6.1.4.1.1466.101.119.1"; - -enum { - LDAP_AUTH_NONE = 0x00U, - LDAP_AUTH_SIMPLE = 0x80U, - LDAP_AUTH_SASL = 0x83U, - LDAP_AUTH_OTHERKIND = 0x86U, - LDAP_AUTH_EXTERNAL = LDAP_AUTH_OTHERKIND | 0x0020U, - LDAP_AUTH_SICILY = LDAP_AUTH_OTHERKIND | 0x0200U, - LDAP_AUTH_NEGOTIATE = LDAP_AUTH_OTHERKIND | 0x0400U, - LDAP_AUTH_MSN = LDAP_AUTH_OTHERKIND | 0x0800U, - LDAP_AUTH_NTLM = LDAP_AUTH_OTHERKIND | 0x1000U, - LDAP_AUTH_DIGEST = LDAP_AUTH_OTHERKIND | 0x4000U, - LDAP_AUTH_DPA = LDAP_AUTH_OTHERKIND | 0x2000U, - LDAP_AUTH_SSPI = LDAP_AUTH_NEGOTIATE -} - -enum { - LDAP_FILTER_AND = 0xa0, - LDAP_FILTER_OR, - LDAP_FILTER_NOT, - LDAP_FILTER_EQUALITY, - LDAP_FILTER_SUBSTRINGS, - LDAP_FILTER_GE, - LDAP_FILTER_LE, // = 0xa6 - LDAP_FILTER_APPROX = 0xa8, - LDAP_FILTER_EXTENSIBLE, - LDAP_FILTER_PRESENT = 0x87 -} - -enum { - LDAP_SUBSTRING_INITIAL = 0x80, - LDAP_SUBSTRING_ANY, - LDAP_SUBSTRING_FINAL -} - -struct LDAP { - char[76] Reserved; - PCHAR ld_host; - ULONG ld_version; - UCHAR ld_lberoptions; - int ld_deref; - int ld_timelimit; - int ld_sizelimit; - int ld_errno; - PCHAR ld_matched; - PCHAR ld_error; -} -alias LDAP* PLDAP; - -struct LDAPMessage { - ULONG lm_msgid; - ULONG lm_msgtype; - BerElement* lm_ber; - LDAPMessage* lm_chain; - LDAPMessage* lm_next; - ULONG lm_time; -} -alias LDAPMessage* PLDAPMessage; - -struct LDAP_TIMEVAL { - LONG tv_sec; - LONG tv_usec; -} -alias LDAP_TIMEVAL* PLDAP_TIMEVAL; - -struct LDAPAPIInfoA { - int ldapai_info_version; - int ldapai_api_version; - int ldapai_protocol_version; - char** ldapai_extensions; - char* ldapai_vendor_name; - int ldapai_vendor_version; -} -alias LDAPAPIInfoA* PLDAPAPIInfoA; - -struct LDAPAPIInfoW { - int ldapai_info_version; - int ldapai_api_version; - int ldapai_protocol_version; - PWCHAR* ldapai_extensions; - PWCHAR ldapai_vendor_name; - int ldapai_vendor_version; -} -alias LDAPAPIInfoW* PLDAPAPIInfoW; - -struct LDAPAPIFeatureInfoA { - int ldapaif_info_version; - char* ldapaif_name; - int ldapaif_version; -} -alias LDAPAPIFeatureInfoA* PLDAPAPIFeatureInfoA; - -struct LDAPAPIFeatureInfoW { - int ldapaif_info_version; - PWCHAR ldapaif_name; - int ldapaif_version; -} -alias LDAPAPIFeatureInfoW* PLDAPAPIFeatureInfoW; - -struct LDAPControlA { - PCHAR ldctl_oid; - BerValue ldctl_value; - BOOLEAN ldctl_iscritical; -} -alias LDAPControlA* PLDAPControlA; - -struct LDAPControlW { - PWCHAR ldctl_oid; - BerValue ldctl_value; - BOOLEAN ldctl_iscritical; -} -alias LDAPControlW* PLDAPControlW; - -/* Do we really need these? In MinGW, LDAPModA/W have only mod_op, mod_type - * and mod_vals, and macros are used to simulate anonymous unions in those - * structures. - */ -union mod_vals_u_tA { - PCHAR* modv_strvals; - BerValue** modv_bvals; -} - -union mod_vals_u_tW { - PWCHAR* modv_strvals; - BerValue** modv_bvals; -} - -struct LDAPModA { - ULONG mod_op; - PCHAR mod_type; - - union { - mod_vals_u_tA mod_vals; - // The following members are defined as macros in MinGW. - PCHAR* mod_values; - BerValue** mod_bvalues; - } -} -alias LDAPModA* PLDAPModA; - -struct LDAPModW { - ULONG mod_op; - PWCHAR mod_type; - - union { - mod_vals_u_tW mod_vals; - // The following members are defined as macros in MinGW. - PWCHAR* mod_values; - BerValue** mod_bvalues; - } -} -alias LDAPModW* PLDAPModW; - -/* Opaque structure - * http://msdn.microsoft.com/library/en-us/ldap/ldap/ldapsearch.asp - */ -struct LDAPSearch; -alias LDAPSearch* PLDAPSearch; - -struct LDAPSortKeyA { - PCHAR sk_attrtype; - PCHAR sk_matchruleoid; - BOOLEAN sk_reverseorder; -} -alias LDAPSortKeyA* PLDAPSortKeyA; - -struct LDAPSortKeyW { - PWCHAR sk_attrtype; - PWCHAR sk_matchruleoid; - BOOLEAN sk_reverseorder; -} -alias LDAPSortKeyW* PLDAPSortKeyW; - -/* MinGW defines these as immediate function typedefs, which don't translate - * well into D. - */ -extern (C) { - alias ULONG function(PLDAP, PLDAP, PWCHAR, PCHAR, ULONG, PVOID, PVOID, - PLDAP*) QUERYFORCONNECTION; - alias BOOLEAN function(PLDAP, PLDAP, PWCHAR, PCHAR, PLDAP, ULONG, PVOID, - PVOID, ULONG) NOTIFYOFNEWCONNECTION; - alias ULONG function(PLDAP, PLDAP) DEREFERENCECONNECTION; - alias BOOLEAN function(PLDAP, PSecPkgContext_IssuerListInfoEx, - PCCERT_CONTEXT*) QUERYCLIENTCERT; -} - -struct LDAP_REFERRAL_CALLBACK { - ULONG SizeOfCallbacks; - QUERYFORCONNECTION* QueryForConnection; - NOTIFYOFNEWCONNECTION* NotifyRoutine; - DEREFERENCECONNECTION* DereferenceRoutine; -} -alias LDAP_REFERRAL_CALLBACK* PLDAP_REFERRAL_CALLBACK; - -struct LDAPVLVInfo { - int ldvlv_version; - uint ldvlv_before_count; - uint ldvlv_after_count; - uint ldvlv_offset; - uint ldvlv_count; - BerValue* ldvlv_attrvalue; - BerValue* ldvlv_context; - void* ldvlv_extradata; -} - -/* - * Under Microsoft WinLDAP the function ldap_error is only stub. - * This macro uses LDAP structure to get error string and pass it to the user. - */ -private extern (C) int printf(in char* format, ...); -int ldap_perror(LDAP* handle, char* message) { - return printf("%s: %s\n", message, handle.ld_error); -} - -/* FIXME: In MinGW, these are WINLDAPAPI == DECLSPEC_IMPORT. Linkage - * attribute? - */ -extern (C) { - PLDAP ldap_initA(PCHAR, ULONG); - PLDAP ldap_initW(PWCHAR, ULONG); - PLDAP ldap_openA(PCHAR, ULONG); - PLDAP ldap_openW(PWCHAR, ULONG); - PLDAP cldap_openA(PCHAR, ULONG); - PLDAP cldap_openW(PWCHAR, ULONG); - ULONG ldap_connect(LDAP*, LDAP_TIMEVAL*); - PLDAP ldap_sslinitA(PCHAR, ULONG, int); - PLDAP ldap_sslinitW(PWCHAR, ULONG, int); - ULONG ldap_start_tls_sA(LDAP*, PLDAPControlA*, PLDAPControlA*); - ULONG ldap_start_tls_sW(LDAP*, PLDAPControlW*, PLDAPControlW*); - BOOLEAN ldap_stop_tls_s(LDAP*); - ULONG ldap_get_optionA(LDAP*, int, void*); - ULONG ldap_get_optionW(LDAP*, int, void*); - ULONG ldap_set_optionA(LDAP*, int, void*); - ULONG ldap_set_optionW(LDAP*, int, void*); - ULONG ldap_control_freeA(LDAPControlA*); - ULONG ldap_control_freeW(LDAPControlW*); - ULONG ldap_controls_freeA(LDAPControlA**); - ULONG ldap_controls_freeW(LDAPControlW**); - ULONG ldap_free_controlsA(LDAPControlA**); - ULONG ldap_free_controlsW(LDAPControlW**); - ULONG ldap_sasl_bindA(LDAP*, PCHAR, PCHAR, BERVAL*, PLDAPControlA*, - PLDAPControlA*, int*); - ULONG ldap_sasl_bindW(LDAP*, PWCHAR, PWCHAR, BERVAL*, PLDAPControlW*, - PLDAPControlW*, int*); - ULONG ldap_sasl_bind_sA(LDAP*, PCHAR, PCHAR, BERVAL*, PLDAPControlA*, - PLDAPControlA*, PBERVAL*); - ULONG ldap_sasl_bind_sW(LDAP*, PWCHAR, PWCHAR, BERVAL*, PLDAPControlW*, - PLDAPControlW*, PBERVAL*); - ULONG ldap_simple_bindA(LDAP*, PCHAR, PCHAR); - ULONG ldap_simple_bindW(LDAP*, PWCHAR, PWCHAR); - ULONG ldap_simple_bind_sA(LDAP*, PCHAR, PCHAR); - ULONG ldap_simple_bind_sW(LDAP*, PWCHAR, PWCHAR); - ULONG ldap_unbind(LDAP*); - ULONG ldap_unbind_s(LDAP*); - ULONG ldap_search_extA(LDAP*, PCHAR, ULONG, PCHAR, PCHAR[], ULONG, - PLDAPControlW*, PLDAPControlW*, ULONG, ULONG, ULONG*); - ULONG ldap_search_extW(LDAP*, PWCHAR, ULONG, PWCHAR, PWCHAR[], ULONG, - PLDAPControlW*, PLDAPControlW*, ULONG, ULONG, ULONG*); - ULONG ldap_search_ext_sA(LDAP*, PCHAR, ULONG, PCHAR, PCHAR[], ULONG, - PLDAPControlA*, PLDAPControlA*, LDAP_TIMEVAL*, ULONG, LDAPMessage**); - ULONG ldap_search_ext_sW(LDAP*, PWCHAR, ULONG, PWCHAR, PWCHAR[], ULONG, - PLDAPControlW*, PLDAPControlW*, LDAP_TIMEVAL*, ULONG, LDAPMessage**); - ULONG ldap_searchA(LDAP*, PCHAR, ULONG, PCHAR, PCHAR[], ULONG); - ULONG ldap_searchW(LDAP*, PWCHAR, ULONG, PWCHAR, PWCHAR[], ULONG); - ULONG ldap_search_sA(LDAP*, PCHAR, ULONG, PCHAR, PCHAR[], ULONG, - LDAPMessage**); - ULONG ldap_search_sW(LDAP*, PWCHAR, ULONG, PWCHAR, PWCHAR[], ULONG, - LDAPMessage**); - ULONG ldap_search_stA(LDAP*, PCHAR, ULONG, PCHAR, PCHAR[], ULONG, - LDAP_TIMEVAL*, LDAPMessage**); - ULONG ldap_search_stW(LDAP*, PWCHAR, ULONG, PWCHAR, PWCHAR[], ULONG, - LDAP_TIMEVAL*, LDAPMessage**); - ULONG ldap_compare_extA(LDAP*, PCHAR, PCHAR, PCHAR, BerValue*, - PLDAPControlA*, PLDAPControlA*, ULONG*); - ULONG ldap_compare_extW(LDAP*, PWCHAR, PWCHAR, PWCHAR, BerValue*, - PLDAPControlW*, PLDAPControlW*, ULONG*); - ULONG ldap_compare_ext_sA(LDAP*, PCHAR, PCHAR, PCHAR, BerValue*, - PLDAPControlA*, PLDAPControlA*); - ULONG ldap_compare_ext_sW(LDAP*, PWCHAR, PWCHAR, PWCHAR, BerValue*, - PLDAPControlW*, PLDAPControlW*); - ULONG ldap_compareA(LDAP*, PCHAR, PCHAR, PCHAR); - ULONG ldap_compareW(LDAP*, PWCHAR, PWCHAR, PWCHAR); - ULONG ldap_compare_sA(LDAP*, PCHAR, PCHAR, PCHAR); - ULONG ldap_compare_sW(LDAP*, PWCHAR, PWCHAR, PWCHAR); - ULONG ldap_modify_extA(LDAP*, PCHAR, LDAPModA*[], PLDAPControlA*, - PLDAPControlA*, ULONG*); - ULONG ldap_modify_extW(LDAP*, PWCHAR, LDAPModW*[], PLDAPControlW*, - PLDAPControlW*, ULONG*); - ULONG ldap_modify_ext_sA(LDAP*, PCHAR, LDAPModA*[], PLDAPControlA*, - PLDAPControlA*); - ULONG ldap_modify_ext_sW(LDAP*, PWCHAR, LDAPModW*[], PLDAPControlW*, - PLDAPControlW*); - ULONG ldap_modifyA(LDAP*, PCHAR, LDAPModA*[]); - ULONG ldap_modifyW(LDAP*, PWCHAR, LDAPModW*[]); - ULONG ldap_modify_sA(LDAP*, PCHAR, LDAPModA*[]); - ULONG ldap_modify_sW(LDAP*, PWCHAR, LDAPModW*[]); - ULONG ldap_rename_extA(LDAP*, PCHAR, PCHAR, PCHAR, INT, PLDAPControlA*, - PLDAPControlA*, ULONG*); - ULONG ldap_rename_extW(LDAP*, PWCHAR, PWCHAR, PWCHAR, INT, PLDAPControlW*, - PLDAPControlW*, ULONG*); - ULONG ldap_rename_ext_sA(LDAP*, PCHAR, PCHAR, PCHAR, INT, - PLDAPControlA*, PLDAPControlA*); - ULONG ldap_rename_ext_sW(LDAP*, PWCHAR, PWCHAR, PWCHAR, INT, - PLDAPControlW*, PLDAPControlW*); - ULONG ldap_add_extA(LDAP*, PCHAR, LDAPModA*[], PLDAPControlA*, - PLDAPControlA*, ULONG*); - ULONG ldap_add_extW(LDAP*, PWCHAR, LDAPModW*[], PLDAPControlW*, - PLDAPControlW*, ULONG*); - ULONG ldap_add_ext_sA(LDAP*, PCHAR, LDAPModA*[], PLDAPControlA*, - PLDAPControlA*); - ULONG ldap_add_ext_sW(LDAP*, PWCHAR, LDAPModW*[], PLDAPControlW*, - PLDAPControlW*); - ULONG ldap_addA(LDAP*, PCHAR, LDAPModA*[]); - ULONG ldap_addW(LDAP*, PWCHAR, LDAPModW*[]); - ULONG ldap_add_sA(LDAP*, PCHAR, LDAPModA*[]); - ULONG ldap_add_sW(LDAP*, PWCHAR, LDAPModW*[]); - ULONG ldap_delete_extA(LDAP*, PCHAR, PLDAPControlA*, PLDAPControlA*, - ULONG*); - ULONG ldap_delete_extW(LDAP*, PWCHAR, PLDAPControlW*, PLDAPControlW*, - ULONG*); - ULONG ldap_delete_ext_sA(LDAP*, PCHAR, PLDAPControlA*, PLDAPControlA*); - ULONG ldap_delete_ext_sW(LDAP*, PWCHAR, PLDAPControlW*, PLDAPControlW*); - ULONG ldap_deleteA(LDAP*, PCHAR); - ULONG ldap_deleteW(LDAP*, PWCHAR); - ULONG ldap_delete_sA(LDAP*, PCHAR); - ULONG ldap_delete_sW(LDAP*, PWCHAR); - ULONG ldap_extended_operationA(LDAP*, PCHAR, BerValue*, PLDAPControlA*, - PLDAPControlA*, ULONG*); - ULONG ldap_extended_operationW(LDAP*, PWCHAR, BerValue*, PLDAPControlW*, - PLDAPControlW*, ULONG*); - ULONG ldap_extended_operation_sA(LDAP*, PCHAR, BerValue*, PLDAPControlA*, - PLDAPControlA*, PCHAR*, BerValue**); - ULONG ldap_extended_operation_sW(LDAP*, PWCHAR, BerValue*, PLDAPControlW*, - PLDAPControlW*, PWCHAR*, BerValue**); - ULONG ldap_close_extended_op(LDAP*, ULONG); - ULONG ldap_abandon(LDAP*, ULONG); - ULONG ldap_result(LDAP*, ULONG, ULONG, LDAP_TIMEVAL*, LDAPMessage**); - ULONG ldap_msgfree(LDAPMessage*); - ULONG ldap_parse_resultA(LDAP*, LDAPMessage*, ULONG*, PCHAR*, PCHAR*, - PCHAR**, PLDAPControlA**, BOOLEAN); - ULONG ldap_parse_resultW(LDAP*, LDAPMessage*, ULONG*, PWCHAR*, PWCHAR*, - PWCHAR**, PLDAPControlW**, BOOLEAN); - ULONG ldap_parse_extended_resultA(LDAP, LDAPMessage*, PCHAR*, BerValue**, - BOOLEAN); - ULONG ldap_parse_extended_resultW(LDAP, LDAPMessage*, PWCHAR*, BerValue**, - BOOLEAN); - PCHAR ldap_err2stringA(ULONG); - PWCHAR ldap_err2stringW(ULONG); - ULONG LdapGetLastError(); - ULONG LdapMapErrorToWin32(ULONG); - ULONG ldap_result2error(LDAP*, LDAPMessage*, ULONG); - PLDAPMessage ldap_first_entry(LDAP*, LDAPMessage*); - PLDAPMessage ldap_next_entry(LDAP*, LDAPMessage*); - PLDAPMessage ldap_first_reference(LDAP*, LDAPMessage*); - PLDAPMessage ldap_next_reference(LDAP*, LDAPMessage*); - ULONG ldap_count_entries(LDAP*, LDAPMessage*); - ULONG ldap_count_references(LDAP*, LDAPMessage*); - PCHAR ldap_first_attributeA(LDAP*, LDAPMessage*, BerElement**); - PWCHAR ldap_first_attributeW(LDAP*, LDAPMessage*, BerElement**); - PCHAR ldap_next_attributeA(LDAP*, LDAPMessage*, BerElement*); - PWCHAR ldap_next_attributeW(LDAP*, LDAPMessage*, BerElement*); - VOID ldap_memfreeA(PCHAR); - VOID ldap_memfreeW(PWCHAR); - PCHAR* ldap_get_valuesA(LDAP*, LDAPMessage*, PCHAR); - PWCHAR* ldap_get_valuesW(LDAP*, LDAPMessage*, PWCHAR); - BerValue** ldap_get_values_lenA(LDAP*, LDAPMessage*, PCHAR); - BerValue** ldap_get_values_lenW(LDAP*, LDAPMessage*, PWCHAR); - ULONG ldap_count_valuesA(PCHAR*); - ULONG ldap_count_valuesW(PWCHAR*); - ULONG ldap_count_values_len(BerValue**); - ULONG ldap_value_freeA(PCHAR*); - ULONG ldap_value_freeW(PWCHAR*); - ULONG ldap_value_free_len(BerValue**); - PCHAR ldap_get_dnA(LDAP*, LDAPMessage*); - PWCHAR ldap_get_dnW(LDAP*, LDAPMessage*); - PCHAR ldap_explode_dnA(PCHAR, ULONG); - PWCHAR ldap_explode_dnW(PWCHAR, ULONG); - PCHAR ldap_dn2ufnA(PCHAR); - PWCHAR ldap_dn2ufnW(PWCHAR); - ULONG ldap_ufn2dnA(PCHAR, PCHAR*); - ULONG ldap_ufn2dnW(PWCHAR, PWCHAR*); - ULONG ldap_parse_referenceA(LDAP*, LDAPMessage*, PCHAR**); - ULONG ldap_parse_referenceW(LDAP*, LDAPMessage*, PWCHAR**); - ULONG ldap_check_filterA(LDAP*, PCHAR); - ULONG ldap_check_filterW(LDAP*, PWCHAR); - ULONG ldap_create_page_controlA(PLDAP, ULONG, BerValue*, UCHAR, - PLDAPControlA*); - ULONG ldap_create_page_controlW(PLDAP, ULONG, BerValue*, UCHAR, - PLDAPControlW*); - ULONG ldap_create_sort_controlA(PLDAP, PLDAPSortKeyA*, UCHAR, - PLDAPControlA*); - ULONG ldap_create_sort_controlW(PLDAP, PLDAPSortKeyW*, UCHAR, - PLDAPControlW*); - INT ldap_create_vlv_controlA(LDAP*, LDAPVLVInfo*, UCHAR, LDAPControlA**); - INT ldap_create_vlv_controlW(LDAP*, LDAPVLVInfo*, UCHAR, LDAPControlW**); - ULONG ldap_encode_sort_controlA(PLDAP, PLDAPSortKeyA*, PLDAPControlA, - BOOLEAN); - ULONG ldap_encode_sort_controlW(PLDAP, PLDAPSortKeyW*, PLDAPControlW, - BOOLEAN); - ULONG ldap_escape_filter_elementA(PCHAR, ULONG, PCHAR, ULONG); - ULONG ldap_escape_filter_elementW(PWCHAR, ULONG, PWCHAR, ULONG); - ULONG ldap_get_next_page(PLDAP, PLDAPSearch, ULONG, ULONG*); - ULONG ldap_get_next_page_s(PLDAP, PLDAPSearch, LDAP_TIMEVAL*, ULONG, - ULONG*, LDAPMessage**); - ULONG ldap_get_paged_count(PLDAP, PLDAPSearch, ULONG*, PLDAPMessage); - ULONG ldap_parse_page_controlA(PLDAP, PLDAPControlA*, ULONG*, BerValue**); - ULONG ldap_parse_page_controlW(PLDAP, PLDAPControlW*, ULONG*, BerValue**); - ULONG ldap_parse_sort_controlA(PLDAP, PLDAPControlA*, ULONG*, PCHAR*); - ULONG ldap_parse_sort_controlW(PLDAP, PLDAPControlW*, ULONG*, PWCHAR*); - INT ldap_parse_vlv_controlA(LDAP*, LDAPControlA**, uint*, uint*, - BerValue**, int*); - INT ldap_parse_vlv_controlW(LDAP*, LDAPControlW**, uint*, uint*, - BerValue**, int*); - PLDAPSearch ldap_search_init_pageA(PLDAP, PCHAR, ULONG, PCHAR, PCHAR[], - ULONG, PLDAPControlA*, PLDAPControlA*, ULONG, ULONG, PLDAPSortKeyA*); - PLDAPSearch ldap_search_init_pageW(PLDAP, PWCHAR, ULONG, PWCHAR, PWCHAR[], - ULONG, PLDAPControlW*, PLDAPControlW*, ULONG, ULONG, PLDAPSortKeyW*); - ULONG ldap_search_abandon_page(PLDAP, PLDAPSearch); - LDAP ldap_conn_from_msg(LDAP*, LDAPMessage*); - INT LdapUnicodeToUTF8(LPCWSTR, int, LPSTR, int); - INT LdapUTF8ToUnicode(LPCSTR, int, LPWSTR, int); - deprecated { - ULONG ldap_bindA(LDAP*, PCHAR, PCHAR, ULONG); - ULONG ldap_bindW(LDAP*, PWCHAR, PWCHAR, ULONG); - ULONG ldap_bind_sA(LDAP*, PCHAR, PCHAR, ULONG); - ULONG ldap_bind_sW(LDAP*, PWCHAR, PWCHAR, ULONG); - ULONG ldap_modrdnA(LDAP*, PCHAR, PCHAR); - ULONG ldap_modrdnW(LDAP*, PWCHAR, PWCHAR); - ULONG ldap_modrdn_sA(LDAP*, PCHAR, PCHAR); - ULONG ldap_modrdn_sW(LDAP*, PWCHAR, PWCHAR); - ULONG ldap_modrdn2A(LDAP*, PCHAR, PCHAR, INT); - ULONG ldap_modrdn2W(LDAP*, PWCHAR, PWCHAR, INT); - ULONG ldap_modrdn2_sA(LDAP*, PCHAR, PCHAR, INT); - ULONG ldap_modrdn2_sW(LDAP*, PWCHAR, PWCHAR, INT); - } -} - -version (Unicode) { - alias LDAPControlW LDAPControl; - alias PLDAPControlW PLDAPControl; - alias LDAPModW LDAPMod; - alias LDAPModW PLDAPMod; - alias LDAPSortKeyW LDAPSortKey; - alias PLDAPSortKeyW PLDAPSortKey; - alias LDAPAPIInfoW LDAPAPIInfo; - alias PLDAPAPIInfoW PLDAPAPIInfo; - alias LDAPAPIFeatureInfoW LDAPAPIFeatureInfo; - alias PLDAPAPIFeatureInfoW PLDAPAPIFeatureInfo; - alias cldap_openW cldap_open; - alias ldap_openW ldap_open; - alias ldap_simple_bindW ldap_simple_bind; - alias ldap_simple_bind_sW ldap_simple_bind_s; - alias ldap_sasl_bindW ldap_sasl_bind; - alias ldap_sasl_bind_sW ldap_sasl_bind_s; - alias ldap_initW ldap_init; - alias ldap_sslinitW ldap_sslinit; - alias ldap_get_optionW ldap_get_option; - alias ldap_set_optionW ldap_set_option; - alias ldap_start_tls_sW ldap_start_tls_s; - alias ldap_addW ldap_add; - alias ldap_add_extW ldap_add_ext; - alias ldap_add_sW ldap_add_s; - alias ldap_add_ext_sW ldap_add_ext_s; - alias ldap_compareW ldap_compare; - alias ldap_compare_extW ldap_compare_ext; - alias ldap_compare_sW ldap_compare_s; - alias ldap_compare_ext_sW ldap_compare_ext_s; - alias ldap_deleteW ldap_delete; - alias ldap_delete_extW ldap_delete_ext; - alias ldap_delete_sW ldap_delete_s; - alias ldap_delete_ext_sW ldap_delete_ext_s; - alias ldap_extended_operation_sW ldap_extended_operation_s; - alias ldap_extended_operationW ldap_extended_operation; - alias ldap_modifyW ldap_modify; - alias ldap_modify_extW ldap_modify_ext; - alias ldap_modify_sW ldap_modify_s; - alias ldap_modify_ext_sW ldap_modify_ext_s; - alias ldap_check_filterW ldap_check_filter; - alias ldap_count_valuesW ldap_count_values; - alias ldap_create_page_controlW ldap_create_page_control; - alias ldap_create_sort_controlW ldap_create_sort_control; - alias ldap_create_vlv_controlW ldap_create_vlv_control; - alias ldap_encode_sort_controlW ldap_encode_sort_control; - alias ldap_escape_filter_elementW ldap_escape_filter_element; - alias ldap_first_attributeW ldap_first_attribute; - alias ldap_next_attributeW ldap_next_attribute; - alias ldap_get_valuesW ldap_get_values; - alias ldap_get_values_lenW ldap_get_values_len; - alias ldap_parse_extended_resultW ldap_parse_extended_result; - alias ldap_parse_page_controlW ldap_parse_page_control; - alias ldap_parse_referenceW ldap_parse_reference; - alias ldap_parse_resultW ldap_parse_result; - alias ldap_parse_sort_controlW ldap_parse_sort_control; - alias ldap_parse_vlv_controlW ldap_parse_vlv_control; - alias ldap_searchW ldap_search; - alias ldap_search_sW ldap_search_s; - alias ldap_search_stW ldap_search_st; - alias ldap_search_extW ldap_search_ext; - alias ldap_search_ext_sW ldap_search_ext_s; - alias ldap_search_init_pageW ldap_search_init_page; - alias ldap_err2stringW ldap_err2string; - alias ldap_control_freeW ldap_control_free; - alias ldap_controls_freeW ldap_controls_free; - alias ldap_free_controlsW ldap_free_controls; - alias ldap_memfreeW ldap_memfree; - alias ldap_value_freeW ldap_value_free; - alias ldap_dn2ufnW ldap_dn2ufn; - alias ldap_ufn2dnW ldap_ufn2dn; - alias ldap_explode_dnW ldap_explode_dn; - alias ldap_get_dnW ldap_get_dn; - alias ldap_rename_extW ldap_rename; - alias ldap_rename_ext_sW ldap_rename_s; - alias ldap_rename_extW ldap_rename_ext; - alias ldap_rename_ext_sW ldap_rename_ext_s; - deprecated { - alias ldap_bindW ldap_bind; - alias ldap_bind_sW ldap_bind_s; - alias ldap_modrdnW ldap_modrdn; - alias ldap_modrdn_sW ldap_modrdn_s; - alias ldap_modrdn2W ldap_modrdn2; - alias ldap_modrdn2_sW ldap_modrdn2_s; - } -} else { - alias LDAPControlA LDAPControl; - alias PLDAPControlA PLDAPControl; - alias LDAPModA LDAPMod; - alias LDAPModA PLDAPMod; - alias LDAPSortKeyA LDAPSortKey; - alias PLDAPSortKeyA PLDAPSortKey; - alias LDAPAPIInfoA LDAPAPIInfo; - alias PLDAPAPIInfoA PLDAPAPIInfo; - alias LDAPAPIFeatureInfoA LDAPAPIFeatureInfo; - alias PLDAPAPIFeatureInfoA PLDAPAPIFeatureInfo; - alias cldap_openA cldap_open; - alias ldap_openA ldap_open; - alias ldap_simple_bindA ldap_simple_bind; - alias ldap_simple_bind_sA ldap_simple_bind_s; - alias ldap_sasl_bindA ldap_sasl_bind; - alias ldap_sasl_bind_sA ldap_sasl_bind_s; - alias ldap_initA ldap_init; - alias ldap_sslinitA ldap_sslinit; - alias ldap_get_optionA ldap_get_option; - alias ldap_set_optionA ldap_set_option; - alias ldap_start_tls_sA ldap_start_tls_s; - alias ldap_addA ldap_add; - alias ldap_add_extA ldap_add_ext; - alias ldap_add_sA ldap_add_s; - alias ldap_add_ext_sA ldap_add_ext_s; - alias ldap_compareA ldap_compare; - alias ldap_compare_extA ldap_compare_ext; - alias ldap_compare_sA ldap_compare_s; - alias ldap_compare_ext_sA ldap_compare_ext_s; - alias ldap_deleteA ldap_delete; - alias ldap_delete_extA ldap_delete_ext; - alias ldap_delete_sA ldap_delete_s; - alias ldap_delete_ext_sA ldap_delete_ext_s; - alias ldap_extended_operation_sA ldap_extended_operation_s; - alias ldap_extended_operationA ldap_extended_operation; - alias ldap_modifyA ldap_modify; - alias ldap_modify_extA ldap_modify_ext; - alias ldap_modify_sA ldap_modify_s; - alias ldap_modify_ext_sA ldap_modify_ext_s; - alias ldap_check_filterA ldap_check_filter; - alias ldap_count_valuesA ldap_count_values; - alias ldap_create_page_controlA ldap_create_page_control; - alias ldap_create_sort_controlA ldap_create_sort_control; - alias ldap_create_vlv_controlA ldap_create_vlv_control; - alias ldap_encode_sort_controlA ldap_encode_sort_control; - alias ldap_escape_filter_elementA ldap_escape_filter_element; - alias ldap_first_attributeA ldap_first_attribute; - alias ldap_next_attributeA ldap_next_attribute; - alias ldap_get_valuesA ldap_get_values; - alias ldap_get_values_lenA ldap_get_values_len; - alias ldap_parse_extended_resultA ldap_parse_extended_result; - alias ldap_parse_page_controlA ldap_parse_page_control; - alias ldap_parse_referenceA ldap_parse_reference; - alias ldap_parse_resultA ldap_parse_result; - alias ldap_parse_sort_controlA ldap_parse_sort_control; - alias ldap_parse_vlv_controlA ldap_parse_vlv_control; - alias ldap_searchA ldap_search; - alias ldap_search_sA ldap_search_s; - alias ldap_search_stA ldap_search_st; - alias ldap_search_extA ldap_search_ext; - alias ldap_search_ext_sA ldap_search_ext_s; - alias ldap_search_init_pageA ldap_search_init_page; - alias ldap_err2stringA ldap_err2string; - alias ldap_control_freeA ldap_control_free; - alias ldap_controls_freeA ldap_controls_free; - alias ldap_free_controlsA ldap_free_controls; - alias ldap_memfreeA ldap_memfree; - alias ldap_value_freeA ldap_value_free; - alias ldap_dn2ufnA ldap_dn2ufn; - alias ldap_ufn2dnA ldap_ufn2dn; - alias ldap_explode_dnA ldap_explode_dn; - alias ldap_get_dnA ldap_get_dn; - alias ldap_rename_extA ldap_rename; - alias ldap_rename_ext_sA ldap_rename_s; - alias ldap_rename_extA ldap_rename_ext; - alias ldap_rename_ext_sA ldap_rename_ext_s; - deprecated { - alias ldap_bindA ldap_bind; - alias ldap_bind_sA ldap_bind_s; - alias ldap_modrdnA ldap_modrdn; - alias ldap_modrdn_sA ldap_modrdn_s; - alias ldap_modrdn2A ldap_modrdn2; - alias ldap_modrdn2_sA ldap_modrdn2_s; - } -} diff --git a/3rdparty-extra/win32/winreg.d b/3rdparty-extra/win32/winreg.d deleted file mode 100644 index f39f33036..000000000 --- a/3rdparty-extra/win32/winreg.d +++ /dev/null @@ -1,252 +0,0 @@ -/***********************************************************************\ -* winreg.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.winreg; -version(Windows): -pragma(lib, "advapi32"); - -private import win32.w32api, win32.winbase, win32.windef; - -enum : HKEY { // for some reason, DMD errors if I don't give all the values explicitly - HKEY_CLASSES_ROOT = cast(HKEY) 0x80000000, - HKEY_CURRENT_USER = cast(HKEY) 0x80000001, - HKEY_LOCAL_MACHINE = cast(HKEY) 0x80000002, - HKEY_USERS = cast(HKEY) 0x80000003, - HKEY_PERFORMANCE_DATA = cast(HKEY) 0x80000004, - HKEY_CURRENT_CONFIG = cast(HKEY) 0x80000005, - HKEY_DYN_DATA = cast(HKEY) 0x80000006 -} - -enum : DWORD { - REG_OPTION_NON_VOLATILE, - REG_OPTION_VOLATILE -} - -enum : DWORD { - REG_CREATED_NEW_KEY = 1, - REG_OPENED_EXISTING_KEY -} - -enum : DWORD { - REG_NONE = 0, - REG_SZ, - REG_EXPAND_SZ, - REG_BINARY, - REG_DWORD_LITTLE_ENDIAN, - REG_DWORD = REG_DWORD_LITTLE_ENDIAN, - REG_DWORD_BIG_ENDIAN, - REG_LINK, - REG_MULTI_SZ, - REG_RESOURCE_LIST, - REG_FULL_RESOURCE_DESCRIPTOR, - REG_RESOURCE_REQUIREMENTS_LIST, - REG_QWORD_LITTLE_ENDIAN, - REG_QWORD = REG_QWORD_LITTLE_ENDIAN -} - -const DWORD - REG_NOTIFY_CHANGE_NAME = 1, - REG_NOTIFY_CHANGE_ATTRIBUTES = 2, - REG_NOTIFY_CHANGE_LAST_SET = 4, - REG_NOTIFY_CHANGE_SECURITY = 8; - -alias ACCESS_MASK REGSAM; - -struct VALENTA { - LPSTR ve_valuename; - DWORD ve_valuelen; - DWORD ve_valueptr; - DWORD ve_type; -} -alias VALENTA* PVALENTA; - -struct VALENTW { - LPWSTR ve_valuename; - DWORD ve_valuelen; - DWORD ve_valueptr; - DWORD ve_type; -} -alias VALENTW* PVALENTW; - -// RRF - Registry Routine Flags (for RegGetValue) -static if (_WIN32_WINNT >= 0x600) { - enum : DWORD { - RRF_RT_REG_NONE = 0x00000001, - RRF_RT_REG_SZ = 0x00000002, - RRF_RT_REG_EXPAND_SZ = 0x00000004, - RRF_RT_REG_BINARY = 0x00000008, - RRF_RT_REG_DWORD = 0x00000010, - RRF_RT_REG_MULTI_SZ = 0x00000020, - RRF_RT_REG_QWORD = 0x00000040, - RRF_RT_DWORD = RRF_RT_REG_BINARY | RRF_RT_REG_DWORD, - RRF_RT_QWORD = RRF_RT_REG_BINARY | RRF_RT_REG_QWORD, - RRF_RT_ANY = 0x0000FFFF, - RRF_NOEXPAND = 0x10000000, - RRF_ZEROONFAILURE = 0x20000000 - } -} - -extern (Windows) { - LONG RegCloseKey(HKEY); - LONG RegConnectRegistryA(LPCSTR, HKEY, PHKEY); - LONG RegConnectRegistryW(LPCWSTR, HKEY, PHKEY); - LONG RegCreateKeyExA(HKEY, LPCSTR, DWORD, LPSTR, DWORD, REGSAM, - LPSECURITY_ATTRIBUTES, PHKEY, PDWORD); - LONG RegCreateKeyExW(HKEY, LPCWSTR, DWORD, LPWSTR, DWORD, REGSAM, - LPSECURITY_ATTRIBUTES, PHKEY, PDWORD); - LONG RegDeleteKeyA(HKEY, LPCSTR); - LONG RegDeleteKeyW(HKEY, LPCWSTR); - LONG RegDeleteValueA(HKEY, LPCSTR); - LONG RegDeleteValueW(HKEY, LPCWSTR); - LONG RegEnumKeyExA(HKEY, DWORD, LPSTR, PDWORD, PDWORD, LPSTR, PDWORD, - PFILETIME); - LONG RegEnumKeyExW(HKEY, DWORD, LPWSTR, PDWORD, PDWORD, LPWSTR, PDWORD, - PFILETIME); - LONG RegEnumValueA(HKEY, DWORD, LPSTR, PDWORD, PDWORD, PDWORD, LPBYTE, - PDWORD); - LONG RegEnumValueW(HKEY, DWORD, LPWSTR, PDWORD, PDWORD, PDWORD, LPBYTE, - PDWORD); - LONG RegFlushKey(HKEY); - LONG RegLoadKeyA(HKEY, LPCSTR, LPCSTR); - LONG RegLoadKeyW(HKEY, LPCWSTR, LPCWSTR); - LONG RegOpenKeyExA(HKEY, LPCSTR, DWORD, REGSAM, PHKEY); - LONG RegOpenKeyExW(HKEY, LPCWSTR, DWORD, REGSAM, PHKEY); - LONG RegQueryInfoKeyA(HKEY, LPSTR, PDWORD, PDWORD, PDWORD, PDWORD, - PDWORD, PDWORD, PDWORD, PDWORD, PDWORD, PFILETIME); - LONG RegQueryInfoKeyW(HKEY, LPWSTR, PDWORD, PDWORD, PDWORD, PDWORD, - PDWORD, PDWORD, PDWORD, PDWORD, PDWORD, PFILETIME); - LONG RegQueryMultipleValuesA(HKEY, PVALENTA, DWORD, LPSTR, LPDWORD); - LONG RegQueryMultipleValuesW(HKEY, PVALENTW, DWORD, LPWSTR, LPDWORD); - LONG RegQueryValueExA(HKEY, LPCSTR, LPDWORD, LPDWORD, LPBYTE, LPDWORD); - LONG RegQueryValueExW(HKEY, LPCWSTR, LPDWORD, LPDWORD, LPBYTE, LPDWORD); - LONG RegReplaceKeyA(HKEY, LPCSTR, LPCSTR, LPCSTR); - LONG RegReplaceKeyW(HKEY, LPCWSTR, LPCWSTR, LPCWSTR); - LONG RegSaveKeyA(HKEY, LPCSTR, LPSECURITY_ATTRIBUTES); - LONG RegSaveKeyW(HKEY, LPCWSTR, LPSECURITY_ATTRIBUTES); - LONG RegSetKeySecurity(HKEY, SECURITY_INFORMATION, PSECURITY_DESCRIPTOR); - LONG RegSetValueExA(HKEY, LPCSTR, DWORD, DWORD, const(BYTE)*, DWORD); - LONG RegSetValueExW(HKEY, LPCWSTR, DWORD, DWORD, const(BYTE)*, DWORD); - LONG RegUnLoadKeyA(HKEY, LPCSTR); - LONG RegUnLoadKeyW(HKEY, LPCWSTR); - LONG RegNotifyChangeKeyValue(HKEY, BOOL, DWORD, HANDLE, BOOL); - - BOOL AbortSystemShutdownA(LPCSTR); - BOOL AbortSystemShutdownW(LPCWSTR); - BOOL InitiateSystemShutdownA(LPSTR, LPSTR, DWORD, BOOL, BOOL); - BOOL InitiateSystemShutdownW(LPWSTR, LPWSTR, DWORD, BOOL, BOOL); - LONG RegGetKeySecurity(HKEY, SECURITY_INFORMATION, - PSECURITY_DESCRIPTOR, PDWORD); - LONG RegRestoreKeyA(HKEY, LPCSTR, DWORD); - LONG RegRestoreKeyW(HKEY, LPCWSTR, DWORD); - LONG RegSetKeySecurity(HKEY, SECURITY_INFORMATION, - PSECURITY_DESCRIPTOR); - - static if (_WIN32_WINNT >= 0x500) { - LONG RegDisablePredefinedCache(); - LONG RegOpenCurrentUser(REGSAM, PHKEY); - LONG RegOpenUserClassesRoot(HANDLE, DWORD, REGSAM, PHKEY); - } - - static if (_WIN32_WINNT >= 0x501) { - LONG RegSaveKeyExA(HKEY, LPCSTR, LPSECURITY_ATTRIBUTES, DWORD); - LONG RegSaveKeyExW(HKEY, LPCWSTR, LPSECURITY_ATTRIBUTES, DWORD); - } - - static if (_WIN32_WINNT >= 0x600) { - LONG RegGetValueA(HKEY hkey, LPCSTR lpSubKey, LPCSTR lpValue, - DWORD dwFlags, LPDWORD pdwType, PVOID pvData, LPDWORD pcbData); - LONG RegGetValueW(HKEY hkey, LPCWSTR lpSubKey, LPCWSTR lpValue, - DWORD dwFlags, LPDWORD pdwType, PVOID pvData, LPDWORD pcbData); - } - - deprecated { - LONG RegCreateKeyA(HKEY, LPCSTR, PHKEY); - LONG RegCreateKeyW(HKEY, LPCWSTR, PHKEY); - LONG RegEnumKeyA(HKEY, DWORD, LPSTR, DWORD); - LONG RegEnumKeyW(HKEY, DWORD, LPWSTR, DWORD); - LONG RegOpenKeyA(HKEY, LPCSTR, PHKEY); - LONG RegOpenKeyW(HKEY, LPCWSTR, PHKEY); - LONG RegQueryValueA(HKEY, LPCSTR, LPSTR, PLONG); - LONG RegQueryValueW(HKEY, LPCWSTR, LPWSTR, PLONG); - LONG RegSetValueA(HKEY, LPCSTR, DWORD, LPCSTR, DWORD); - LONG RegSetValueW(HKEY, LPCWSTR, DWORD, LPCWSTR, DWORD); - } -} - -version (Unicode) { - alias VALENTW VALENT; - alias RegConnectRegistryW RegConnectRegistry; - alias RegCreateKeyExW RegCreateKeyEx; - alias RegDeleteKeyW RegDeleteKey; - alias RegDeleteValueW RegDeleteValue; - alias RegEnumKeyExW RegEnumKeyEx; - alias RegEnumValueW RegEnumValue; - alias RegLoadKeyW RegLoadKey; - alias RegOpenKeyExW RegOpenKeyEx; - alias RegQueryInfoKeyW RegQueryInfoKey; - alias RegQueryMultipleValuesW RegQueryMultipleValues; - alias RegQueryValueExW RegQueryValueEx; - alias RegReplaceKeyW RegReplaceKey; - alias RegSaveKeyW RegSaveKey; - alias RegSetValueExW RegSetValueEx; - alias RegUnLoadKeyW RegUnLoadKey; - - alias AbortSystemShutdownW AbortSystemShutdown; - alias InitiateSystemShutdownW InitiateSystemShutdown; - alias RegRestoreKeyW RegRestoreKey; - static if (_WIN32_WINNT >= 0x501) { - alias RegSaveKeyExA RegSaveKeyEx; - } - static if (_WIN32_WINNT >= 0x600) { - alias RegGetValueW RegGetValue; - } - deprecated { - alias RegCreateKeyW RegCreateKey; - alias RegEnumKeyW RegEnumKey; - alias RegOpenKeyW RegOpenKey; - alias RegQueryValueW RegQueryValue; - alias RegSetValueW RegSetValue; - } -} else { - alias VALENTA VALENT; - alias RegConnectRegistryA RegConnectRegistry; - alias RegCreateKeyExA RegCreateKeyEx; - alias RegDeleteKeyA RegDeleteKey; - alias RegDeleteValueA RegDeleteValue; - alias RegEnumKeyExA RegEnumKeyEx; - alias RegEnumValueA RegEnumValue; - alias RegLoadKeyA RegLoadKey; - alias RegOpenKeyExA RegOpenKeyEx; - alias RegQueryInfoKeyA RegQueryInfoKey; - alias RegQueryMultipleValuesA RegQueryMultipleValues; - alias RegQueryValueExA RegQueryValueEx; - alias RegReplaceKeyA RegReplaceKey; - alias RegSaveKeyA RegSaveKey; - alias RegSetValueExA RegSetValueEx; - alias RegUnLoadKeyA RegUnLoadKey; - alias AbortSystemShutdownA AbortSystemShutdown; - alias InitiateSystemShutdownA InitiateSystemShutdown; - alias RegRestoreKeyW RegRestoreKey; - static if (_WIN32_WINNT >= 0x501) { - alias RegSaveKeyExA RegSaveKeyEx; - } - static if (_WIN32_WINNT >= 0x600) { - alias RegGetValueA RegGetValue; - } - deprecated { - alias RegCreateKeyA RegCreateKey; - alias RegEnumKeyA RegEnumKey; - alias RegOpenKeyA RegOpenKey; - alias RegQueryValueA RegQueryValue; - alias RegSetValueA RegSetValue; - } -} - -alias VALENT* PVALENT; diff --git a/3rdparty-extra/win32/winsock.d b/3rdparty-extra/win32/winsock.d deleted file mode 100644 index 9668a9095..000000000 --- a/3rdparty-extra/win32/winsock.d +++ /dev/null @@ -1,584 +0,0 @@ -/***********************************************************************\ -* winsock.d * -* * -* Windows API header module * -* * -* Translated from MinGW Windows headers * -* by Stewart Gordon * -\***********************************************************************/ -module win32.winsock; -version(Windows): - -/* - Definitions for winsock 1.1 - - Portions Copyright (c) 1980, 1983, 1988, 1993 - The Regents of the University of California. All rights reserved. - - Portions Copyright (c) 1993 by Digital Equipment Corporation. - */ - -/* DRK: This module should not be included if -version=Win32_Winsock2 has - * been set. If it has, assert. I think it's better that way than letting - * the user believe that it's worked. - * - * SG: It has now been changed so that winsock2 is the default, and - * -version=Win32_Winsock1 must be set to use winsock. - */ -version(Win32_Winsock1) {} -else { - pragma(msg, "Cannot use win32.winsock without " - ~ "Win32_Winsock1 defined."); - static assert(false); -} - -import win32.windef; - -alias char u_char; -alias ushort u_short; -alias uint u_int, u_long, SOCKET; - -const size_t FD_SETSIZE = 64; - -// shutdown() how types -enum : int { - SD_RECEIVE, - SD_SEND, - SD_BOTH -} - -struct FD_SET { - u_int fd_count; - SOCKET[FD_SETSIZE] fd_array; - - static void opCall(SOCKET fd, FD_SET* set) { - if (set.fd_count < FD_SETSIZE) set.fd_array[set.fd_count++] = fd; - } -} -alias FD_SET* PFD_SET, LPFD_SET; - -extern(Pascal) int __WSAFDIsSet(SOCKET, FD_SET*); -alias __WSAFDIsSet FD_ISSET; - -void FD_CLR(SOCKET fd, FD_SET* set) { - for (u_int i = 0; i < set.fd_count; i++) { - if (set.fd_array[i] == fd) { - while (i < set.fd_count - 1) { - set.fd_array[i] = set.fd_array[i+1]; - i++; - } - set.fd_count--; - break; - } - } -} - -/+void FD_SET(SOCKET fd, FD_SET* set) { - if (set.fd_count < FD_SETSIZE) set.fd_array[set.fd_count++] = fd; -}+/ - -void FD_ZERO(FD_SET* set) { - set.fd_count = 0; -} - - -struct TIMEVAL { - int tv_sec; - int tv_usec; - - int opCmp(TIMEVAL tv) { - if (tv_sec < tv.tv_sec) return -1; - if (tv_sec > tv.tv_sec) return 1; - if (tv_usec < tv.tv_usec) return -1; - if (tv_usec > tv.tv_usec) return 1; - return 0; - } -} -alias TIMEVAL* PTIMEVAL, LPTIMEVAL; - -bool timerisset(TIMEVAL tvp) { - return tvp.tv_sec || tvp.tv_usec; -} - -void timerclear(ref TIMEVAL tvp) { - tvp.tv_sec = tvp.tv_usec = 0; -} - -struct HOSTENT { - char* h_name; - char** h_aliases; - short h_addrtype; - short h_length; - char** h_addr_list; - - char* h_addr() { return h_addr_list[0]; } - char* h_addr(char* h) { return h_addr_list[0] = h; } -} -alias HOSTENT* PHOSTENT, LPHOSTENT; - -struct LINGER { - u_short l_onoff; - u_short l_linger; -} -alias LINGER* PLINGER, LPLINGER; - -// TOTHINKABOUT: do we need these, or are they just for internal use? -/+ -#define IOCPARM_MASK 0x7f -#define IOC_VOID 0x20000000 -#define IOC_OUT 0x40000000 -#define IOC_IN 0x80000000 -#define IOC_INOUT (IOC_IN|IOC_OUT) - -#define _IO(x,y) (IOC_VOID|((x)<<8)|(y)) -#define _IOR(x,y,t) (IOC_OUT|(((int)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y)) -#define _IOW(x,y,t) (IOC_IN|(((int)sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|(y)) - -#define FIONBIO _IOW('f', 126, u_long) -#define FIONREAD _IOR('f', 127, u_long) -#define FIOASYNC _IOW('f', 125, u_long) -#define SIOCSHIWAT _IOW('s', 0, u_long) -#define SIOCGHIWAT _IOR('s', 1, u_long) -#define SIOCSLOWAT _IOW('s', 2, u_long) -#define SIOCGLOWAT _IOR('s', 3, u_long) -#define SIOCATMARK _IOR('s', 7, u_long) -+/ - -enum : DWORD { - FIONBIO = 0x8004667E, - FIONREAD = 0x4004667F, - FIOASYNC = 0x8004667D, - SIOCSHIWAT = 0x80047300, - SIOCGHIWAT = 0x40047301, - SIOCSLOWAT = 0x80047302, - SIOCGLOWAT = 0x40047303, - SIOCATMARK = 0x40047307 -} - -struct netent { - char* n_name; - char** n_aliases; - short n_addrtype; - u_long n_net; -} - -struct SERVENT { - char* s_name; - char** s_aliases; - short s_port; - char* s_proto; -} -alias SERVENT* PSERVENT, LPSERVENT; - -struct PROTOENT { - char* p_name; - char** p_aliases; - short p_proto; -} -alias PROTOENT* PPROTOENT, LPPROTOENT; - -enum : int { - IPPROTO_IP = 0, - IPPROTO_ICMP = 1, - IPPROTO_IGMP = 2, - IPPROTO_GGP = 3, - IPPROTO_TCP = 6, - IPPROTO_PUP = 12, - IPPROTO_UDP = 17, - IPPROTO_IDP = 22, - IPPROTO_ND = 77, - IPPROTO_RAW = 255, - IPPROTO_MAX = 256 -} - -// These are not documented on the MSDN site -enum { - IPPORT_ECHO = 7, - IPPORT_DISCARD = 9, - IPPORT_SYSTAT = 11, - IPPORT_DAYTIME = 13, - IPPORT_NETSTAT = 15, - IPPORT_FTP = 21, - IPPORT_TELNET = 23, - IPPORT_SMTP = 25, - IPPORT_TIMESERVER = 37, - IPPORT_NAMESERVER = 42, - IPPORT_WHOIS = 43, - IPPORT_MTP = 57, - IPPORT_TFTP = 69, - IPPORT_RJE = 77, - IPPORT_FINGER = 79, - IPPORT_TTYLINK = 87, - IPPORT_SUPDUP = 95, - IPPORT_EXECSERVER = 512, - IPPORT_LOGINSERVER = 513, - IPPORT_CMDSERVER = 514, - IPPORT_EFSSERVER = 520, - IPPORT_BIFFUDP = 512, - IPPORT_WHOSERVER = 513, - IPPORT_ROUTESERVER = 520, - IPPORT_RESERVED = 1024 -} - -// These are not documented on the MSDN site -enum { - IMPLINK_IP = 155, - IMPLINK_LOWEXPER = 156, - IMPLINK_HIGHEXPER = 158 -} - -struct IN_ADDR { - union { - struct { u_char s_net, s_host, s_lh, s_impno; } - struct { u_short s_w1, s_imp; } - u_long s_addr; - } -} -alias IN_ADDR* PIN_ADDR, LPIN_ADDR; - -// IN_CLASSx are not used anywhere or documented on MSDN. -bool IN_CLASSA(int i) { - return (i & 0x80000000) == 0; -} - -const IN_CLASSA_NET = 0xff000000; -const IN_CLASSA_NSHIFT = 24; -const IN_CLASSA_HOST = 0x00ffffff; -const IN_CLASSA_MAX = 128; - -bool IN_CLASSB(int i) { - return (i & 0xC0000000) == 0x80000000; -} - -const IN_CLASSB_NET = 0xffff0000; -const IN_CLASSB_NSHIFT = 16; -const IN_CLASSB_HOST = 0x0000ffff; -const IN_CLASSB_MAX = 65536; - -bool IN_CLASSC(int i) { - return (i & 0xE0000000) == 0xC0000000; -} - -const IN_CLASSC_NET = 0xffffff00; -const IN_CLASSC_NSHIFT = 8; -const IN_CLASSC_HOST = 0x000000ff; - -const u_long - INADDR_ANY = 0, - INADDR_LOOPBACK = 0x7F000001, - INADDR_BROADCAST = 0xFFFFFFFF, - INADDR_NONE = 0xFFFFFFFF; - -struct SOCKADDR_IN { - short sin_family; - u_short sin_port; - IN_ADDR sin_addr; - char[8] sin_zero; -} -alias SOCKADDR_IN* PSOCKADDR_IN, LPSOCKADDR_IN; - -const size_t - WSADESCRIPTION_LEN = 256, - WSASYS_STATUS_LEN = 128; - -struct WSADATA { - WORD wVersion; - WORD wHighVersion; - char[WSADESCRIPTION_LEN+1] szDescription; - char[WSASYS_STATUS_LEN+1] szSystemStatus; - ushort iMaxSockets; - ushort iMaxUdpDg; - char* lpVendorInfo; -} -alias WSADATA* LPWSADATA; - -// This is not documented on the MSDN site -const IP_OPTIONS = 1; - -const int - SO_DEBUG = 1, - SO_ACCEPTCONN = 2, - SO_REUSEADDR = 4, - SO_KEEPALIVE = 8, - SO_DONTROUTE = 16, - SO_BROADCAST = 32, - SO_USELOOPBACK = 64, - SO_LINGER = 128, - SO_OOBINLINE = 256, - SO_DONTLINGER = ~SO_LINGER; - -enum : int { - SO_SNDBUF = 0x1001, - SO_RCVBUF, - SO_SNDLOWAT, - SO_RCVLOWAT, - SO_SNDTIMEO, - SO_RCVTIMEO, - SO_ERROR, - SO_TYPE // = 0x1008 -} - -/* - * Note that the next 5 IP defines are specific to WinSock 1.1 (wsock32.dll). - * They will cause errors or unexpected results if used with the - * (gs)etsockopts exported from the WinSock 2 lib, ws2_32.dll. Refer ws2tcpip.h. - */ -enum : int { - IP_MULTICAST_IF = 2, - IP_MULTICAST_TTL, - IP_MULTICAST_LOOP, - IP_ADD_MEMBERSHIP, - IP_DROP_MEMBERSHIP -} - -// These are not documented on the MSDN site -const IP_DEFAULT_MULTICAST_TTL = 1; -const IP_DEFAULT_MULTICAST_LOOP = 1; -const IP_MAX_MEMBERSHIPS = 20; - -struct ip_mreq { - IN_ADDR imr_multiaddr; - IN_ADDR imr_interface; -} - -const SOCKET INVALID_SOCKET = uint.max; -const int SOCKET_ERROR = -1; - -enum : int { - SOCK_STREAM = 1, - SOCK_DGRAM, - SOCK_RAW, - SOCK_RDM, - SOCK_SEQPACKET -} - -const int TCP_NODELAY = 1; - -enum : int { - AF_UNSPEC, - AF_UNIX, - AF_INET, - AF_IMPLINK, - AF_PUP, - AF_CHAOS, - AF_IPX, // = 6 - AF_NS = 6, - AF_ISO, - AF_OSI = AF_ISO, - AF_ECMA, - AF_DATAKIT, - AF_CCITT, - AF_SNA, - AF_DECnet, - AF_DLI, - AF_LAT, - AF_HYLINK, - AF_APPLETALK, - AF_NETBIOS, - AF_VOICEVIEW, - AF_FIREFOX, - AF_UNKNOWN1, - AF_BAN, - AF_ATM, - AF_INET6, - AF_MAX // = 24 -} - -struct SOCKADDR { - u_short sa_family; - char[14] sa_data; -} -alias SOCKADDR* PSOCKADDR, LPSOCKADDR; - -struct sockproto { - u_short sp_family; - u_short sp_protocol; -} - -enum : int { - PF_UNSPEC = AF_UNSPEC, - PF_UNIX = AF_UNIX, - PF_INET = AF_INET, - PF_IMPLINK = AF_IMPLINK, - PF_PUP = AF_PUP, - PF_CHAOS = AF_CHAOS, - PF_NS = AF_NS, - PF_IPX = AF_IPX, - PF_ISO = AF_ISO, - PF_OSI = AF_OSI, - PF_ECMA = AF_ECMA, - PF_DATAKIT = AF_DATAKIT, - PF_CCITT = AF_CCITT, - PF_SNA = AF_SNA, - PF_DECnet = AF_DECnet, - PF_DLI = AF_DLI, - PF_LAT = AF_LAT, - PF_HYLINK = AF_HYLINK, - PF_APPLETALK = AF_APPLETALK, - PF_VOICEVIEW = AF_VOICEVIEW, - PF_FIREFOX = AF_FIREFOX, - PF_UNKNOWN1 = AF_UNKNOWN1, - PF_BAN = AF_BAN, - PF_ATM = AF_ATM, - PF_INET6 = AF_INET6, - PF_MAX = AF_MAX -} - -const int SOL_SOCKET = 0xFFFF; - -const int SOMAXCONN = 5; - -const int - MSG_OOB = 1, - MSG_PEEK = 2, - MSG_DONTROUTE = 4, - MSG_MAXIOVLEN = 16, - MSG_PARTIAL = 0x8000; - -const size_t MAXGETHOSTSTRUCT = 1024; - -const int - FD_READ = 1, - FD_WRITE = 2, - FD_OOB = 4, - FD_ACCEPT = 8, - FD_CONNECT = 16, - FD_CLOSE = 32; - -enum : int { - WSABASEERR = 10000, - WSAEINTR = 10004, - WSAEBADF = 10009, - WSAEACCES = 10013, - WSAEFAULT = 10014, - WSAEINVAL = 10022, - WSAEMFILE = 10024, - WSAEWOULDBLOCK = 10035, - WSAEINPROGRESS = 10036, - WSAEALREADY = 10037, - WSAENOTSOCK = 10038, - WSAEDESTADDRREQ = 10039, - WSAEMSGSIZE = 10040, - WSAEPROTOTYPE = 10041, - WSAENOPROTOOPT = 10042, - WSAEPROTONOSUPPORT = 10043, - WSAESOCKTNOSUPPORT = 10044, - WSAEOPNOTSUPP = 10045, - WSAEPFNOSUPPORT = 10046, - WSAEAFNOSUPPORT = 10047, - WSAEADDRINUSE = 10048, - WSAEADDRNOTAVAIL = 10049, - WSAENETDOWN = 10050, - WSAENETUNREACH = 10051, - WSAENETRESET = 10052, - WSAECONNABORTED = 10053, - WSAECONNRESET = 10054, - WSAENOBUFS = 10055, - WSAEISCONN = 10056, - WSAENOTCONN = 10057, - WSAESHUTDOWN = 10058, - WSAETOOMANYREFS = 10059, - WSAETIMEDOUT = 10060, - WSAECONNREFUSED = 10061, - WSAELOOP = 10062, - WSAENAMETOOLONG = 10063, - WSAEHOSTDOWN = 10064, - WSAEHOSTUNREACH = 10065, - WSAENOTEMPTY = 10066, - WSAEPROCLIM = 10067, - WSAEUSERS = 10068, - WSAEDQUOT = 10069, - WSAESTALE = 10070, - WSAEREMOTE = 10071, - WSAEDISCON = 10101, - WSASYSNOTREADY = 10091, - WSAVERNOTSUPPORTED = 10092, - WSANOTINITIALISED = 10093, - WSAHOST_NOT_FOUND = 11001, - WSATRY_AGAIN = 11002, - WSANO_RECOVERY = 11003, - WSANO_DATA = 11004, - WSANO_ADDRESS = WSANO_DATA -} - -alias WSAGetLastError h_errno; - -enum : int { - HOST_NOT_FOUND = WSAHOST_NOT_FOUND, - TRY_AGAIN = WSATRY_AGAIN, - NO_RECOVERY = WSANO_RECOVERY, - NO_DATA = WSANO_DATA, - NO_ADDRESS = WSANO_ADDRESS -} - -extern (Pascal) { - SOCKET accept(SOCKET, SOCKADDR*, int*); - int bind(SOCKET, const(SOCKADDR)*, int); - int closesocket(SOCKET); - int connect(SOCKET, const(SOCKADDR)*, int); - int ioctlsocket(SOCKET, int, u_long*); - int getpeername(SOCKET, SOCKADDR*, int*); - int getsockname(SOCKET, SOCKADDR*, int*); - int getsockopt(SOCKET, int, int, char*, int*); - uint inet_addr(const(char)*); - int listen(SOCKET, int); - int recv(SOCKET, char*, int, int); - int recvfrom(SOCKET, char*, int, int, SOCKADDR*, int*); - int send(SOCKET, const(char)*, int, int); - int sendto(SOCKET, const(char)*, int, int, const(SOCKADDR)*, int); - int setsockopt(SOCKET, int, int, const(char)*, int); - int shutdown(SOCKET, int); - SOCKET socket(int, int, int); - int WSAStartup(WORD, LPWSADATA); - int WSACleanup(); - void WSASetLastError(int); - int WSAGetLastError(); - BOOL WSAIsBlocking(); - int WSAUnhookBlockingHook(); - FARPROC WSASetBlockingHook(FARPROC); - int WSACancelBlockingCall(); - HANDLE WSAAsyncGetServByName(HWND, u_int, const(char)*, const(char)*, char*, int); - HANDLE WSAAsyncGetServByPort(HWND, u_int, int, const(char)*, char*, int); - HANDLE WSAAsyncGetProtoByName(HWND, u_int, const(char)*, char*, int); - HANDLE WSAAsyncGetProtoByNumber(HWND, u_int, int, char*, int); - HANDLE WSAAsyncGetHostByName(HWND, u_int, const(char)*, char*, int); - HANDLE WSAAsyncGetHostByAddr(HWND, u_int, const(char)*, int, int, char*, int); - int WSACancelAsyncRequest(HANDLE); - int WSAAsyncSelect(SOCKET, HWND, u_int, int); - u_long htonl(u_long); - u_long ntohl(u_long); - u_short htons(u_short); - u_short ntohs(u_short); - int select(int nfds, FD_SET*, FD_SET*, FD_SET*, const(TIMEVAL)*); - int gethostname(char*, int); -} - -extern (Windows) { - char* inet_ntoa(IN_ADDR); - HOSTENT* gethostbyaddr(const(char)*, int, int); - HOSTENT* gethostbyname(const(char)*); - SERVENT* getservbyport(int, const(char)*); - SERVENT* getservbyname(const(char)*, const(char)*); - PROTOENT* getprotobynumber(int); - PROTOENT* getprotobyname(const(char)*); -} - -alias MAKELONG WSAMAKEASYNCREPLY, WSAMAKESELECTREPLY; -alias LOWORD WSAGETASYNCBUFLEN, WSAGETSELECTEVENT; -alias HIWORD WSAGETASYNCERROR, WSAGETSELECTERROR; - - -/* - * Recent MSDN docs indicate that the MS-specific extensions exported from - * mswsock.dll (AcceptEx, TransmitFile. WSARecEx and GetAcceptExSockaddrs) are - * declared in mswsock.h. These extensions are not supported on W9x or WinCE. - * However, code using WinSock 1.1 API may expect the declarations and - * associated defines to be in this header. Thus we include mswsock.h here. - * - * When linking against the WinSock 1.1 lib, wsock32.dll, the mswsock functions - * are automatically routed to mswsock.dll (on platforms with support). - * The WinSock 2 lib, ws2_32.dll, does not contain any references to - * the mswsock extensions. - */ - -import win32.mswsock; diff --git a/3rdparty-extra/win32/wtsapi32.d b/3rdparty-extra/win32/wtsapi32.d deleted file mode 100644 index 87e0daf85..000000000 --- a/3rdparty-extra/win32/wtsapi32.d +++ /dev/null @@ -1,430 +0,0 @@ -/***********************************************************************\ -* wtsapi32.d * -* * -* Windows API header module * -* * -* Translated from MinGW-w64 API * -* * -* Placed into public domain * -\***********************************************************************/ -module win32.wtsapi32; -version(Windows): -pragma(lib, "wtsapi32"); -private import win32.w32api; -import win32.windef; - -enum { - WTS_CURRENT_SERVER = null, - WTS_CURRENT_SERVER_HANDLE = null, - WTS_CURRENT_SERVER_NAME = null -} - -enum DWORD WTS_CURRENT_SESSION = cast(DWORD) -1; - -enum { - IDTIMEOUT = 32000, - IDASYNC = 32001 -} - -enum { - WTS_WSD_LOGOFF = 0x01, - WTS_WSD_SHUTDOWN = 0x02, - WTS_WSD_REBOOT = 0x04, - WTS_WSD_POWEROFF = 0x08, - WTS_WSD_FASTREBOOT = 0x10 -} - -enum WTS_CONNECTSTATE_CLASS { - WTSActive, - WTSConnected, - WTSConnectQuery, - WTSShadow, - WTSDisconnected, - WTSIdle, - WTSListen, - WTSReset, - WTSDown, - WTSInit -} - -struct WTS_SERVER_INFOW { - LPWSTR pServerName; -} -alias WTS_SERVER_INFOW* PWTS_SERVER_INFOW; - -struct WTS_SERVER_INFOA { - LPSTR pServerName; -} -alias WTS_SERVER_INFOA* PWTS_SERVER_INFOA; - -version(Unicode) { - alias WTS_SERVER_INFOW WTS_SERVER_INFO; - alias PWTS_SERVER_INFOW PWTS_SERVER_INFO; -} else { - alias WTS_SERVER_INFOA WTS_SERVER_INFO; - alias PWTS_SERVER_INFOA PWTS_SERVER_INFO; -} - -struct WTS_SESSION_INFOW { - DWORD SessionId; - LPWSTR pWinStationName; - WTS_CONNECTSTATE_CLASS State; -} -alias WTS_SESSION_INFOW* PWTS_SESSION_INFOW; - -struct WTS_SESSION_INFOA { - DWORD SessionId; - LPSTR pWinStationName; - WTS_CONNECTSTATE_CLASS State; -} -alias WTS_SESSION_INFOA* PWTS_SESSION_INFOA; - -version(Unicode) { - alias WTS_SESSION_INFOW WTS_SESSION_INFO; - alias PWTS_SESSION_INFOW PWTS_SESSION_INFO; -} else { - alias WTS_SESSION_INFOA WTS_SESSION_INFO; - alias PWTS_SESSION_INFOA PWTS_SESSION_INFO; -} - -struct WTS_PROCESS_INFOW { - DWORD SessionId; - DWORD ProcessId; - LPWSTR pProcessName; - PSID pUserSid; -} -alias WTS_PROCESS_INFOW* PWTS_PROCESS_INFOW; - -struct WTS_PROCESS_INFOA { - DWORD SessionId; - DWORD ProcessId; - LPSTR pProcessName; - PSID pUserSid; -} -alias WTS_PROCESS_INFOA* PWTS_PROCESS_INFOA; - -version(Unicode) { - alias WTS_PROCESS_INFOW WTS_PROCESS_INFO; - alias PWTS_PROCESS_INFOW PWTS_PROCESS_INFO; -} else { - alias WTS_PROCESS_INFOA WTS_PROCESS_INFO; - alias PWTS_PROCESS_INFOA PWTS_PROCESS_INFO; -} - -enum { - WTS_PROTOCOL_TYPE_CONSOLE, - WTS_PROTOCOL_TYPE_ICA, - WTS_PROTOCOL_TYPE_RDP -} - -enum WTS_INFO_CLASS { - WTSInitialProgram, - WTSApplicationName, - WTSWorkingDirectory, - WTSOEMId, - WTSSessionId, - WTSUserName, - WTSWinStationName, - WTSDomainName, - WTSConnectState, - WTSClientBuildNumber, - WTSClientName, - WTSClientDirectory, - WTSClientProductId, - WTSClientHardwareId, - WTSClientAddress, - WTSClientDisplay, - WTSClientProtocolType, - WTSIdleTime, - WTSLogonTime, - WTSIncomingBytes, - WTSOutgoingBytes, - WTSIncomingFrames, - WTSOutgoingFrames, - WTSClientInfo, - WTSSessionInfo, // = 24 -} - -struct WTS_CLIENT_ADDRESS { - DWORD AddressFamily; - BYTE[20] Address; -} -alias WTS_CLIENT_ADDRESS* PWTS_CLIENT_ADDRESS; - -struct WTS_CLIENT_DISPLAY { - DWORD HorizontalResolution; - DWORD VerticalResolution; - DWORD ColorDepth; -} -alias WTS_CLIENT_DISPLAY* PWTS_CLIENT_DISPLAY; - -enum WTS_CONFIG_CLASS { - WTSUserConfigInitialProgram, - WTSUserConfigWorkingDirectory, - WTSUserConfigfInheritInitialProgram, - WTSUserConfigfAllowLogonTerminalServer, - WTSUserConfigTimeoutSettingsConnections, - WTSUserConfigTimeoutSettingsDisconnections, - WTSUserConfigTimeoutSettingsIdle, - WTSUserConfigfDeviceClientDrives, - WTSUserConfigfDeviceClientPrinters, - WTSUserConfigfDeviceClientDefaultPrinter, - WTSUserConfigBrokenTimeoutSettings, - WTSUserConfigReconnectSettings, - WTSUserConfigModemCallbackSettings, - WTSUserConfigModemCallbackPhoneNumber, - WTSUserConfigShadowingSettings, - WTSUserConfigTerminalServerProfilePath, - WTSUserConfigTerminalServerHomeDir, - WTSUserConfigTerminalServerHomeDirDrive, - WTSUserConfigfTerminalServerRemoteHomeDir -} - -enum { - WTS_EVENT_NONE = 0x0, - WTS_EVENT_CREATE = 0x1, - WTS_EVENT_DELETE = 0x2, - WTS_EVENT_RENAME = 0x4, - WTS_EVENT_CONNECT = 0x8, - WTS_EVENT_DISCONNECT = 0x10, - WTS_EVENT_LOGON = 0x20, - WTS_EVENT_LOGOFF = 0x40, - WTS_EVENT_STATECHANGE = 0x80, - WTS_EVENT_LICENSE = 0x100, - WTS_EVENT_ALL = 0x7fffffff, - WTS_EVENT_FLUSH = 0x80000000 -} - -enum WTS_VIRTUAL_CLASS { - WTSVirtualClientData, - WTSVirtualFileHandle -} - -version(Unicode) { - alias WTSEnumerateServersW WTSEnumerateServers; - alias WTSOpenServerW WTSOpenServer; - alias WTSEnumerateSessionsW WTSEnumerateSessions; - alias WTSEnumerateProcessesW WTSEnumerateProcesses; - alias WTSQuerySessionInformationW WTSQuerySessionInformation; - alias WTSQueryUserConfigW WTSQueryUserConfig; - alias WTSSetUserConfigW WTSSetUserConfig; - alias WTSSendMessageW WTSSendMessage; -} else { - alias WTSEnumerateServersA WTSEnumerateServers; - alias WTSOpenServerA WTSOpenServer; - alias WTSEnumerateSessionsA WTSEnumerateSessions; - alias WTSEnumerateProcessesA WTSEnumerateProcesses; - alias WTSQuerySessionInformationA WTSQuerySessionInformation; - alias WTSQueryUserConfigA WTSQueryUserConfig; - alias WTSSetUserConfigA WTSSetUserConfig; - alias WTSSendMessageA WTSSendMessage; -} - -extern(Windows) { - WINBOOL WTSEnumerateServersW(LPWSTR pDomainName, DWORD Reserved, DWORD Version, PWTS_SERVER_INFOW* ppServerInfo, DWORD* pCount); - WINBOOL WTSEnumerateServersA(LPSTR pDomainName, DWORD Reserved, DWORD Version, PWTS_SERVER_INFOA* ppServerInfo, DWORD* pCount); - HANDLE WTSOpenServerW(LPWSTR pServerName); - HANDLE WTSOpenServerA(LPSTR pServerName); - VOID WTSCloseServer(HANDLE hServer); - WINBOOL WTSEnumerateSessionsW(HANDLE hServer, DWORD Reserved, DWORD Version, PWTS_SESSION_INFOW* ppSessionInfo, DWORD* pCount); - WINBOOL WTSEnumerateSessionsA(HANDLE hServer, DWORD Reserved, DWORD Version, PWTS_SESSION_INFOA* ppSessionInfo, DWORD* pCount); - WINBOOL WTSEnumerateProcessesW(HANDLE hServer, DWORD Reserved, DWORD Version, PWTS_PROCESS_INFOW* ppProcessInfo, DWORD* pCount); - WINBOOL WTSEnumerateProcessesA(HANDLE hServer, DWORD Reserved, DWORD Version, PWTS_PROCESS_INFOA* ppProcessInfo, DWORD* pCount); - WINBOOL WTSTerminateProcess(HANDLE hServer, DWORD ProcessId, DWORD ExitCode); - WINBOOL WTSQuerySessionInformationW(HANDLE hServer, DWORD SessionId, WTS_INFO_CLASS WTSInfoClass, LPWSTR* ppBuffer, DWORD* pBytesReturned); - WINBOOL WTSQuerySessionInformationA(HANDLE hServer, DWORD SessionId, WTS_INFO_CLASS WTSInfoClass, LPSTR* ppBuffer, DWORD* pBytesReturned); - WINBOOL WTSQueryUserConfigW(LPWSTR pServerName, LPWSTR pUserName, WTS_CONFIG_CLASS WTSConfigClass, LPWSTR* ppBuffer, DWORD* pBytesReturned); - WINBOOL WTSQueryUserConfigA(LPSTR pServerName, LPSTR pUserName, WTS_CONFIG_CLASS WTSConfigClass, LPSTR* ppBuffer, DWORD* pBytesReturned); - WINBOOL WTSSetUserConfigW(LPWSTR pServerName, LPWSTR pUserName, WTS_CONFIG_CLASS WTSConfigClass, LPWSTR pBuffer, DWORD DataLength); - WINBOOL WTSSetUserConfigA(LPSTR pServerName, LPSTR pUserName, WTS_CONFIG_CLASS WTSConfigClass, LPSTR pBuffer, DWORD DataLength); - WINBOOL WTSSendMessageW(HANDLE hServer, DWORD SessionId, LPWSTR pTitle, DWORD TitleLength, LPWSTR pMessage, DWORD MessageLength, DWORD Style, DWORD Timeout, DWORD* pResponse, WINBOOL bWait); - WINBOOL WTSSendMessageA(HANDLE hServer, DWORD SessionId, LPSTR pTitle, DWORD TitleLength, LPSTR pMessage, DWORD MessageLength, DWORD Style, DWORD Timeout, DWORD* pResponse, WINBOOL bWait); - WINBOOL WTSDisconnectSession(HANDLE hServer, DWORD SessionId, WINBOOL bWait); - WINBOOL WTSLogoffSession(HANDLE hServer, DWORD SessionId, WINBOOL bWait); - WINBOOL WTSShutdownSystem(HANDLE hServer, DWORD ShutdownFlag); - WINBOOL WTSWaitSystemEvent(HANDLE hServer, DWORD EventMask, DWORD* pEventFlags); - HANDLE WTSVirtualChannelOpen(HANDLE hServer, DWORD SessionId, LPSTR pVirtualName); - WINBOOL WTSVirtualChannelClose(HANDLE hChannelHandle); - WINBOOL WTSVirtualChannelRead(HANDLE hChannelHandle, ULONG TimeOut, PCHAR Buffer, ULONG BufferSize, PULONG pBytesRead); - WINBOOL WTSVirtualChannelWrite(HANDLE hChannelHandle, PCHAR Buffer, ULONG Length, PULONG pBytesWritten); - WINBOOL WTSVirtualChannelPurgeInput(HANDLE hChannelHandle); - WINBOOL WTSVirtualChannelPurgeOutput(HANDLE hChannelHandle); - WINBOOL WTSVirtualChannelQuery(HANDLE hChannelHandle, WTS_VIRTUAL_CLASS, PVOID* ppBuffer, DWORD* pBytesReturned); - VOID WTSFreeMemory(PVOID pMemory); - - WINBOOL WTSRegisterSessionNotification(HWND hWnd, DWORD dwFlags); - WINBOOL WTSUnRegisterSessionNotification(HWND hWnd); - WINBOOL WTSQueryUserToken(ULONG SessionId, PHANDLE phToken); -} - -enum { - NOTIFY_FOR_ALL_SESSIONS = 1, - NOTIFY_FOR_THIS_SESSION = 0 -} - -enum { - USERNAME_LENGTH = 20, - CLIENTNAME_LENGTH = 20, - CLIENTADDRESS_LENGTH = 30, - WINSTATIONNAME_LENGTH = 32, - DOMAIN_LENGTH = 17 -} - -static if (_WIN32_WINNT >= 0x600) { - struct WTSCLIENTW { - WCHAR ClientName[CLIENTNAME_LENGTH + 1]; - WCHAR Domain[DOMAIN_LENGTH + 1]; - WCHAR UserName[USERNAME_LENGTH + 1]; - WCHAR WorkDirectory[MAX_PATH + 1]; - WCHAR InitialProgram[MAX_PATH + 1]; - BYTE EncryptionLevel; - ULONG ClientAddressFamily; - USHORT ClientAddress[CLIENTADDRESS_LENGTH + 1]; - USHORT HRes; - USHORT VRes; - USHORT ColorDepth; - WCHAR ClientDirectory[MAX_PATH + 1]; - ULONG ClientBuildNumber; - ULONG ClientHardwareId; - USHORT ClientProductId; - USHORT OutBufCountHost; - USHORT OutBufCountClient; - USHORT OutBufLength; - WCHAR DeviceId[MAX_PATH + 1]; - } - alias WTSCLIENTW* PWTSCLIENTW; - - struct WTSCLIENTA { - CHAR ClientName[CLIENTNAME_LENGTH + 1]; - CHAR Domain[DOMAIN_LENGTH + 1 ]; - CHAR UserName[USERNAME_LENGTH + 1]; - CHAR WorkDirectory[MAX_PATH + 1]; - CHAR InitialProgram[MAX_PATH + 1]; - BYTE EncryptionLevel; - ULONG ClientAddressFamily; - USHORT ClientAddress[CLIENTADDRESS_LENGTH + 1]; - USHORT HRes; - USHORT VRes; - USHORT ColorDepth; - CHAR ClientDirectory[MAX_PATH + 1]; - ULONG ClientBuildNumber; - ULONG ClientHardwareId; - USHORT ClientProductId; - USHORT OutBufCountHost; - USHORT OutBufCountClient; - USHORT OutBufLength; - CHAR DeviceId[MAX_PATH + 1]; - } - alias WTSCLIENTA* PWTSCLIENTA; - - version(Unicode) { - alias WTSCLIENTW WTSCLIENT; - alias PWTSCLIENTW PWTSCLIENT; - } else { - alias WTSCLIENTA WTSCLIENT; - alias PWTSCLIENTA PWTSCLIENT; - } - - struct WTSINFOW { - WTS_CONNECTSTATE_CLASS State; - DWORD SessionId; - DWORD IncomingBytes; - DWORD OutgoingBytes; - DWORD IncomingCompressedBytes; - DWORD OutgoingCompressedBytes; - WCHAR[WINSTATIONNAME_LENGTH] WinStationName; - WCHAR[DOMAIN_LENGTH] Domain; - WCHAR UserName[USERNAME_LENGTH+1]; - LARGE_INTEGER ConnectTime; - LARGE_INTEGER DisconnectTime; - LARGE_INTEGER LastInputTime; - LARGE_INTEGER LogonTime; - LARGE_INTEGER CurrentTime; - } - alias WTSINFOW* PWTSINFOW; - - struct WTSINFOA { - WTS_CONNECTSTATE_CLASS State; - DWORD SessionId; - DWORD IncomingBytes; - DWORD OutgoingBytes; - DWORD IncomingCompressedBytes; - DWORD OutgoingCompressedBytes; - CHAR[WINSTATIONNAME_LENGTH] WinStationName; - CHAR[DOMAIN_LENGTH] Domain; - CHAR UserName[USERNAME_LENGTH+1]; - LARGE_INTEGER ConnectTime; - LARGE_INTEGER DisconnectTime; - LARGE_INTEGER LastInputTime; - LARGE_INTEGER LogonTime; - LARGE_INTEGER CurrentTime; - } - alias WTSINFOA* PWTSINFOA; - - version(Unicode) { - alias WTSINFOW WTSINFO; - alias PWTSINFOW PWTSINFO; - } else { - alias WTSINFOA WTSINFO; - alias PWTSINFOA PWTSINFO; - } - - extern(Windows) { - WINBOOL WTSConnectSessionA( - ULONG LogonId, - ULONG TargetLogonId, - PSTR pPassword, - WINBOOL bWait - ); - - WINBOOL WTSConnectSessionW( - ULONG LogonId, - ULONG TargetLogonId, - PWSTR pPassword, - WINBOOL bWait - ); - - WINBOOL WTSRegisterSessionNotificationEx( - HANDLE hServer, - HWND hWnd, - DWORD dwFlags - ); - - WINBOOL WTSStartRemoteControlSessionA( - LPSTR pTargetServerName, - ULONG TargetLogonId, - BYTE HotkeyVk, - USHORT HotkeyModifiers - ); - - WINBOOL WTSStartRemoteControlSessionW( - LPWSTR pTargetServerName, - ULONG TargetLogonId, - BYTE HotkeyVk, - USHORT HotkeyModifiers - ); - - version(Unicode) { - alias WTSStartRemoteControlSessionW WTSStartRemoteControlSession; - alias WTSConnectSessionW WTSConnectSession; - } else { - alias WTSStartRemoteControlSessionA WTSStartRemoteControlSession; - alias WTSConnectSessionA WTSConnectSession; - } - - WINBOOL WTSStopRemoteControlSession( - ULONG LogonId - ); - - WINBOOL WTSUnRegisterSessionNotificationEx( - HANDLE hServer, - HWND hWnd - ); - - HANDLE WTSVirtualChannelOpenEx( - DWORD SessionId, - LPSTR pVirtualName, - DWORD flags - ); - } /* extern(Windows) */ -} /* static if (_WIN32_WINNT >= 0x600) */