1 /** 2 * Windows API header module 3 * 4 * Translated from MinGW Windows headers 5 * 6 * Authors: Stewart Gordon 7 * License: $(LINK2 http://www.boost.org/LICENSE_1_0.txt, Boost License 1.0) 8 * Source: $(DRUNTIMESRC core/sys/windows/_nddeapi.d) 9 */ 10 /// Automatically imported and edited from the druntime module 11 /// core.sys.windows.nddeapi for the auto-generated win32 package. 12 module win32.nddeapi; 13 //version (Windows): 14 @system: 15 16 version (ANSI) {} else version = Unicode; 17 18 import win32.windef; 19 20 // FIXME: check types and grouping of constants 21 22 /+ 23 #ifndef CNLEN /* also in lmcons.h */ 24 #define CNLEN 15 25 #define UNCLEN (CNLEN + 2) 26 #endif 27 +/ 28 29 enum char SEP_CHAR = ','; 30 const char[] BAR_CHAR = "|"; 31 enum wchar SEP_WCHAR = ','; 32 const wchar[] BAR_WCHAR = "|"; 33 34 enum { 35 NDDE_NO_ERROR, 36 NDDE_ACCESS_DENIED, 37 NDDE_BUF_TOO_SMALL, 38 NDDE_ERROR_MORE_DATA, 39 NDDE_INVALID_SERVER, 40 NDDE_INVALID_SHARE, 41 NDDE_INVALID_PARAMETER, 42 NDDE_INVALID_LEVEL, 43 NDDE_INVALID_PASSWORD, 44 NDDE_INVALID_ITEMNAME, 45 NDDE_INVALID_TOPIC, 46 NDDE_INTERNAL_ERROR, 47 NDDE_OUT_OF_MEMORY, 48 NDDE_INVALID_APPNAME, 49 NDDE_NOT_IMPLEMENTED, 50 NDDE_SHARE_ALREADY_EXIST, 51 NDDE_SHARE_NOT_EXIST, 52 NDDE_INVALID_FILENAME, 53 NDDE_NOT_RUNNING, 54 NDDE_INVALID_WINDOW, 55 NDDE_INVALID_SESSION, 56 NDDE_INVALID_ITEM_LIST, 57 NDDE_SHARE_DATA_CORRUPTED, 58 NDDE_REGISTRY_ERROR, 59 NDDE_CANT_ACCESS_SERVER, 60 NDDE_INVALID_SPECIAL_COMMAND, 61 NDDE_INVALID_SECURITY_DESC, 62 NDDE_TRUST_SHARE_FAIL 63 } 64 65 enum size_t 66 MAX_NDDESHARENAME = 256, 67 MAX_DOMAINNAME = 15, 68 MAX_USERNAME = 15, 69 MAX_APPNAME = 255, 70 MAX_TOPICNAME = 255, 71 MAX_ITEMNAME = 255; 72 73 enum NDDEF_NOPASSWORDPROMPT = 1; 74 enum NDDEF_NOCACHELOOKUP = 2; 75 enum NDDEF_STRIP_NDDE = 4; 76 77 enum SHARE_TYPE_OLD = 1; 78 enum SHARE_TYPE_NEW = 2; 79 enum SHARE_TYPE_STATIC = 4; 80 81 enum uint 82 NDDE_CMD_SHOW_MASK = 0x0000FFFF, 83 NDDE_TRUST_CMD_SHOW = 0x10000000, 84 NDDE_TRUST_SHARE_DEL = 0x20000000, 85 NDDE_TRUST_SHARE_INIT = 0x40000000, 86 NDDE_TRUST_SHARE_START = 0x80000000; 87 88 struct NDdeShareInfo_tag { 89 LONG lRevision; 90 LPTSTR lpszShareName; 91 LONG lShareType; 92 LPTSTR lpszAppTopicList; 93 LONG fSharedFlag; 94 LONG fService; 95 LONG fStartAppFlag; 96 LONG nCmdShow; 97 LONG[2] qModifyId; 98 LONG cNumItems; 99 LPTSTR lpszItemList; 100 } 101 extern (C) { // huh? 102 NDdeShareInfo_tag NDDESHAREINFO; 103 NDdeShareInfo_tag* PNDDESHAREINFO; 104 } 105 106 extern (Windows) { 107 UINT NDdeGetErrorStringA(UINT, LPSTR, DWORD); 108 UINT NDdeGetErrorStringW(UINT, LPWSTR, DWORD); 109 UINT NDdeGetShareSecurityA(LPSTR, LPSTR, SECURITY_INFORMATION, 110 PSECURITY_DESCRIPTOR, DWORD, PDWORD); 111 UINT NDdeGetShareSecurityW(LPWSTR, LPWSTR, SECURITY_INFORMATION, 112 PSECURITY_DESCRIPTOR, DWORD, PDWORD); 113 UINT NDdeGetTrustedShareA(LPSTR, LPSTR, PDWORD, PDWORD, PDWORD); 114 UINT NDdeGetTrustedShareW(LPWSTR, LPWSTR, PDWORD, PDWORD, PDWORD); 115 BOOL NDdeIsValidShareNameA(LPSTR); 116 BOOL NDdeIsValidShareNameW(LPWSTR); 117 BOOL NDdeIsValidAppTopicListA(LPSTR); 118 BOOL NDdeIsValidAppTopicListW(LPWSTR); 119 UINT NDdeSetShareSecurityA(LPSTR, LPSTR, SECURITY_INFORMATION, 120 PSECURITY_DESCRIPTOR); 121 UINT NDdeSetShareSecurityW(LPWSTR, LPWSTR, SECURITY_INFORMATION, 122 PSECURITY_DESCRIPTOR); 123 UINT NDdeSetTrustedShareA(LPSTR, LPSTR, DWORD); 124 UINT NDdeSetTrustedShareW(LPWSTR, LPWSTR, DWORD); 125 UINT NDdeShareAddA(LPSTR, UINT, PSECURITY_DESCRIPTOR, PBYTE, DWORD); 126 UINT NDdeShareAddW(LPWSTR, UINT, PSECURITY_DESCRIPTOR, PBYTE, DWORD); 127 UINT NDdeShareDelA(LPSTR, LPSTR, UINT); 128 UINT NDdeShareDelW(LPWSTR, LPWSTR, UINT); 129 UINT NDdeShareEnumA(LPSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); 130 UINT NDdeShareEnumW(LPWSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); 131 UINT NDdeShareGetInfoA(LPSTR, LPSTR, UINT, PBYTE, DWORD, PDWORD, PWORD); 132 UINT NDdeShareGetInfoW(LPWSTR, LPWSTR, UINT, PBYTE, DWORD, PDWORD, PWORD); 133 UINT NDdeShareSetInfoA(LPSTR, LPSTR, UINT, PBYTE, DWORD, WORD); 134 UINT NDdeShareSetInfoW(LPWSTR, LPWSTR, UINT, PBYTE, DWORD, WORD); 135 UINT NDdeTrustedShareEnumA(LPSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); 136 UINT NDdeTrustedShareEnumW(LPWSTR, UINT, PBYTE, DWORD, PDWORD, PDWORD); 137 } 138 139 version (Unicode) { 140 alias NDdeShareAddW NDdeShareAdd; 141 alias NDdeShareDelW NDdeShareDel; 142 alias NDdeSetShareSecurityW NDdeSetShareSecurity; 143 alias NDdeGetShareSecurityW NDdeGetShareSecurity; 144 alias NDdeShareEnumW NDdeShareEnum; 145 alias NDdeShareGetInfoW NDdeShareGetInfo; 146 alias NDdeShareSetInfoW NDdeShareSetInfo; 147 alias NDdeGetErrorStringW NDdeGetErrorString; 148 alias NDdeIsValidShareNameW NDdeIsValidShareName; 149 alias NDdeIsValidAppTopicListW NDdeIsValidAppTopicList; 150 alias NDdeSetTrustedShareW NDdeSetTrustedShare; 151 alias NDdeGetTrustedShareW NDdeGetTrustedShare; 152 alias NDdeTrustedShareEnumW NDdeTrustedShareEnum; 153 } else { 154 alias NDdeShareAddA NDdeShareAdd; 155 alias NDdeShareDelA NDdeShareDel; 156 alias NDdeSetShareSecurityA NDdeSetShareSecurity; 157 alias NDdeGetShareSecurityA NDdeGetShareSecurity; 158 alias NDdeShareEnumA NDdeShareEnum; 159 alias NDdeShareGetInfoA NDdeShareGetInfo; 160 alias NDdeShareSetInfoA NDdeShareSetInfo; 161 alias NDdeGetErrorStringA NDdeGetErrorString; 162 alias NDdeIsValidShareNameA NDdeIsValidShareName; 163 alias NDdeIsValidAppTopicListA NDdeIsValidAppTopicList; 164 alias NDdeSetTrustedShareA NDdeSetTrustedShare; 165 alias NDdeGetTrustedShareA NDdeGetTrustedShare; 166 alias NDdeTrustedShareEnumA NDdeTrustedShareEnum; 167 }