Implement SetupDiGetActualSectionToInstallExA/W
[reactos.git] / reactos / w32api / include / setupapi.h
index 08231e7..028001b 100644 (file)
@@ -152,10 +152,14 @@ extern "C" {
 #define DIF_ADDREMOTEPROPERTYPAGE_ADVANCED 40
 #define DIF_UPDATEDRIVER_UI                41
 #define DIF_RESERVED2                      42
-#define DIGCF_DEFAULT  0x00000001
 #define DIGCDP_FLAG_BASIC      0x00000001
-#define DIGCF_PRESENT  0x00000002
 #define DIGCDP_FLAG_ADVANCED   0x00000002
+#if (_SETUPAPI_VER >= 0x0501)
+#define DIGCDP_FLAG_REMOTE_BASIC    0x00000003
+#define DIGCDP_FLAG_REMOTE_ADVANCED 0x00000004
+#endif
+#define DIGCF_DEFAULT  0x00000001
+#define DIGCF_PRESENT  0x00000002
 #define DIGCF_ALLCLASSES       0x00000004
 #define DIGCF_PROFILE  0x00000008
 #define DIGCF_DEVICEINTERFACE  0x00000010
@@ -208,6 +212,38 @@ extern "C" {
 #define DMI_MASK       0x00000001
 #define DMI_BKCOLOR    0x00000002
 #define DMI_USERECT    0x00000004
+#define DN_ROOT_ENUMERATED     0x00000001
+#define DN_DRIVER_LOADED       0x00000002
+#define DN_ENUM_LOADED 0x00000004
+#define DN_STARTED     0x00000008
+#define DN_MANUAL      0x00000010
+#define DN_NEED_TO_ENUM        0x00000020
+#define DN_NOT_FIRST_TIME      0x00000040
+#define DN_HARDWARE_ENUM       0x00000080
+#define DN_LIAR        0x00000100
+#define DN_HAS_MARK    0x00000200
+#define DN_HAS_PROBLEM 0x00000400
+#define DN_FILTERED    0x00000800
+#define DN_MOVED       0x00001000
+#define DN_DISABLEABLE 0x00002000
+#define DN_REMOVABLE   0x00004000
+#define DN_PRIVATE_PROBLEM     0x00008000
+#define DN_MF_PARENT   0x00010000
+#define DN_MF_CHILD    0x00020000
+#define DN_WILL_BE_REMOVED     0x00040000
+#define DN_NOT_FIRST_TIMEE     0x00080000
+#define DN_STOP_FREE_RES       0x00100000
+#define DN_REBAL_CANDIDATE     0x00200000
+#define DN_BAD_PARTIAL 0x00400000
+#define DN_NT_ENUMERATOR       0x00800000
+#define DN_NT_DRIVER   0x01000000
+#define DN_NEEDS_LOCKING       0x02000000
+#define DN_ARM_WAKEUP  0x04000000
+#define DN_APM_ENUMERATOR      0x08000000
+#define DN_APM_DRIVER  0x10000000
+#define DN_SILENT_INSTALL      0x20000000
+#define DN_NO_SHOW_IN_DM       0x40000000
+#define DN_BOOT_LOG_PROB       0x80000000
 #define DNF_DUPDESC    0x00000001
 #define DNF_OLDDRIVER  0x00000002
 #define DNF_EXCLUDEFROMLIST    0x00000004
@@ -1164,6 +1200,8 @@ WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInterfaces(HDEVINFO,PSP_DEVINFO_DATA,CO
 WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoA(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,PSP_DRVINFO_DATA_A);
 WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoW(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,PSP_DRVINFO_DATA_W);
 WINSETUPAPI BOOL WINAPI SetupDiGetActualSectionToInstallA(HINF,PCSTR,PSTR,DWORD,PDWORD,PSTR*);
+WINSETUPAPI BOOL WINAPI SetupDiGetActualSectionToInstallExA(HINF,PCSTR,PSP_ALTPLATFORM_INFO,PSTR,DWORD,PDWORD,PSTR*,PVOID);
+WINSETUPAPI BOOL WINAPI SetupDiGetActualSectionToInstallExW(HINF,PCWSTR,PSP_ALTPLATFORM_INFO,PWSTR,DWORD,PDWORD,PWSTR*,PVOID);
 WINSETUPAPI BOOL WINAPI SetupDiGetActualSectionToInstallW(HINF,PCWSTR,PWSTR,DWORD,PDWORD,PWSTR*);
 WINSETUPAPI BOOL WINAPI SetupDiGetClassBitmapIndex(CONST GUID*,PINT);
 WINSETUPAPI BOOL WINAPI SetupDiGetClassDescriptionA(CONST GUID*,PSTR,DWORD,PDWORD);
@@ -1439,6 +1477,7 @@ WINSETUPAPI BOOL WINAPI UnmapAndCloseFile(HANDLE, HANDLE, PVOID);
 #define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyW
 #define SetupDiEnumDriverInfo  SetupDiEnumDriverInfoW
 #define SetupDiGetActualSectionToInstall       SetupDiGetActualSectionToInstallW
+#define SetupDiGetActualSectionToInstallEx     SetupDiGetActualSectionToInstallExW
 #define SetupDiGetClassDescriptionEx   SetupDiGetClassDescriptionExW
 #define SetupDiGetClassDescription     SetupDiGetClassDescriptionW
 #define SetupDiGetClassDevPropertySheets       SetupDiGetClassDevPropertySheetsW
@@ -1559,6 +1598,7 @@ WINSETUPAPI BOOL WINAPI UnmapAndCloseFile(HANDLE, HANDLE, PVOID);
 #define SetupDiDeleteInterfaceDeviceData       SetupDiDeleteDeviceInterfaceData
 #define SetupDiEnumDriverInfo  SetupDiEnumDriverInfoA
 #define SetupDiGetActualSectionToInstall       SetupDiGetActualSectionToInstallA
+#define SetupDiGetActualSectionToInstallEx     SetupDiGetActualSectionToInstallExA
 #define SetupDiGetClassDescription     SetupDiGetClassDescriptionA
 #define SetupDiGetClassDescriptionEx   SetupDiGetClassDescriptionExA
 #define SetupDiGetClassDevPropertySheets       SetupDiGetClassDevPropertySheetsA