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/_dhcpcsdk.d) 9 */ 10 /// Automatically imported and edited from the druntime module 11 /// core.sys.windows.dhcpcsdk for the auto-generated win32 package. 12 module win32.dhcpcsdk; 13 //version (Windows): 14 @system: 15 16 import win32.w32api, win32.windef; 17 18 /*static assert (_WIN32_WINNT >= 0x500, 19 "win32.dhcpcsdk is available only if version Windows2000, WindowsXP, Windows2003 20 or WindowsVista is set");*/ 21 22 //#if (_WIN32_WINNT >= 0x500) 23 24 // FIXME: check type 25 enum DHCPCAPI_REGISTER_HANDLE_EVENT = 1; 26 enum DHCPCAPI_REQUEST_PERSISTENT = 1; 27 enum DHCPCAPI_REQUEST_SYNCHRONOUS = 2; 28 29 struct DHCPCAPI_CLASSID { 30 ULONG Flags; 31 LPBYTE Data; 32 ULONG nBytesData; 33 } 34 alias DHCPCAPI_CLASSID* PDHCPCAPI_CLASSID, LPDHCPCAPI_CLASSID; 35 36 struct DHCPAPI_PARAMS { 37 ULONG Flags; 38 ULONG OptionId; 39 BOOL IsVendor; 40 LPBYTE Data; 41 DWORD nBytesData; 42 } 43 alias DHCPAPI_PARAMS* PDHCPAPI_PARAMS, LPDHCPAPI_PARAMS; 44 45 struct DHCPCAPI_PARAMS_ARRAY { 46 ULONG nParams; 47 LPDHCPAPI_PARAMS Params; 48 } 49 alias DHCPCAPI_PARAMS_ARRAY* PDHCPCAPI_PARAMS_ARRAY, LPDHCPCAPI_PARAMS_ARRAY; 50 51 extern (Windows) { 52 void DhcpCApiCleanup(); 53 DWORD DhcpCApiInitialize(LPDWORD); 54 DWORD DhcpDeRegisterParamChange(DWORD, LPVOID, LPVOID); 55 DWORD DhcpRegisterParamChange(DWORD, LPVOID, PWSTR, LPDHCPCAPI_CLASSID, 56 DHCPCAPI_PARAMS_ARRAY, LPVOID); 57 DWORD DhcpRemoveDNSRegistrations(); 58 DWORD DhcpUndoRequestParams(DWORD, LPVOID, LPWSTR, LPWSTR); 59 } 60 61 //#endif // (_WIN32_WINNT >= 0x500)