1 #ifndef _SETUPAPI_H_ 2 #define _SETUPAPI_H_ 3 4 #include <commctrl.h> 5 #if defined(_WIN64) 6 #include <pshpack8.h> 7 #else 8 #include <pshpack1.h> 9 #endif 10 #ifdef __cplusplus 11 extern "C" { 12 #endif 13 14 #ifndef _SETUPAPI_ 15 #define WINSETUPAPI DECLSPEC_IMPORT 16 #else 17 #define WINSETUPAPI 18 #endif 19 20 #define LINE_LEN 256 21 #define MAX_INF_STRING_LENGTH 4096 22 #define MAX_TITLE_LEN 60 23 #define MAX_INSTRUCTION_LEN 256 24 #define MAX_LABEL_LEN 30 25 #define MAX_SERVICE_NAME_LEN 256 26 #define MAX_SUBTITLE_LEN 256 27 #define SP_MAX_MACHINENAME_LENGTH (MAX_PATH + 3) 28 29 #define COPYFLG_WARN_IF_SKIP 0x00000001 30 #define COPYFLG_NOSKIP 0x00000002 31 #define COPYFLG_NOVERSIONCHECK 0x00000004 32 #define COPYFLG_FORCE_FILE_IN_USE 0x00000008 33 #define COPYFLG_NO_OVERWRITE 0x00000010 34 #define COPYFLG_NO_VERSION_DIALOG 0x00000020 35 #define COPYFLG_OVERWRITE_OLDER_ONLY 0x00000040 36 #define COPYFLG_REPLACEONLY 0x00000400 37 #define COPYFLG_NODECOMP 0x00000800 38 #define COPYFLG_REPLACE_BOOT_FILE 0x00001000 39 #define COPYFLG_NOPRUNE 0x00002000 40 #define DELFLG_IN_USE 0x00000001 41 #define DELFLG_IN_USE1 0x00010000 42 #define DI_REMOVEDEVICE_GLOBAL 0x00000001 43 #define DI_REMOVEDEVICE_CONFIGSPECIFIC 0x00000002 44 #define DI_UNREMOVEDEVICE_CONFIGSPECIFIC 0x00000002 45 #define DI_SHOWOEM 0x00000001 46 #define DI_SHOWCOMPAT 0x00000002 47 #define DI_SHOWCLASS 0x00000004 48 #define DI_SHOWALL 0x00000007 49 #define DI_NOVCP 0x00000008 50 #define DI_DIDCOMPAT 0x00000010 51 #define DI_DIDCLASS 0x00000020 52 #define DI_AUTOASSIGNRES 0x00000040 53 #define DI_NEEDRESTART 0x00000080 54 #define DI_NEEDREBOOT 0x00000100 55 #define DI_NOBROWSE 0x00000200 56 #define DI_MULTMFGS 0x00000400 57 #define DI_DISABLED 0x00000800 58 #define DI_GENERALPAGE_ADDED 0x00001000 59 #define DI_RESOURCEPAGE_ADDED 0x00002000 60 #define DI_PROPERTIES_CHANGE 0x00004000 61 #define DI_INF_IS_SORTED 0x00008000 62 #define DI_ENUMSINGLEINF 0x00010000 63 #define DI_DONOTCALLCONFIGMG 0x00020000 64 #define DI_INSTALLDISABLED 0x00040000 65 #define DI_COMPAT_FROM_CLASS 0x00080000 66 #define DI_CLASSINSTALLPARAMS 0x00100000 67 #define DI_NODI_DEFAULTACTION 0x00200000 68 #define DI_QUIETINSTALL 0x00800000 69 #define DI_NOFILECOPY 0x01000000 70 #define DI_FORCECOPY 0x02000000 71 #define DI_DRIVERPAGE_ADDED 0x04000000 72 #define DI_USECI_SELECTSTRINGS 0x08000000 73 #define DI_OVERRIDE_INFFLAGS 0x10000000 74 #define DI_PROPS_NOCHANGEUSAGE 0x20000000 75 #define DI_NOSELECTICONS 0x40000000 76 #define DI_NOWRITE_IDS 0x80000000 77 #define DI_FLAGSEX_USEOLDINFSEARCH 0x00000001 78 #define DI_FLAGSEX_AUTOSELECTRANK0 0x00000002 79 #define DI_FLAGSEX_CI_FAILED 0x00000004 80 #define DI_FLAGSEX_DIDINFOLIST 0x00000010 81 #define DI_FLAGSEX_DIDCOMPATINFO 0x00000020 82 #define DI_FLAGSEX_FILTERCLASSES 0x00000040 83 #define DI_FLAGSEX_SETFAILEDINSTALL 0x00000080 84 #define DI_FLAGSEX_DEVICECHANGE 0x00000100 85 #define DI_FLAGSEX_ALWAYSWRITEIDS 0x00000200 86 #define DI_FLAGSEX_PROPCHANGE_PENDING 0x00000400 87 #define DI_FLAGSEX_ALLOWEXCLUDEDDRVS 0x00000800 88 #define DI_FLAGSEX_NOUIONQUERYREMOVE 0x00001000 89 #define DI_FLAGSEX_USECLASSFORCOMPAT 0x00002000 90 #define DI_FLAGSEX_OLDINF_IN_CLASSLIST 0x00004000 91 #define DI_FLAGSEX_NO_DRVREG_MODIFY 0x00008000 92 #define DI_FLAGSEX_IN_SYSTEM_SETUP 0x00010000 93 #define DI_FLAGSEX_INET_DRIVER 0x00020000 94 #define DI_FLAGSEX_APPENDDRIVERLIST 0x00040000 95 #define DI_FLAGSEX_PREINSTALLBACKUP 0x00080000 96 #define DI_FLAGSEX_BACKUPONREPLACE 0x00100000 97 #define DI_FLAGSEX_DRIVERLIST_FROM_URL 0x00200000 98 #define DI_FLAGSEX_RESERVED1 0x00400000 99 #define DI_FLAGSEX_EXCLUDE_OLD_INET_DRIVERS 0x00800000 100 #define DI_FLAGSEX_POWERPAGE_ADDED 0x01000000 101 #if (_SETUPAPI_VER >= 0x0501) 102 #define DI_FLAGSEX_FILTERSIMILARDRIVERS 0x02000000 103 #define DI_FLAGSEX_INSTALLEDDRIVER 0x04000000 104 #define DI_FLAGSEX_NO_CLASSLIST_NODE_MERGE 0x08000000 105 #define DI_FLAGSEX_ALTPLATFORM_DRVSEARCH 0x10000000 106 #define DI_FLAGSEX_RESTART_DEVICE_ONLY 0x20000000 107 #endif 108 #define DIBCI_NOINSTALLCLASS 0x00000001 109 #define DIBCI_NODISPLAYCLASS 0x00000002 110 #define DICD_GENERATE_ID 0x00000001 111 #define DICD_INHERIT_CLASSDRVS 0x00000002 112 #define DICS_ENABLE 1 113 #define DICS_FLAG_GLOBAL 1 114 #define DICS_DISABLE 2 115 #define DICS_FLAG_CONFIGSPECIFIC 2 116 #define DICS_PROPCHANGE 3 117 #define DICS_START 4 118 #define DICS_FLAG_CONFIGGENERAL 4 119 #define DICS_STOP 5 120 #define DIF_SELECTDEVICE 1 121 #define DIF_INSTALLDEVICE 2 122 #define DIF_ASSIGNRESOURCES 3 123 #define DIF_PROPERTIES 4 124 #define DIF_REMOVE 5 125 #define DIF_FIRSTTIMESETUP 6 126 #define DIF_FOUNDDEVICE 7 127 #define DIF_SELECTCLASSDRIVERS 8 128 #define DIF_VALIDATECLASSDRIVERS 9 129 #define DIF_INSTALLCLASSDRIVERS 10 130 #define DIF_CALCDISKSPACE 11 131 #define DIF_DESTROYPRIVATEDATA 12 132 #define DIF_VALIDATEDRIVER 13 133 #define DIF_MOVEDEVICE 14 134 #define DIF_DETECT 15 135 #define DIF_INSTALLWIZARD 16 136 #define DIF_DESTROYWIZARDDATA 17 137 #define DIF_PROPERTYCHANGE 18 138 #define DIF_ENABLECLASS 19 139 #define DIF_DETECTVERIFY 20 140 #define DIF_INSTALLDEVICEFILES 21 141 #define DIF_UNREMOVE 22 142 #define DIF_SELECTBESTCOMPATDRV 23 143 #define DIF_ALLOW_INSTALL 24 144 #define DIF_REGISTERDEVICE 25 145 #define DIF_NEWDEVICEWIZARD_PRESELECT 26 146 #define DIF_NEWDEVICEWIZARD_SELECT 27 147 #define DIF_NEWDEVICEWIZARD_PREANALYZE 28 148 #define DIF_NEWDEVICEWIZARD_POSTANALYZE 29 149 #define DIF_NEWDEVICEWIZARD_FINISHINSTALL 30 150 #define DIF_UNUSED1 31 151 #define DIF_INSTALLINTERFACES 32 152 #define DIF_DETECTCANCEL 33 153 #define DIF_REGISTER_COINSTALLERS 34 154 #define DIF_ADDPROPERTYPAGE_ADVANCED 35 155 #define DIF_ADDPROPERTYPAGE_BASIC 36 156 #define DIF_RESERVED1 37 157 #define DIF_TROUBLESHOOTER 38 158 #define DIF_POWERMESSAGEWAKE 39 159 #define DIF_ADDREMOTEPROPERTYPAGE_ADVANCED 40 160 #define DIF_UPDATEDRIVER_UI 41 161 #define DIF_FINISHINSTALL_ACTION 42 162 #define DIF_RESERVED2 48 163 164 #define DIGCDP_FLAG_BASIC 0x00000001 165 #define DIGCDP_FLAG_ADVANCED 0x00000002 166 #if (_SETUPAPI_VER >= 0x0501) 167 #define DIGCDP_FLAG_REMOTE_BASIC 0x00000003 168 #define DIGCDP_FLAG_REMOTE_ADVANCED 0x00000004 169 #endif 170 #define DIGCF_DEFAULT 0x00000001 171 #define DIGCF_PRESENT 0x00000002 172 #define DIGCF_ALLCLASSES 0x00000004 173 #define DIGCF_PROFILE 0x00000008 174 #define DIGCF_DEVICEINTERFACE 0x00000010 175 #define DIGCF_INTERFACEDEVICE 0x00000010 176 #define DIOCR_INSTALLER 0x00000001 177 #define DIOCR_INTERFACE 0x00000002 178 #define DIODI_NO_ADD 0x00000001 179 #define DIOD_INHERIT_CLASSDRVS 0x00000002 180 #define DIOD_CANCEL_REMOVE 0x00000004 181 #define DIREG_DEV 0x00000001 182 #define DIREG_DRV 0x00000002 183 #define DIREG_BOTH 0x00000004 184 #define DIRID_ABSOLUTE -1 185 #define DIRID_NULL 0 186 #define DIRID_SRCPATH 1 187 #define DIRID_WINDOWS 10 188 #define DIRID_SYSTEM 11 189 #define DIRID_DRIVERS 12 190 #define DIRID_INF 17 191 #define DIRID_HELP 18 192 #define DIRID_FONTS 20 193 #define DIRID_VIEWERS 21 194 #define DIRID_COLOR 23 195 #define DIRID_APPS 24 196 #define DIRID_SHARED 25 197 #define DIRID_BOOT 30 198 #define DIRID_SYSTEM16 50 199 #define DIRID_SPOOL 51 200 #define DIRID_SPOOLDRIVERS 52 201 #define DIRID_USERPROFILE 53 202 #define DIRID_LOADER 54 203 #define DIRID_PRINTPROCESSOR 55 204 #define DIRID_COMMON_STARTMENU 16406 205 #define DIRID_COMMON_PROGRAMS 16407 206 #define DIRID_COMMON_STARTUP 16408 207 #define DIRID_COMMON_DESKTOPDIRECTORY 16409 208 #define DIRID_COMMON_FAVORITES 16415 209 #define DIRID_COMMON_APPDATA 16419 210 #define DIRID_PROGRAM_FILES 16422 211 #define DIRID_SYSTEM_X86 16425 212 #define DIRID_PROGRAM_FILES_X86 16426 213 #define DIRID_PROGRAM_FILES_COMMON 16427 214 #define DIRID_PROGRAM_FILES_COMMONX86 16428 215 #define DIRID_COMMON_TEMPLATES 16429 216 #define DIRID_COMMON_DOCUMENTS 16430 217 #define DIRID_USER 0x8000 218 #define DIRID_ABSOLUTE_16BIT 0xffff 219 #define DIRID_IOSUBSYS DIRID_DRIVERS 220 #define DIRID_DEFAULT DIRID_SYSTEM 221 #define DMI_MASK 0x00000001 222 #define DMI_BKCOLOR 0x00000002 223 #define DMI_USERECT 0x00000004 224 #define DN_ROOT_ENUMERATED 0x00000001 225 #define DN_DRIVER_LOADED 0x00000002 226 #define DN_ENUM_LOADED 0x00000004 227 #define DN_STARTED 0x00000008 228 #define DN_MANUAL 0x00000010 229 #define DN_NEED_TO_ENUM 0x00000020 230 #define DN_NOT_FIRST_TIME 0x00000040 231 #define DN_HARDWARE_ENUM 0x00000080 232 #define DN_LIAR 0x00000100 233 #define DN_HAS_MARK 0x00000200 234 #define DN_HAS_PROBLEM 0x00000400 235 #define DN_FILTERED 0x00000800 236 #define DN_MOVED 0x00001000 237 #define DN_DISABLEABLE 0x00002000 238 #define DN_REMOVABLE 0x00004000 239 #define DN_PRIVATE_PROBLEM 0x00008000 240 #define DN_MF_PARENT 0x00010000 241 #define DN_MF_CHILD 0x00020000 242 #define DN_WILL_BE_REMOVED 0x00040000 243 #define DN_NOT_FIRST_TIMEE 0x00080000 244 #define DN_STOP_FREE_RES 0x00100000 245 #define DN_REBAL_CANDIDATE 0x00200000 246 #define DN_BAD_PARTIAL 0x00400000 247 #define DN_NT_ENUMERATOR 0x00800000 248 #define DN_NT_DRIVER 0x01000000 249 #define DN_NEEDS_LOCKING 0x02000000 250 #define DN_ARM_WAKEUP 0x04000000 251 #define DN_APM_ENUMERATOR 0x08000000 252 #define DN_APM_DRIVER 0x10000000 253 #define DN_SILENT_INSTALL 0x20000000 254 #define DN_NO_SHOW_IN_DM 0x40000000 255 #define DN_BOOT_LOG_PROB 0x80000000 256 #define DNF_DUPDESC 0x00000001 257 #define DNF_OLDDRIVER 0x00000002 258 #define DNF_EXCLUDEFROMLIST 0x00000004 259 #define DNF_NODRIVER 0x00000008 260 #define DNF_LEGACYINF 0x00000010 261 #define DNF_CLASS_DRIVER 0x00000020 262 #define DNF_COMPATIBLE_DRIVER 0x00000040 263 #define DNF_INET_DRIVER 0x00000080 264 #define DNF_UNUSED1 0x00000100 265 #define DNF_INDEXED_DRIVER 0x00000200 266 #define DNF_OLD_INET_DRIVER 0x00000400 267 #define DNF_BAD_DRIVER 0x00000800 268 #define DNF_DUPPROVIDER 0x00001000 269 #define DPROMPT_SUCCESS 0 270 #define DPROMPT_CANCEL 1 271 #define DPROMPT_SKIPFILE 2 272 #define DPROMPT_BUFFERTOOSMALL 3 273 #define DPROMPT_OUTOFMEMORY 4 274 #define DRIVER_HARDWAREID_RANK 0x00000FFF 275 #if (_SETUPAPI_VER >= 0x0600) 276 #define DRIVER_UNTRUSTED_RANK 0x80000000 277 #else 278 #define DRIVER_UNTRUSTED_RANK 0x00008000 279 #endif 280 #define DYNAWIZ_FLAG_PAGESADDED 0x00000001 281 #define DYNAWIZ_FLAG_INSTALLDET_NEXT 0x00000002 282 #define DYNAWIZ_FLAG_INSTALLDET_PREV 0x00000004 283 #define DYNAWIZ_FLAG_ANALYZE_HANDLECONFLICT 0x00000008 284 #define ENABLECLASS_QUERY 0 285 #define ENABLECLASS_SUCCESS 1 286 #define ENABLECLASS_FAILURE 2 287 #define ERROR_EXPECTED_SECTION_NAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0) 288 #define ERROR_BAD_SECTION_NAME_LINE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|1) 289 #define ERROR_SECTION_NAME_TOO_LONG (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|2) 290 #define ERROR_GENERAL_SYNTAX (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|3) 291 #define ERROR_WRONG_INF_STYLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x100) 292 #define ERROR_NOT_INSTALLED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x1000) 293 #define ERROR_SECTION_NOT_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x101) 294 #define ERROR_LINE_NOT_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x102) 295 #define ERROR_NO_BACKUP (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x103) 296 #define ERROR_NO_ASSOCIATED_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x200) 297 #define ERROR_CLASS_MISMATCH (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x201) 298 #define ERROR_DUPLICATE_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x202) 299 #define ERROR_NO_DRIVER_SELECTED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x203) 300 #define ERROR_KEY_DOES_NOT_EXIST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x204) 301 #define ERROR_INVALID_DEVINST_NAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x205) 302 #define ERROR_INVALID_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x206) 303 #define ERROR_DEVINST_ALREADY_EXISTS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x207) 304 #define ERROR_DEVINFO_NOT_REGISTERED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x208) 305 #define ERROR_INVALID_REG_PROPERTY (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x209) 306 #define ERROR_NO_INF (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20A) 307 #define ERROR_NO_SUCH_DEVINST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20B) 308 #define ERROR_CANT_LOAD_CLASS_ICON (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20C) 309 #define ERROR_INVALID_CLASS_INSTALLER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20D) 310 #define ERROR_DI_DO_DEFAULT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20E) 311 #define ERROR_DI_NOFILECOPY (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20F) 312 #define ERROR_INVALID_HWPROFILE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x210) 313 #define ERROR_NO_DEVICE_SELECTED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x211) 314 #define ERROR_DEVINFO_LIST_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x212) 315 #define ERROR_DEVINFO_DATA_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x213) 316 #define ERROR_DI_BAD_PATH (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x214) 317 #define ERROR_NO_CLASSINSTALL_PARAMS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x215) 318 #define ERROR_FILEQUEUE_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x216) 319 #define ERROR_BAD_SERVICE_INSTALLSECT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x217) 320 #define ERROR_NO_CLASS_DRIVER_LIST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x218) 321 #define ERROR_NO_ASSOCIATED_SERVICE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x219) 322 #define ERROR_NO_DEFAULT_DEVICE_INTERFACE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21A) 323 #define ERROR_DEVICE_INTERFACE_ACTIVE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21B) 324 #define ERROR_DEVICE_INTERFACE_REMOVED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21C) 325 #define ERROR_BAD_INTERFACE_INSTALLSECT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21D) 326 #define ERROR_NO_SUCH_INTERFACE_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21E) 327 #define ERROR_INVALID_REFERENCE_STRING (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21F) 328 #define ERROR_INVALID_MACHINENAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x220) 329 #define ERROR_REMOTE_COMM_FAILURE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x221) 330 #define ERROR_MACHINE_UNAVAILABLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x222) 331 #define ERROR_NO_CONFIGMGR_SERVICES (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x223) 332 #define ERROR_INVALID_PROPPAGE_PROVIDER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x224) 333 #define ERROR_NO_SUCH_DEVICE_INTERFACE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x225) 334 #define ERROR_DI_POSTPROCESSING_REQUIRED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x226) 335 #define ERROR_INVALID_COINSTALLER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x227) 336 #define ERROR_NO_COMPAT_DRIVERS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x228) 337 #define ERROR_NO_DEVICE_ICON (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x229) 338 #define ERROR_INVALID_INF_LOGCONFIG (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22A) 339 #define ERROR_DI_DONT_INSTALL (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22B) 340 #define ERROR_INVALID_FILTER_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22C) 341 #define ERROR_NON_WINDOWS_NT_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22D) 342 #define ERROR_NON_WINDOWS_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22E) 343 #define ERROR_NO_CATALOG_FOR_OEM_INF (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22F) 344 #define ERROR_DEVINSTALL_QUEUE_NONNATIVE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x230) 345 #define ERROR_NOT_DISABLEABLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x231) 346 #define ERROR_CANT_REMOVE_DEVINST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x232) 347 #define ERROR_IN_WOW64 (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x235) 348 #define ERROR_INTERFACE_DEVICE_ACTIVE ERROR_DEVICE_INTERFACE_ACTIVE 349 #define ERROR_INTERFACE_DEVICE_REMOVED ERROR_DEVICE_INTERFACE_REMOVED 350 #define ERROR_NO_DEFAULT_INTERFACE_DEVICE ERROR_NO_DEFAULT_DEVICE_INTERFACE 351 #define ERROR_NO_SUCH_INTERFACE_DEVICE ERROR_NO_SUCH_DEVICE_INTERFACE 352 #define ERROR_WRONG_INF_TYPE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x24A) 353 354 #define FILEOP_COPY 0 355 #define FILEOP_ABORT 0 356 #define FILE_COMPRESSION_NONE 0 357 #define FILEOP_RENAME 1 358 #define FILEOP_DOIT 1 359 #define FILE_COMPRESSION_WINLZA 1 360 #define FILEOP_DELETE 2 361 #define FILEOP_SKIP 2 362 #define FILE_COMPRESSION_MSZIP 2 363 #define FILEOP_BACKUP 3 364 #define FILE_COMPRESSION_NTCAB 3 365 #define FILEOP_NEWPATH 4 366 #define FILEOP_RETRY FILEOP_DOIT 367 #define FLG_ADDREG_TYPE_SZ 0x00000000 368 #define FLG_ADDREG_BINVALUETYPE 0x00000001 369 #define FLG_ADDREG_NOCLOBBER 0x00000002 370 #define FLG_ADDREG_DELVAL 0x00000004 371 #define FLG_ADDREG_APPEND 0x00000008 372 #define FLG_ADDREG_KEYONLY 0x00000010 373 #define FLG_ADDREG_OVERWRITEONLY 0x00000020 374 #if (_SETUPAPI_VER >= 0x0501) 375 #define FLG_ADDREG_64BITKEY 0x00001000 376 #define FLG_ADDREG_KEYONLY_COMMON 0x00002000 377 #define FLG_ADDREG_32BITKEY 0x00004000 378 #define FLG_ADDREG_DELREG_BIT 0x00008000 379 #endif 380 #define FLG_ADDREG_TYPE_MULTI_SZ 0x00010000 381 #define FLG_ADDREG_TYPE_EXPAND_SZ 0x00020000 382 #define FLG_ADDREG_TYPE_BINARY (0x00000000|FLG_ADDREG_BINVALUETYPE) 383 #define FLG_ADDREG_TYPE_DWORD (0x00010000|FLG_ADDREG_BINVALUETYPE) 384 #define FLG_ADDREG_TYPE_NONE (0x00020000|FLG_ADDREG_BINVALUETYPE) 385 #define FLG_ADDREG_TYPE_MASK (0xFFFF0000|FLG_ADDREG_BINVALUETYPE) 386 #define FLG_DELREG_VALUE 0x00000000 387 #if (_SETUPAPI_VER >= 0x0501) 388 #define FLG_DELREG_TYPE_MASK FLG_ADDREG_TYPE_MASK 389 #define FLG_DELREG_TYPE_SZ FLG_ADDREG_TYPE_SZ 390 #define FLG_DELREG_TYPE_MULTI_SZ FLG_ADDREG_TYPE_MULTI_SZ 391 #define FLG_DELREG_TYPE_EXPAND_SZ FLG_ADDREG_TYPE_EXPAND_SZ 392 #define FLG_DELREG_TYPE_BINARY FLG_ADDREG_TYPE_BINARY 393 #define FLG_DELREG_TYPE_DWORD FLG_ADDREG_TYPE_DWORD 394 #define FLG_DELREG_TYPE_NONE FLG_ADDREG_TYPE_NONE 395 #define FLG_DELREG_64BITKEY FLG_ADDREG_64BITKEY 396 #define FLG_DELREG_KEYONLY_COMMON FLG_ADDREG_KEYONLY_COMMON 397 #define FLG_DELREG_32BITKEY FLG_ADDREG_32BITKEY 398 #define FLG_DELREG_OPERATION_MASK 0x000000FE 399 #define FLG_DELREG_MULTI_SZ_DELSTRING (0x00000002|FLG_DELREG_TYPE_MULTI_SZ|FLG_ADDREG_DELREG_BIT) 400 #endif 401 #define FLG_BITREG_CLEARBITS 0x00000000 402 #define FLG_BITREG_SETBITS 0x00000001 403 #define FLG_PROFITEM_CURRENTUSER 0x00000001 404 #define FLG_PROFITEM_DELETE 0x00000002 405 #define FLG_PROFITEM_GROUP 0x00000004 406 #define FLG_PROFITEM_CSIDL 0x00000008 407 #define FLG_REGSVR_DLLREGISTER 0x00000001 408 #define FLG_REGSVR_DLLINSTALL 0x00000002 409 #define MIN_IDD_DYNAWIZ_RESOURCE_ID 10000 410 #define MAX_IDD_DYNAWIZ_RESOURCE_ID 11000 411 #define IDD_DYNAWIZ_FIRSTPAGE 10000 412 #define IDD_DYNAWIZ_SELECT_PREVPAGE 10001 413 #define IDD_DYNAWIZ_SELECT_NEXTPAGE 10002 414 #define IDD_DYNAWIZ_ANALYZE_PREVPAGE 10003 415 #define IDD_DYNAWIZ_ANALYZE_NEXTPAGE 10004 416 #define IDD_DYNAWIZ_INSTALLDETECTED_PREVPAGE 10006 417 #define IDD_DYNAWIZ_INSTALLDETECTED_NEXTPAGE 10007 418 #define IDD_DYNAWIZ_INSTALLDETECTED_NODEVS 10008 419 #define IDD_DYNAWIZ_SELECTDEV_PAGE 10009 420 #define IDD_DYNAWIZ_ANALYZEDEV_PAGE 10010 421 #define IDD_DYNAWIZ_INSTALLDETECTEDDEVS_PAGE 10011 422 #define IDD_DYNAWIZ_SELECTCLASS_PAGE 10012 423 #define IDF_NOBROWSE 0x00000001 424 #define IDF_NOSKIP 0x00000002 425 #define IDF_NODETAILS 0x00000004 426 #define IDF_NOCOMPRESSED 0x00000008 427 #define IDF_CHECKFIRST 0x00000100 428 #define IDF_NOBEEP 0x00000200 429 #define IDF_NOFOREGROUND 0x00000400 430 #define IDF_WARNIFSKIP 0x00000800 431 #define IDF_OEMDISK 0x80000000 432 #define IDI_RESOURCEFIRST 159 433 #define IDI_RESOURCE 159 434 #define IDI_RESOURCELAST 161 435 #define IDI_RESOURCEOVERLAYFIRST 161 436 #define IDI_RESOURCEOVERLAYLAST 161 437 #define IDI_CONFLICT 161 438 #define IDI_PROBLEM_OVL 500 439 #define IDI_DISABLED_OVL 501 440 #define IDI_FORCED_OVL 502 441 #define IDI_CLASSICON_OVERLAYFIRST 500 442 #define IDI_CLASSICON_OVERLAYLAST 502 443 #define INF_STYLE_NONE 0x00000000 444 #define INF_STYLE_OLDNT 0x00000001 445 #define INF_STYLE_WIN4 0x00000002 446 #define INF_STYLE_CACHE_ENABLE 0x00000010 447 #define INF_STYLE_CACHE_DISABLE 0x00000020 448 #define INFINFO_INF_SPEC_IS_HINF 1 449 #define INFINFO_INF_NAME_IS_ABSOLUTE 2 450 #define INFINFO_DEFAULT_SEARCH 3 451 #define INFINFO_REVERSE_DEFAULT_SEARCH 4 452 #define INFINFO_INF_PATH_LIST_SEARCH 5 453 #define LogSevInformation 0 454 #define LogSevWarning 1 455 #define LogSevError 2 456 #define LogSevFatalError 3 457 #define LogSevMaximum 4 458 #define LogSeverity DWORD 459 #define MAX_INSTALLWIZARD_DYNAPAGES 20 460 #define NDW_INSTALLFLAG_DIDFACTDEFS 0x00000001 461 #define NDW_INSTALLFLAG_HARDWAREALLREADYIN 0x00000002 462 #define NDW_INSTALLFLAG_NEEDSHUTDOWN 0x00000200 463 #define NDW_INSTALLFLAG_EXPRESSINTRO 0x00000400 464 #define NDW_INSTALLFLAG_SKIPISDEVINSTALLED 0x00000800 465 #define NDW_INSTALLFLAG_NODETECTEDDEVS 0x00001000 466 #define NDW_INSTALLFLAG_INSTALLSPECIFIC 0x00002000 467 #define NDW_INSTALLFLAG_SKIPCLASSLIST 0x00004000 468 #define NDW_INSTALLFLAG_CI_PICKED_OEM 0x00008000 469 #define NDW_INSTALLFLAG_PCMCIAMODE 0x00010000 470 #define NDW_INSTALLFLAG_PCMCIADEVICE 0x00020000 471 #define NDW_INSTALLFLAG_USERCANCEL 0x00040000 472 #define NDW_INSTALLFLAG_KNOWNCLASS 0x00080000 473 #define NDW_INSTALLFLAG_NEEDRESTART 0x00000080 474 #define NDW_INSTALLFLAG_NEEDREBOOT 0x00000100 475 #define SETDIRID_NOT_FULL_PATH 0x00000001 476 #define SP_COPY_DELETESOURCE 0x0000001 477 #define SP_COPY_REPLACEONLY 0x0000002 478 #define SP_COPY_NEWER 0x0000004 479 #define SP_COPY_NEWER_OR_SAME 0x0000004 480 #define SP_COPY_NOOVERWRITE 0x0000008 481 #define SP_COPY_NODECOMP 0x0000010 482 #define SP_COPY_LANGUAGEAWARE 0x0000020 483 #define SP_COPY_SOURCE_ABSOLUTE 0x0000040 484 #define SP_COPY_SOURCEPATH_ABSOLUTE 0x0000080 485 #define SP_COPY_IN_USE_NEEDS_REBOOT 0x0000100 486 #define SP_COPY_FORCE_IN_USE 0x0000200 487 #define SP_COPY_NOSKIP 0x0000400 488 #define SP_COPY_FORCE_NOOVERWRITE 0x0001000 489 #define SP_COPY_FORCE_NEWER 0x0002000 490 #define SP_COPY_WARNIFSKIP 0x0004000 491 #define SP_COPY_NOBROWSE 0x0008000 492 #define SP_COPY_NEWER_ONLY 0x0010000 493 #define SP_COPY_SOURCE_SIS_MASTER 0x0020000 494 #define SP_COPY_OEMINF_CATALOG_ONLY 0x0040000 495 #define SP_COPY_REPLACE_BOOT_FILE 0x0080000 496 #define SP_COPY_NOPRUNE 0x0100000 497 #define SP_FLAG_CABINETCONTINUATION 0x0000800 498 #define SPCRP_SECURITY 23 499 #define SPCRP_SECURITY_SDS 24 500 #define SPCRP_DEVTYPE 25 501 #define SPCRP_EXCLUSIVE 26 502 #define SPCRP_CHARACTERISTICS 27 503 #define SPCRP_MAXIMUM_PROPERTY 28 504 #define SPDIT_NODRIVER 0 505 #define SPDIT_CLASSDRIVER 1 506 #define SPDIT_COMPATDRIVER 2 507 #define SPDRP_DEVICEDESC 0 508 #define SPDRP_HARDWAREID 1 509 #define SPDRP_COMPATIBLEIDS 2 510 #define SPDRP_UNUSED0 3 511 #define SPDRP_SERVICE 4 512 #define SPDRP_UNUSED1 5 513 #define SPDRP_UNUSED2 6 514 #define SPDRP_CLASS 7 515 #define SPDRP_CLASSGUID 8 516 #define SPDRP_DRIVER 9 517 #define SPDRP_CONFIGFLAGS 10 518 #define SPDRP_MFG 11 519 #define SPDRP_FRIENDLYNAME 12 520 #define SPDRP_LOCATION_INFORMATION 13 521 #define SPDRP_PHYSICAL_DEVICE_OBJECT_NAME 14 522 #define SPDRP_CAPABILITIES 15 523 #define SPDRP_UI_NUMBER 16 524 #define SPDRP_UPPERFILTERS 17 525 #define SPDRP_LOWERFILTERS 18 526 #define SPDRP_BUSTYPEGUID 19 527 #define SPDRP_LEGACYBUSTYPE 20 528 #define SPDRP_BUSNUMBER 21 529 #define SPDRP_ENUMERATOR_NAME 22 530 #define SPDRP_SECURITY 23 531 #define SPDRP_SECURITY_SDS 24 532 #define SPDRP_DEVTYPE 25 533 #define SPDRP_EXCLUSIVE 26 534 #define SPDRP_CHARACTERISTICS 27 535 #define SPDRP_ADDRESS 28 536 #define SPDRP_UI_NUMBER_DESC_FORMAT 29 537 #define SPDRP_DEVICE_POWER_DATA 30 538 #define SPDRP_REMOVAL_POLICY 31 539 #define SPDRP_REMOVAL_POLICY_HW_DEFAULT 32 540 #define SPDRP_REMOVAL_POLICY_OVERRIDE 33 541 #define SPDRP_INSTALL_STATE 34 542 #define SPDRP_MAXIMUM_PROPERTY 35 543 #define SPDSL_IGNORE_DISK 1 544 #define SPDSL_DISALLOW_NEGATIVE_ADJUST 2 545 546 #define SPFILENOTIFY_STARTQUEUE 1 547 #define SPFILENOTIFY_ENDQUEUE 2 548 #define SPFILENOTIFY_STARTSUBQUEUE 3 549 #define SPFILENOTIFY_ENDSUBQUEUE 4 550 #define SPFILENOTIFY_STARTDELETE 5 551 #define SPFILENOTIFY_ENDDELETE 6 552 #define SPFILENOTIFY_DELETEERROR 7 553 #define SPFILENOTIFY_STARTRENAME 8 554 #define SPFILENOTIFY_ENDRENAME 9 555 #define SPFILENOTIFY_RENAMEERROR 10 556 #define SPFILENOTIFY_STARTCOPY 11 557 #define SPFILENOTIFY_ENDCOPY 12 558 #define SPFILENOTIFY_COPYERROR 13 559 #define SPFILENOTIFY_NEEDMEDIA 14 560 #define SPFILENOTIFY_QUEUESCAN 15 561 #define SPFILENOTIFY_CABINETINFO 16 562 #define SPFILENOTIFY_FILEINCABINET 17 563 #define SPFILENOTIFY_NEEDNEWCABINET 18 564 #define SPFILENOTIFY_FILEEXTRACTED 19 565 #define SPFILENOTIFY_FILEOPDELAYED 20 566 #define SPFILENOTIFY_STARTBACKUP 21 567 #define SPFILENOTIFY_BACKUPERROR 22 568 #define SPFILENOTIFY_ENDBACKUP 23 569 #define SPFILENOTIFY_QUEUESCAN_EX 24 570 #define SPFILENOTIFY_STARTREGISTRATION 25 571 #define SPFILENOTIFY_ENDREGISTRATION 26 572 #define SPFILENOTIFY_LANGMISMATCH 0x00010000 573 #define SPFILENOTIFY_TARGETEXISTS 0x00020000 574 #define SPFILENOTIFY_TARGETNEWER 0x00040000 575 #define SPFILELOG_SYSTEMLOG 0x00000001 576 #define SPFILELOG_OEMFILE 0x00000001 577 #define SPFILELOG_FORCENEW 0x00000002 578 #define SPFILELOG_QUERYONLY 0x00000004 579 #define SPFILEQ_FILE_IN_USE 0x00000001 580 #define SPFILEQ_REBOOT_RECOMMENDED 0x00000002 581 #define SPFILEQ_REBOOT_IN_PROGRESS 0x00000004 582 #define SPINT_ACTIVE 0x00000001 583 #define SPINT_DEFAULT 0x00000002 584 #define SPINT_REMOVED 0x00000004 585 #define SPID_ACTIVE 0x00000001 586 #define SPID_DEFAULT 0x00000002 587 #define SPID_REMOVED 0x00000004 588 #define SPINST_LOGCONFIG 0x00000001 589 #define SPINST_INIFILES 0x00000002 590 #define SPINST_REGISTRY 0x00000004 591 #define SPINST_INI2REG 0x00000008 592 #define SPINST_FILES 0x00000010 593 #define SPINST_BITREG 0x00000020 594 #define SPINST_REGSVR 0x00000040 595 #define SPINST_UNREGSVR 0x00000080 596 #define SPINST_PROFILEITEMS 0x00000100 597 #if (_SETUPAPI_VER >= 0x0501) 598 #define SPINST_COPYINF 0x00000200 599 #define SPINST_ALL 0x000003ff 600 #else 601 #define SPINST_ALL 0x000001ff 602 #endif 603 #define SPINST_SINGLESECTION 0x00010000 604 #define SPINST_LOGCONFIG_IS_FORCED 0x00020000 605 #define SPINST_LOGCONFIGS_ARE_OVERRIDES 0x00040000 606 #if (_SETUPAPI_VER >= 0x0501) 607 #define SPINST_REGISTERCALLBACKAWARE 0x00080000 608 #endif 609 #define SPOST_NONE 0 610 #define SPOST_PATH 1 611 #define SPOST_URL 2 612 #define SPOST_MAX 3 613 #define SPPSR_SELECT_DEVICE_RESOURCES 1 614 #define SPPSR_ENUM_BASIC_DEVICE_PROPERTIES 2 615 #define SPPSR_ENUM_ADV_DEVICE_PROPERTIES 3 616 #define SPQ_SCAN_FILE_PRESENCE 0x00000001 617 #define SPQ_DELAYED_COPY 0x00000001 618 #define SPQ_SCAN_FILE_VALIDITY 0x00000002 619 #define SPQ_SCAN_USE_CALLBACK 0x00000004 620 #define SPQ_SCAN_USE_CALLBACKEX 0x00000008 621 #define SPQ_SCAN_INFORM_USER 0x00000010 622 #define SPQ_SCAN_PRUNE_COPY_QUEUE 0x00000020 623 #define SPRDI_FIND_DUPS 0x00000001 624 625 #define SPSVCINST_TAGTOFRONT 0x00000001 626 #define SPSVCINST_ASSOCSERVICE 0x00000002 627 #define SPSVCINST_DELETEEVENTLOGENTRY 0x00000004 628 #define SPSVCINST_NOCLOBBER_DISPLAYNAME 0x00000008 629 #define SPSVCINST_NOCLOBBER_STARTTYPE 0x00000010 630 #define SPSVCINST_NOCLOBBER_ERRORCONTROL 0x00000020 631 #define SPSVCINST_NOCLOBBER_LOADORDERGROUP 0x00000040 632 #define SPSVCINST_NOCLOBBER_DEPENDENCIES 0x00000080 633 #define SPSVCINST_NOCLOBBER_DESCRIPTION 0x00000100 634 #define SPSVCINST_STOPSERVICE 0x00000200 635 #define SPSVCINST_CLOBBER_SECURITY 0x00000400 636 #define SPSVCINST_STARTSERVICE 0x00000800 637 638 #define SPWPT_SELECTDEVICE 0x00000001 639 #define SPWP_USE_DEVINFO_DATA 0x00000001 640 #define SRCINFO_PATH 1 641 #define SRCINFO_TAGFILE 2 642 #define SRCINFO_DESCRIPTION 3 643 #define SRCINFO_FLAGS 4 644 #define SRCLIST_TEMPORARY 0x00000001 645 #define SRCLIST_NOBROWSE 0x00000002 646 #define SRCLIST_SYSTEM 0x00000010 647 #define SRCLIST_USER 0x00000020 648 #define SRCLIST_SYSIFADMIN 0x00000040 649 #define SRCLIST_SUBDIRS 0x00000100 650 #define SRCLIST_APPEND 0x00000200 651 #define SRCLIST_NOSTRIPPLATFORM 0x00000400 652 #define SPREG_SUCCESS 0x00000000 653 #define SPREG_LOADLIBRARY 0x00000001 654 #define SPREG_GETPROCADDR 0x00000002 655 #define SPREG_REGSVR 0x00000003 656 #define SPREG_DLLINSTALL 0x00000004 657 #define SPREG_TIMEOUT 0x00000005 658 #define SPREG_UNKNOWN 0xFFFFFFFF 659 660 /* Flags for StringTableAddString and StringTableLookUpString */ 661 #define ST_CASE_SENSITIVE_COMPARE 0x00000001 662 663 /* SetupUninstallOEMInf Flags values */ 664 #define SUOI_FORCEDELETE 0x00000001 665 666 #ifndef RC_INVOKED 667 typedef PVOID HINF; 668 typedef PVOID HDSKSPC; 669 typedef PVOID HDEVINFO; 670 typedef PVOID HSPFILEQ; 671 typedef PVOID HSPFILELOG; 672 typedef UINT DI_FUNCTION; 673 674 typedef PVOID HSTRING_TABLE; 675 676 typedef enum { 677 SetupFileLogSourceFilename, 678 SetupFileLogChecksum, 679 SetupFileLogDiskTagfile, 680 SetupFileLogDiskDescription, 681 SetupFileLogOtherInfo, 682 SetupFileLogMax 683 } SetupFileLogInfo; 684 typedef struct _INFCONTEXT { 685 PVOID Inf; 686 PVOID CurrentInf; 687 UINT Section; 688 UINT Line; 689 } INFCONTEXT, *PINFCONTEXT; 690 typedef struct _SP_INF_INFORMATION { 691 DWORD InfStyle; 692 DWORD InfCount; 693 BYTE VersionData[ANYSIZE_ARRAY]; 694 } SP_INF_INFORMATION, *PSP_INF_INFORMATION; 695 typedef struct _SP_INF_SIGNER_INFO_A { 696 DWORD cbSize; 697 CHAR CatalogFile; 698 CHAR DigitalSigner; 699 CHAR DigitalSignerVersion; 700 } SP_INF_SIGNER_INFO_A, *PSP_INF_SIGNER_INFO_A; 701 typedef struct _SP_INF_SIGNER_INFO_W { 702 DWORD cbSize; 703 WCHAR CatalogFile; 704 WCHAR DigitalSigner; 705 WCHAR DigitalSignerVersion; 706 } SP_INF_SIGNER_INFO_W, *PSP_INF_SIGNER_INFO_W; 707 typedef struct _SP_ALTPLATFORM_INFO_V1 { 708 DWORD cbSize; 709 DWORD Platform; 710 DWORD MajorVersion; 711 DWORD MinorVersion; 712 WORD ProcessorArchitecture; 713 WORD Reserved; 714 } SP_ALTPLATFORM_INFO_V1, *PSP_ALTPLATFORM_INFO_V1; 715 typedef struct _SP_ALTPLATFORM_INFO_V2 { 716 DWORD cbSize; 717 DWORD Platform; 718 DWORD MajorVersion; 719 DWORD MinorVersion; 720 WORD ProcessorArchitecture; 721 union 722 { 723 WORD Reserved; 724 WORD Flags; 725 } DUMMYUNIONNAME; 726 DWORD FirstValidatedMajorVersion; 727 DWORD FirstValidatedMinorVersion; 728 } SP_ALTPLATFORM_INFO_V2, *PSP_ALTPLATFORM_INFO_V2; 729 #if _WIN32_WINNT <= 0x0500 730 typedef SP_ALTPLATFORM_INFO_V1 SP_ALTPLATFORM_INFO; 731 typedef PSP_ALTPLATFORM_INFO_V1 PSP_ALTPLATFORM_INFO; 732 #else 733 typedef SP_ALTPLATFORM_INFO_V2 SP_ALTPLATFORM_INFO; 734 typedef PSP_ALTPLATFORM_INFO_V2 PSP_ALTPLATFORM_INFO; 735 #endif 736 typedef struct _SP_ORIGINAL_FILE_INFO_A { 737 DWORD cbSize; 738 CHAR OriginalInfName[MAX_PATH]; 739 CHAR OriginalCatalogName[MAX_PATH]; 740 } SP_ORIGINAL_FILE_INFO_A, *PSP_ORIGINAL_FILE_INFO_A; 741 typedef struct _SP_ORIGINAL_FILE_INFO_W { 742 DWORD cbSize; 743 WCHAR OriginalInfName[MAX_PATH]; 744 WCHAR OriginalCatalogName[MAX_PATH]; 745 } SP_ORIGINAL_FILE_INFO_W, *PSP_ORIGINAL_FILE_INFO_W; 746 typedef struct _FILEPATHS_A { 747 PCSTR Target; 748 PCSTR Source; 749 UINT Win32Error; 750 DWORD Flags; 751 } FILEPATHS_A, *PFILEPATHS_A; 752 typedef struct _FILEPATHS_W { 753 PCWSTR Target; 754 PCWSTR Source; 755 UINT Win32Error; 756 DWORD Flags; 757 } FILEPATHS_W, *PFILEPATHS_W; 758 typedef struct _SOURCE_MEDIA_A { 759 PCSTR Reserved; 760 PCSTR Tagfile; 761 PCSTR Description; 762 PCSTR SourcePath; 763 PCSTR SourceFile; 764 DWORD Flags; 765 } SOURCE_MEDIA_A, *PSOURCE_MEDIA_A; 766 typedef struct _SOURCE_MEDIA_W { 767 PCWSTR Reserved; 768 PCWSTR Tagfile; 769 PCWSTR Description; 770 PCWSTR SourcePath; 771 PCWSTR SourceFile; 772 DWORD Flags; 773 } SOURCE_MEDIA_W, *PSOURCE_MEDIA_W; 774 typedef struct _CABINET_INFO_A { 775 PCSTR CabinetPath; 776 PCSTR CabinetFile; 777 PCSTR DiskName; 778 USHORT SetId; 779 USHORT CabinetNumber; 780 } CABINET_INFO_A, *PCABINET_INFO_A; 781 typedef struct _CABINET_INFO_W { 782 PCWSTR CabinetPath; 783 PCWSTR CabinetFile; 784 PCWSTR DiskName; 785 USHORT SetId; 786 USHORT CabinetNumber; 787 } CABINET_INFO_W, *PCABINET_INFO_W; 788 typedef struct _FILE_IN_CABINET_INFO_A { 789 PCSTR NameInCabinet; 790 DWORD FileSize; 791 DWORD Win32Error; 792 WORD DosDate; 793 WORD DosTime; 794 WORD DosAttribs; 795 CHAR FullTargetName[MAX_PATH]; 796 } FILE_IN_CABINET_INFO_A, *PFILE_IN_CABINET_INFO_A; 797 typedef struct _FILE_IN_CABINET_INFO_W { 798 PCWSTR NameInCabinet; 799 DWORD FileSize; 800 DWORD Win32Error; 801 WORD DosDate; 802 WORD DosTime; 803 WORD DosAttribs; 804 WCHAR FullTargetName[MAX_PATH]; 805 } FILE_IN_CABINET_INFO_W, *PFILE_IN_CABINET_INFO_W; 806 typedef struct _SP_FILE_COPY_PARAMS_A { 807 DWORD cbSize; 808 HSPFILEQ QueueHandle; 809 PCSTR SourceRootPath; 810 PCSTR SourcePath; 811 PCSTR SourceFilename; 812 PCSTR SourceDescription; 813 PCSTR SourceTagfile; 814 PCSTR TargetDirectory; 815 PCSTR TargetFilename; 816 DWORD CopyStyle; 817 HINF LayoutInf; 818 PCSTR SecurityDescriptor; 819 } SP_FILE_COPY_PARAMS_A, *PSP_FILE_COPY_PARAMS_A; 820 typedef struct _SP_FILE_COPY_PARAMS_W { 821 DWORD cbSize; 822 HSPFILEQ QueueHandle; 823 PCWSTR SourceRootPath; 824 PCWSTR SourcePath; 825 PCWSTR SourceFilename; 826 PCWSTR SourceDescription; 827 PCWSTR SourceTagfile; 828 PCWSTR TargetDirectory; 829 PCWSTR TargetFilename; 830 DWORD CopyStyle; 831 HINF LayoutInf; 832 PCWSTR SecurityDescriptor; 833 } SP_FILE_COPY_PARAMS_W, *PSP_FILE_COPY_PARAMS_W; 834 typedef struct _SP_DEVINFO_DATA { 835 DWORD cbSize; 836 GUID ClassGuid; 837 DWORD DevInst; 838 ULONG_PTR Reserved; 839 } SP_DEVINFO_DATA, *PSP_DEVINFO_DATA; 840 typedef struct _SP_DEVICE_INTERFACE_DATA { 841 DWORD cbSize; 842 GUID InterfaceClassGuid; 843 DWORD Flags; 844 ULONG_PTR Reserved; 845 } SP_DEVICE_INTERFACE_DATA, *PSP_DEVICE_INTERFACE_DATA; 846 /* For backward compatability */ 847 typedef SP_DEVICE_INTERFACE_DATA SP_INTERFACE_DEVICE_DATA, *PSP_INTERFACE_DEVICE_DATA; 848 849 typedef struct _SP_DEVICE_INTERFACE_DETAIL_DATA_A { 850 DWORD cbSize; 851 CHAR DevicePath[ANYSIZE_ARRAY]; 852 } SP_DEVICE_INTERFACE_DETAIL_DATA_A, *PSP_DEVICE_INTERFACE_DETAIL_DATA_A; 853 typedef struct _SP_DEVICE_INTERFACE_DETAIL_DATA_W { 854 DWORD cbSize; 855 WCHAR DevicePath[ANYSIZE_ARRAY]; 856 } SP_DEVICE_INTERFACE_DETAIL_DATA_W, *PSP_DEVICE_INTERFACE_DETAIL_DATA_W; 857 /* For backward compatability */ 858 typedef SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA_A, 859 *PSP_INTERFACE_DEVICE_DETAIL_DATA_A; 860 typedef SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA_W, 861 *PSP_INTERFACE_DEVICE_DETAIL_DATA_W; 862 863 typedef struct _SP_DEVINFO_LIST_DETAIL_DATA_A { 864 DWORD cbSize; 865 GUID ClassGuid; 866 HANDLE RemoteMachineHandle; 867 CHAR RemoteMachineName[SP_MAX_MACHINENAME_LENGTH]; 868 } SP_DEVINFO_LIST_DETAIL_DATA_A, *PSP_DEVINFO_LIST_DETAIL_DATA_A; 869 typedef struct _SP_DEVINFO_LIST_DETAIL_DATA_W { 870 DWORD cbSize; 871 GUID ClassGuid; 872 HANDLE RemoteMachineHandle; 873 WCHAR RemoteMachineName[SP_MAX_MACHINENAME_LENGTH]; 874 } SP_DEVINFO_LIST_DETAIL_DATA_W, *PSP_DEVINFO_LIST_DETAIL_DATA_W; 875 876 typedef UINT (CALLBACK* PSP_FILE_CALLBACK_A)(PVOID,UINT,UINT_PTR,UINT_PTR); 877 typedef UINT (CALLBACK* PSP_FILE_CALLBACK_W)(PVOID,UINT,UINT_PTR,UINT_PTR); 878 typedef struct _SP_DEVINSTALL_PARAMS_A { 879 DWORD cbSize; 880 DWORD Flags; 881 DWORD FlagsEx; 882 HWND hwndParent; 883 PSP_FILE_CALLBACK_A InstallMsgHandler; 884 PVOID InstallMsgHandlerContext; 885 HSPFILEQ FileQueue; 886 ULONG_PTR ClassInstallReserved; 887 DWORD Reserved; 888 CHAR DriverPath[MAX_PATH]; 889 } SP_DEVINSTALL_PARAMS_A, *PSP_DEVINSTALL_PARAMS_A; 890 typedef struct _SP_DEVINSTALL_PARAMS_W { 891 DWORD cbSize; 892 DWORD Flags; 893 DWORD FlagsEx; 894 HWND hwndParent; 895 PSP_FILE_CALLBACK_W InstallMsgHandler; 896 PVOID InstallMsgHandlerContext; 897 HSPFILEQ FileQueue; 898 ULONG_PTR ClassInstallReserved; 899 DWORD Reserved; 900 WCHAR DriverPath[MAX_PATH]; 901 } SP_DEVINSTALL_PARAMS_W, *PSP_DEVINSTALL_PARAMS_W; 902 typedef struct _SP_CLASSINSTALL_HEADER { 903 DWORD cbSize; 904 DI_FUNCTION InstallFunction; 905 } SP_CLASSINSTALL_HEADER, *PSP_CLASSINSTALL_HEADER; 906 typedef struct _SP_ENABLECLASS_PARAMS { 907 SP_CLASSINSTALL_HEADER ClassInstallHeader; 908 GUID ClassGuid; 909 DWORD EnableMessage; 910 } SP_ENABLECLASS_PARAMS, *PSP_ENABLECLASS_PARAMS; 911 typedef struct _SP_MOVEDEV_PARAMS { 912 SP_CLASSINSTALL_HEADER ClassInstallHeader; 913 SP_DEVINFO_DATA SourceDeviceInfoData; 914 } SP_MOVEDEV_PARAMS, *PSP_MOVEDEV_PARAMS; 915 typedef struct _SP_PROPCHANGE_PARAMS { 916 SP_CLASSINSTALL_HEADER ClassInstallHeader; 917 DWORD StateChange; 918 DWORD Scope; 919 DWORD HwProfile; 920 } SP_PROPCHANGE_PARAMS, *PSP_PROPCHANGE_PARAMS; 921 typedef struct _SP_REMOVEDEVICE_PARAMS { 922 SP_CLASSINSTALL_HEADER ClassInstallHeader; 923 DWORD Scope; 924 DWORD HwProfile; 925 } SP_REMOVEDEVICE_PARAMS, *PSP_REMOVEDEVICE_PARAMS; 926 typedef struct _SP_UNREMOVEDEVICE_PARAMS { 927 SP_CLASSINSTALL_HEADER ClassInstallHeader; 928 DWORD Scope; 929 DWORD HwProfile; 930 } SP_UNREMOVEDEVICE_PARAMS, *PSP_UNREMOVEDEVICE_PARAMS; 931 typedef struct _SP_SELECTDEVICE_PARAMS_A { 932 SP_CLASSINSTALL_HEADER ClassInstallHeader; 933 CHAR Title[MAX_TITLE_LEN]; 934 CHAR Instructions[MAX_INSTRUCTION_LEN]; 935 CHAR ListLabel[MAX_LABEL_LEN]; 936 CHAR SubTitle[MAX_SUBTITLE_LEN]; 937 BYTE Reserved[2]; 938 } SP_SELECTDEVICE_PARAMS_A, *PSP_SELECTDEVICE_PARAMS_A; 939 typedef struct _SP_SELECTDEVICE_PARAMS_W { 940 SP_CLASSINSTALL_HEADER ClassInstallHeader; 941 WCHAR Title[MAX_TITLE_LEN]; 942 WCHAR Instructions[MAX_INSTRUCTION_LEN]; 943 WCHAR ListLabel[MAX_LABEL_LEN]; 944 WCHAR SubTitle[MAX_SUBTITLE_LEN]; 945 } SP_SELECTDEVICE_PARAMS_W, *PSP_SELECTDEVICE_PARAMS_W; 946 typedef struct _SP_REGISTER_CONTROL_STATUSA { 947 DWORD cbSize; 948 PCSTR FileName; 949 DWORD Win32Error; 950 DWORD FailureCode; 951 } SP_REGISTER_CONTROL_STATUSA, *PSP_REGISTER_CONTROL_STATUSA; 952 typedef struct _SP_REGISTER_CONTROL_STATUSW { 953 DWORD cbSize; 954 PCWSTR FileName; 955 DWORD Win32Error; 956 DWORD FailureCode; 957 } SP_REGISTER_CONTROL_STATUSW, *PSP_REGISTER_CONTROL_STATUSW; 958 959 typedef BOOL (CALLBACK* PDETECT_PROGRESS_NOTIFY)(PVOID,DWORD); 960 typedef struct _SP_DETECTDEVICE_PARAMS { 961 SP_CLASSINSTALL_HEADER ClassInstallHeader; 962 PDETECT_PROGRESS_NOTIFY DetectProgressNotify; 963 PVOID ProgressNotifyParam; 964 } SP_DETECTDEVICE_PARAMS, *PSP_DETECTDEVICE_PARAMS; 965 typedef struct _SP_INSTALLWIZARD_DATA { 966 SP_CLASSINSTALL_HEADER ClassInstallHeader; 967 DWORD Flags; 968 HPROPSHEETPAGE DynamicPages[MAX_INSTALLWIZARD_DYNAPAGES]; 969 DWORD NumDynamicPages; 970 DWORD DynamicPageFlags; 971 DWORD PrivateFlags; 972 LPARAM PrivateData; 973 HWND hwndWizardDlg; 974 } SP_INSTALLWIZARD_DATA, *PSP_INSTALLWIZARD_DATA; 975 typedef struct _SP_NEWDEVICEWIZARD_DATA { 976 SP_CLASSINSTALL_HEADER ClassInstallHeader; 977 DWORD Flags; 978 HPROPSHEETPAGE DynamicPages[MAX_INSTALLWIZARD_DYNAPAGES]; 979 DWORD NumDynamicPages; 980 HWND hwndWizardDlg; 981 } SP_NEWDEVICEWIZARD_DATA, *PSP_NEWDEVICEWIZARD_DATA; 982 typedef SP_NEWDEVICEWIZARD_DATA SP_ADDPROPERTYPAGE_DATA, 983 *PSP_ADDPROPERTYPAGE_DATA; 984 typedef struct _SP_TROUBLESHOOTER_PARAMS_A { 985 SP_CLASSINSTALL_HEADER ClassInstallHeader; 986 CHAR ChmFile[MAX_PATH]; 987 CHAR HtmlTroubleShooter[MAX_PATH]; 988 } SP_TROUBLESHOOTER_PARAMS_A, *PSP_TROUBLESHOOTER_PARAMS_A; 989 typedef struct _SP_TROUBLESHOOTER_PARAMS_W { 990 SP_CLASSINSTALL_HEADER ClassInstallHeader; 991 WCHAR ChmFile[MAX_PATH]; 992 WCHAR HtmlTroubleShooter[MAX_PATH]; 993 } SP_TROUBLESHOOTER_PARAMS_W, *PSP_TROUBLESHOOTER_PARAMS_W; 994 typedef struct _SP_POWERMESSAGEWAKE_PARAMS_A { 995 SP_CLASSINSTALL_HEADER ClassInstallHeader; 996 CHAR PowerMessageWake[LINE_LEN*2]; 997 } SP_POWERMESSAGEWAKE_PARAMS_A, *PSP_POWERMESSAGEWAKE_PARAMS_A; 998 typedef struct _SP_POWERMESSAGEWAKE_PARAMS_W { 999 SP_CLASSINSTALL_HEADER ClassInstallHeader; 1000 WCHAR PowerMessageWake[LINE_LEN*2]; 1001 } SP_POWERMESSAGEWAKE_PARAMS_W, *PSP_POWERMESSAGEWAKE_PARAMS_W; 1002 typedef struct _SP_DRVINFO_DATA_V2_A { 1003 DWORD cbSize; 1004 DWORD DriverType; 1005 ULONG_PTR Reserved; 1006 CHAR Description[LINE_LEN]; 1007 CHAR MfgName[LINE_LEN]; 1008 CHAR ProviderName[LINE_LEN]; 1009 FILETIME DriverDate; 1010 DWORDLONG DriverVersion; 1011 } SP_DRVINFO_DATA_V2_A, *PSP_DRVINFO_DATA_V2_A; 1012 typedef struct _SP_DRVINFO_DATA_V2_W { 1013 DWORD cbSize; 1014 DWORD DriverType; 1015 ULONG_PTR Reserved; 1016 WCHAR Description[LINE_LEN]; 1017 WCHAR MfgName[LINE_LEN]; 1018 WCHAR ProviderName[LINE_LEN]; 1019 FILETIME DriverDate; 1020 DWORDLONG DriverVersion; 1021 } SP_DRVINFO_DATA_V2_W, *PSP_DRVINFO_DATA_V2_W; 1022 typedef struct _SP_DRVINFO_DATA_V1_A { 1023 DWORD cbSize; 1024 DWORD DriverType; 1025 ULONG_PTR Reserved; 1026 CHAR Description[LINE_LEN]; 1027 CHAR MfgName[LINE_LEN]; 1028 CHAR ProviderName[LINE_LEN]; 1029 } SP_DRVINFO_DATA_V1_A, *PSP_DRVINFO_DATA_V1_A; 1030 typedef struct _SP_DRVINFO_DATA_V1_W { 1031 DWORD cbSize; 1032 DWORD DriverType; 1033 ULONG_PTR Reserved; 1034 WCHAR Description[LINE_LEN]; 1035 WCHAR MfgName[LINE_LEN]; 1036 WCHAR ProviderName[LINE_LEN]; 1037 } SP_DRVINFO_DATA_V1_W, *PSP_DRVINFO_DATA_V1_W; 1038 1039 #ifdef UNICODE 1040 typedef SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_V1, *PSP_DRVINFO_DATA_V1; 1041 typedef SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_V2, *PSP_DRVINFO_DATA_V2; 1042 #else 1043 typedef SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_V1, *PSP_DRVINFO_DATA_V1; 1044 typedef SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_V2, *PSP_DRVINFO_DATA_V2; 1045 #endif 1046 1047 #if USE_SP_DRVINFO_DATA_V1 1048 typedef SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_A, *PSP_DRVINFO_DATA_A; 1049 typedef SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_W, *PSP_DRVINFO_DATA_W; 1050 typedef SP_DRVINFO_DATA_V1 SP_DRVINFO_DATA, *PSP_DRVINFO_DATA; 1051 #else 1052 typedef SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_A, *PSP_DRVINFO_DATA_A; 1053 typedef SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_W, *PSP_DRVINFO_DATA_W; 1054 typedef SP_DRVINFO_DATA_V2 SP_DRVINFO_DATA, *PSP_DRVINFO_DATA; 1055 #endif 1056 1057 typedef DWORD (CALLBACK* PSP_DETSIG_CMPPROC)(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINFO_DATA,PVOID); 1058 1059 typedef struct _SP_DRVINFO_DETAIL_DATA_A { 1060 DWORD cbSize; 1061 FILETIME InfDate; 1062 DWORD CompatIDsOffset; 1063 DWORD CompatIDsLength; 1064 ULONG_PTR Reserved; 1065 CHAR SectionName[LINE_LEN]; 1066 CHAR InfFileName[MAX_PATH]; 1067 CHAR DrvDescription[LINE_LEN]; 1068 CHAR HardwareID[ANYSIZE_ARRAY]; 1069 } SP_DRVINFO_DETAIL_DATA_A, *PSP_DRVINFO_DETAIL_DATA_A; 1070 typedef struct _SP_DRVINFO_DETAIL_DATA_W { 1071 DWORD cbSize; 1072 FILETIME InfDate; 1073 DWORD CompatIDsOffset; 1074 DWORD CompatIDsLength; 1075 ULONG_PTR Reserved; 1076 WCHAR SectionName[LINE_LEN]; 1077 WCHAR InfFileName[MAX_PATH]; 1078 WCHAR DrvDescription[LINE_LEN]; 1079 WCHAR HardwareID[ANYSIZE_ARRAY]; 1080 } SP_DRVINFO_DETAIL_DATA_W, *PSP_DRVINFO_DETAIL_DATA_W; 1081 typedef struct _SP_DRVINSTALL_PARAMS { 1082 DWORD cbSize; 1083 DWORD Rank; 1084 DWORD Flags; 1085 DWORD_PTR PrivateData; 1086 DWORD Reserved; 1087 } SP_DRVINSTALL_PARAMS, *PSP_DRVINSTALL_PARAMS; 1088 1089 1090 typedef struct _COINSTALLER_CONTEXT_DATA { 1091 BOOL PostProcessing; 1092 DWORD InstallResult; 1093 PVOID PrivateData; 1094 } COINSTALLER_CONTEXT_DATA, *PCOINSTALLER_CONTEXT_DATA; 1095 typedef struct _SP_CLASSIMAGELIST_DATA { 1096 DWORD cbSize; 1097 HIMAGELIST ImageList; 1098 ULONG_PTR Reserved; 1099 } SP_CLASSIMAGELIST_DATA, *PSP_CLASSIMAGELIST_DATA; 1100 typedef struct _SP_PROPSHEETPAGE_REQUEST { 1101 DWORD cbSize; 1102 DWORD PageRequested; 1103 HDEVINFO DeviceInfoSet; 1104 PSP_DEVINFO_DATA DeviceInfoData; 1105 } SP_PROPSHEETPAGE_REQUEST, *PSP_PROPSHEETPAGE_REQUEST; 1106 typedef struct _SP_BACKUP_QUEUE_PARAMS_A { 1107 DWORD cbSize; 1108 CHAR FullInfPath[MAX_PATH]; 1109 INT FilenameOffset; 1110 } SP_BACKUP_QUEUE_PARAMS_A, *PSP_BACKUP_QUEUE_PARAMS_A; 1111 typedef struct _SP_BACKUP_QUEUE_PARAMS_W { 1112 DWORD cbSize; 1113 WCHAR FullInfPath[MAX_PATH]; 1114 INT FilenameOffset; 1115 } SP_BACKUP_QUEUE_PARAMS_W, *PSP_BACKUP_QUEUE_PARAMS_W; 1116 1117 1118 #ifdef UNICODE 1119 typedef SP_ORIGINAL_FILE_INFO_W SP_ORIGINAL_FILE_INFO, *PSP_ORIGINAL_FILE_INFO; 1120 typedef FILEPATHS_W FILEPATHS, *PFILEPATHS; 1121 typedef SOURCE_MEDIA_W SOURCE_MEDIA, *PSOURCE_MEDIA; 1122 typedef CABINET_INFO_W CABINET_INFO, *PCABINET_INFO; 1123 typedef FILE_IN_CABINET_INFO_W FILE_IN_CABINET_INFO, *PFILE_IN_CABINET_INFO; 1124 typedef SP_FILE_COPY_PARAMS_W SP_FILE_COPY_PARAMS, PSP_FILE_COPY_PARAMS; 1125 typedef SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_DEVICE_INTERFACE_DETAIL_DATA, 1126 *PSP_DEVICE_INTERFACE_DETAIL_DATA; 1127 typedef SP_INTERFACE_DEVICE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA, 1128 *PSP_INTERFACE_DEVICE_DETAIL_DATA; /* deprecated */ 1129 typedef SP_DEVINFO_LIST_DETAIL_DATA_W SP_DEVINFO_LIST_DETAIL_DATA, 1130 *PSP_DEVINFO_LIST_DETAIL_DATA; 1131 typedef SP_DEVINSTALL_PARAMS_W SP_DEVINSTALL_PARAMS, *PSP_DEVINSTALL_PARAMS; 1132 typedef SP_SELECTDEVICE_PARAMS_W SP_SELECTDEVICE_PARAMS, *PSP_SELECTDEVICE_PARAMS; 1133 typedef SP_TROUBLESHOOTER_PARAMS_W SP_TROUBLESHOOTER_PARAMS, 1134 *PSP_TROUBLESHOOTER_PARAMS; 1135 typedef SP_POWERMESSAGEWAKE_PARAMS_W SP_POWERMESSAGEWAKE_PARAMS, 1136 *PSP_POWERMESSAGEWAKE_PARAMS; 1137 typedef SP_DRVINFO_DETAIL_DATA_W SP_DRVINFO_DETAIL_DATA, 1138 *PSP_DRVINFO_DETAIL_DATA; 1139 typedef SP_BACKUP_QUEUE_PARAMS_W SP_BACKUP_QUEUE_PARAMS, 1140 *PSP_BACKUP_QUEUE_PARAMS; 1141 typedef SP_REGISTER_CONTROL_STATUSW SP_REGISTER_CONTROL_STATUS, *PSP_REGISTER_CONTROL_STATUS; 1142 #else 1143 typedef SP_ORIGINAL_FILE_INFO_A SP_ORIGINAL_FILE_INFO, *PSP_ORIGINAL_FILE_INFO; 1144 typedef FILEPATHS_A FILEPATHS, *PFILEPATHS; 1145 typedef SOURCE_MEDIA_A SOURCE_MEDIA, *PSOURCE_MEDIA; 1146 typedef CABINET_INFO_A CABINET_INFO, *PCABINET_INFO; 1147 typedef FILE_IN_CABINET_INFO_A FILE_IN_CABINET_INFO, *PFILE_IN_CABINET_INFO; 1148 typedef SP_FILE_COPY_PARAMS_A SP_FILE_COPY_PARAMS, *PSP_FILE_COPY_PARAMS; 1149 typedef SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_DEVICE_INTERFACE_DETAIL_DATA, 1150 *PSP_DEVICE_INTERFACE_DETAIL_DATA; 1151 typedef SP_INTERFACE_DEVICE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA, 1152 *PSP_INTERFACE_DEVICE_DETAIL_DATA; /* deprecated */ 1153 typedef SP_DEVINFO_LIST_DETAIL_DATA_A SP_DEVINFO_LIST_DETAIL_DATA, 1154 *PSP_DEVINFO_LIST_DETAIL_DATA; 1155 typedef SP_DEVINSTALL_PARAMS_A SP_DEVINSTALL_PARAMS, *PSP_DEVINSTALL_PARAMS; 1156 typedef SP_SELECTDEVICE_PARAMS_A SP_SELECTDEVICE_PARAMS, 1157 *PSP_SELECTDEVICE_PARAMS; 1158 typedef SP_TROUBLESHOOTER_PARAMS_A SP_TROUBLESHOOTER_PARAMS, 1159 *PSP_TROUBLESHOOTER_PARAMS; 1160 typedef SP_POWERMESSAGEWAKE_PARAMS_A SP_POWERMESSAGEWAKE_PARAMS, 1161 *PSP_POWERMESSAGEWAKE_PARAMS; 1162 typedef SP_DRVINFO_DETAIL_DATA_A SP_DRVINFO_DETAIL_DATA, 1163 *PSP_DRVINFO_DETAIL_DATA; 1164 typedef SP_BACKUP_QUEUE_PARAMS_A SP_BACKUP_QUEUE_PARAMS, 1165 *PSP_BACKUP_QUEUE_PARAMS; 1166 typedef SP_REGISTER_CONTROL_STATUSA SP_REGISTER_CONTROL_STATUS, *PSP_REGISTER_CONTROL_STATUS; 1167 #endif /* UNICODE */ 1168 1169 1170 WINSETUPAPI LONG WINAPI AddTagToGroupOrderList(PCWSTR, DWORD, DWORD); 1171 WINSETUPAPI VOID WINAPI AssertFail(LPSTR, UINT, LPSTR); 1172 WINSETUPAPI DWORD WINAPI CaptureStringArg(PCWSTR, PWSTR*); 1173 WINSETUPAPI BOOL WINAPI DelayedMove(PCWSTR, PCWSTR); 1174 WINSETUPAPI BOOL WINAPI DoesUserHavePrivilege(PCWSTR); 1175 WINSETUPAPI BOOL WINAPI FileExists(PCWSTR, PWIN32_FIND_DATAW); 1176 WINSETUPAPI DWORD WINAPI GetSetFileTimestamp(PCWSTR, PFILETIME, PFILETIME, PFILETIME, BOOLEAN); 1177 WINSETUPAPI VOID WINAPI InstallHinfSectionA(_In_ HWND, _In_ HINSTANCE, _In_ PCSTR, _In_ INT); 1178 WINSETUPAPI VOID WINAPI InstallHinfSectionW(_In_ HWND, _In_ HINSTANCE, _In_ PCWSTR, _In_ INT); 1179 WINSETUPAPI BOOL WINAPI IsUserAdmin(VOID); 1180 WINSETUPAPI VOID WINAPI MyFree(PVOID); 1181 WINSETUPAPI PVOID WINAPI MyMalloc(DWORD); 1182 WINSETUPAPI PVOID WINAPI MyRealloc(PVOID, DWORD); 1183 WINSETUPAPI LONG WINAPI QueryRegistryValue(HKEY, PCWSTR, PBYTE*, PDWORD, PDWORD); 1184 WINSETUPAPI DWORD WINAPI RetreiveFileSecurity(PCWSTR, PSECURITY_DESCRIPTOR*); 1185 1186 WINSETUPAPI BOOL WINAPI SetupAddInstallSectionToDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _Reserved_ PVOID, _Reserved_ UINT); 1187 WINSETUPAPI BOOL WINAPI SetupAddInstallSectionToDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _Reserved_ PVOID, _Reserved_ UINT); 1188 WINSETUPAPI BOOL WINAPI SetupAddSectionToDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 1189 WINSETUPAPI BOOL WINAPI SetupAddSectionToDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 1190 WINSETUPAPI BOOL WINAPI SetupAddToDiskSpaceListA(_In_ HDSKSPC, _In_ PCSTR, _In_ LONGLONG, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 1191 WINSETUPAPI BOOL WINAPI SetupAddToDiskSpaceListW(_In_ HDSKSPC, _In_ PCWSTR, _In_ LONGLONG, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 1192 WINSETUPAPI BOOL WINAPI SetupAddToSourceListA(_In_ DWORD, _In_ PCSTR); 1193 WINSETUPAPI BOOL WINAPI SetupAddToSourceListW(_In_ DWORD, _In_ PCWSTR); 1194 WINSETUPAPI BOOL WINAPI SetupAdjustDiskSpaceListA(_In_ HDSKSPC, _In_ LPCSTR, _In_ LONGLONG, _Reserved_ PVOID, _Reserved_ UINT); 1195 WINSETUPAPI BOOL WINAPI SetupAdjustDiskSpaceListW(_In_ HDSKSPC, _In_ LPCWSTR, _In_ LONGLONG, _Reserved_ PVOID, _Reserved_ UINT); 1196 WINSETUPAPI UINT WINAPI SetupBackupErrorA(_In_ HWND, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_ UINT, _In_ DWORD); 1197 WINSETUPAPI UINT WINAPI SetupBackupErrorW(_In_ HWND, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ UINT, _In_ DWORD); 1198 WINSETUPAPI BOOL WINAPI SetupCancelTemporary(VOID); 1199 WINSETUPAPI BOOL WINAPI SetupCloseFileQueue(_In_ HSPFILEQ); 1200 WINSETUPAPI VOID WINAPI SetupCloseInfFile(_In_ HINF); 1201 WINSETUPAPI VOID WINAPI SetupCloseLog(VOID); 1202 WINSETUPAPI BOOL WINAPI SetupCommitFileQueueA(_In_opt_ HWND, _In_ HSPFILEQ, _In_ PSP_FILE_CALLBACK_A, _In_ PVOID); 1203 WINSETUPAPI BOOL WINAPI SetupCommitFileQueueW(_In_opt_ HWND, _In_ HSPFILEQ, _In_ PSP_FILE_CALLBACK_W, _In_ PVOID); 1204 1205 WINSETUPAPI 1206 UINT 1207 WINAPI 1208 SetupCopyErrorA( 1209 _In_ HWND hwndParent, 1210 _In_opt_ PCSTR DialogTitle, 1211 _In_opt_ PCSTR DiskName, 1212 _In_ PCSTR PathToSource, 1213 _In_ PCSTR SourceFile, 1214 _In_opt_ PCSTR TargetPathFile, 1215 _In_ UINT Win32ErrorCode, 1216 _In_ DWORD Style, 1217 _Out_writes_opt_(PathBufferSize) PSTR PathBuffer, 1218 _In_ DWORD PathBufferSize, 1219 _Out_opt_ PDWORD PathRequiredSize); 1220 1221 WINSETUPAPI 1222 UINT 1223 WINAPI 1224 SetupCopyErrorW( 1225 _In_ HWND hwndParent, 1226 _In_opt_ PCWSTR DialogTitle, 1227 _In_opt_ PCWSTR DiskName, 1228 _In_ PCWSTR PathToSource, 1229 _In_ PCWSTR SourceFile, 1230 _In_opt_ PCWSTR TargetPathFile, 1231 _In_ UINT Win32ErrorCode, 1232 _In_ DWORD Style, 1233 _Out_writes_opt_(PathBufferSize) PWSTR PathBuffer, 1234 _In_ DWORD PathBufferSize, 1235 _Out_opt_ PDWORD PathRequiredSize); 1236 1237 WINSETUPAPI 1238 BOOL 1239 WINAPI 1240 SetupCopyOEMInfA( 1241 _In_ PCSTR SourceInfFileName, 1242 _In_opt_ PCSTR OEMSourceMediaLocation, 1243 _In_ DWORD OEMSourceMediaType, 1244 _In_ DWORD CopyStyle, 1245 _Out_writes_opt_(DestinationInfFileNameSize) PSTR DestinationInfFileName, 1246 _In_ DWORD DestinationInfFileNameSize, 1247 _Out_opt_ PDWORD RequiredSize, 1248 _Out_opt_ PSTR *DestinationInfFileNameComponent); 1249 1250 WINSETUPAPI 1251 BOOL 1252 WINAPI 1253 SetupCopyOEMInfW( 1254 _In_ PCWSTR SourceInfFileName, 1255 _In_opt_ PCWSTR OEMSourceMediaLocation, 1256 _In_ DWORD OEMSourceMediaType, 1257 _In_ DWORD CopyStyle, 1258 _Out_writes_opt_(DestinationInfFileNameSize) PWSTR DestinationInfFileName, 1259 _In_ DWORD DestinationInfFileNameSize, 1260 _Out_opt_ PDWORD RequiredSize, 1261 _Out_opt_ PWSTR *DestinationInfFileNameComponent); 1262 1263 WINSETUPAPI HDSKSPC WINAPI SetupCreateDiskSpaceListA(_Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT); 1264 WINSETUPAPI HDSKSPC WINAPI SetupCreateDiskSpaceListW(_Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT); 1265 WINSETUPAPI DWORD WINAPI SetupDecompressOrCopyFileA(_In_ PCSTR, _In_ PCSTR, _In_opt_ PUINT); 1266 WINSETUPAPI DWORD WINAPI SetupDecompressOrCopyFileW(_In_ PCWSTR, _In_ PCWSTR, _In_opt_ PUINT); 1267 WINSETUPAPI UINT WINAPI SetupDefaultQueueCallbackA(_In_ PVOID, _In_ UINT, _In_ UINT_PTR, _In_ UINT_PTR); 1268 WINSETUPAPI UINT WINAPI SetupDefaultQueueCallbackW(_In_ PVOID, _In_ UINT, _In_ UINT_PTR, _In_ UINT_PTR); 1269 WINSETUPAPI UINT WINAPI SetupDeleteErrorA(_In_ HWND, _In_opt_ PCSTR, _In_ PCSTR, _In_ UINT, _In_ DWORD); 1270 WINSETUPAPI UINT WINAPI SetupDeleteErrorW(_In_ HWND, _In_opt_ PCWSTR, _In_ PCWSTR, _In_ UINT, _In_ DWORD); 1271 WINSETUPAPI BOOL WINAPI SetupDestroyDiskSpaceList(_Inout_ HDSKSPC); 1272 WINSETUPAPI BOOL WINAPI SetupDiAskForOEMDisk(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA); 1273 1274 _Success_(return != FALSE) 1275 WINSETUPAPI 1276 BOOL 1277 WINAPI 1278 SetupDiBuildClassInfoList( 1279 _In_ DWORD Flags, 1280 _Out_writes_to_opt_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1281 _In_ DWORD ClassGuidListSize, 1282 _Out_ PDWORD RequiredSize); 1283 1284 _Success_(return != FALSE) 1285 WINSETUPAPI 1286 BOOL 1287 WINAPI 1288 SetupDiBuildClassInfoListExA( 1289 _In_ DWORD Flags, 1290 _Out_writes_to_opt_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1291 _In_ DWORD ClassGuidListSize, 1292 _Out_ PDWORD RequiredSize, 1293 _In_opt_ PCSTR MachineName, 1294 _Reserved_ PVOID Reserved); 1295 1296 _Success_(return != FALSE) 1297 WINSETUPAPI 1298 BOOL 1299 WINAPI 1300 SetupDiBuildClassInfoListExW( 1301 _In_ DWORD Flags, 1302 _Out_writes_to_opt_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1303 _In_ DWORD ClassGuidListSize, 1304 _Out_ PDWORD RequiredSize, 1305 _In_opt_ PCWSTR MachineName, 1306 _Reserved_ PVOID Reserved); 1307 1308 WINSETUPAPI BOOL WINAPI SetupDiBuildDriverInfoList(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA, _In_ DWORD); 1309 WINSETUPAPI BOOL WINAPI SetupDiCallClassInstaller(_In_ DI_FUNCTION, _In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA); 1310 WINSETUPAPI BOOL WINAPI SetupDiCancelDriverInfoSearch(_In_ HDEVINFO); 1311 WINSETUPAPI BOOL WINAPI SetupDiChangeState(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA); 1312 1313 _Success_(return != FALSE) 1314 WINSETUPAPI 1315 BOOL 1316 WINAPI 1317 SetupDiClassGuidsFromNameA( 1318 _In_ PCSTR ClassName, 1319 _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1320 _In_ DWORD ClassGuidListSize, 1321 _Out_ PDWORD RequiredSize); 1322 1323 _Success_(return != FALSE) 1324 WINSETUPAPI 1325 BOOL 1326 WINAPI 1327 SetupDiClassGuidsFromNameW( 1328 _In_ PCWSTR ClassName, 1329 _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1330 _In_ DWORD ClassGuidListSize, 1331 _Out_ PDWORD RequiredSize); 1332 1333 _Success_(return != FALSE) 1334 WINSETUPAPI 1335 BOOL 1336 WINAPI 1337 SetupDiClassGuidsFromNameExA( 1338 _In_ PCSTR ClassName, 1339 _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1340 _In_ DWORD ClassGuidListSize, 1341 _Out_ PDWORD RequiredSize, 1342 _In_opt_ PCSTR MachineName, 1343 _Reserved_ PVOID Reserved); 1344 1345 _Success_(return != FALSE) 1346 WINSETUPAPI 1347 BOOL 1348 WINAPI 1349 SetupDiClassGuidsFromNameExW( 1350 _In_ PCWSTR ClassName, 1351 _Out_writes_to_(ClassGuidListSize, *RequiredSize) LPGUID ClassGuidList, 1352 _In_ DWORD ClassGuidListSize, 1353 _Out_ PDWORD RequiredSize, 1354 _In_opt_ PCWSTR MachineName, 1355 _Reserved_ PVOID Reserved); 1356 1357 WINSETUPAPI 1358 BOOL 1359 WINAPI 1360 SetupDiClassNameFromGuidA( 1361 _In_ CONST GUID *ClassGuid, 1362 _Out_writes_(ClassNameSize) PSTR ClassName, 1363 _In_ DWORD ClassNameSize, 1364 _Out_opt_ PDWORD RequiredSize); 1365 1366 WINSETUPAPI 1367 BOOL 1368 WINAPI 1369 SetupDiClassNameFromGuidW( 1370 _In_ CONST GUID *ClassGuid, 1371 _Out_writes_(ClassNameSize) PWSTR ClassName, 1372 _In_ DWORD ClassNameSize, 1373 _Out_opt_ PDWORD RequiredSize); 1374 1375 WINSETUPAPI 1376 BOOL 1377 WINAPI 1378 SetupDiClassNameFromGuidExA( 1379 _In_ CONST GUID *ClassGuid, 1380 _Out_writes_(ClassNameSize) PSTR ClassName, 1381 _In_ DWORD ClassNameSize, 1382 _Out_opt_ PDWORD RequiredSize, 1383 _In_opt_ PCSTR MachineName, 1384 _Reserved_ PVOID Reserved); 1385 1386 WINSETUPAPI 1387 BOOL 1388 WINAPI 1389 SetupDiClassNameFromGuidExW( 1390 _In_ CONST GUID *ClassGuid, 1391 _Out_writes_(ClassNameSize) PWSTR ClassName, 1392 _In_ DWORD ClassNameSize, 1393 _Out_opt_ PDWORD RequiredSize, 1394 _In_opt_ PCWSTR MachineName, 1395 _Reserved_ PVOID Reserved); 1396 1397 WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInfoA(_In_ HDEVINFO, _In_ PCSTR, _In_ CONST GUID*, _In_opt_ PCSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA); 1398 WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInfoW(_In_ HDEVINFO, _In_ PCWSTR, _In_ CONST GUID*, _In_opt_ PCWSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA); 1399 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoList(_In_opt_ CONST GUID*, _In_opt_ HWND); 1400 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoListExA(_In_opt_ CONST GUID*, _In_opt_ HWND, _In_opt_ PCSTR, _Reserved_ PVOID); 1401 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoListExW(_In_opt_ CONST GUID*, _In_opt_ HWND, _In_opt_ PCWSTR, _Reserved_ PVOID); 1402 WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInterfaceA(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ CONST GUID*, _In_opt_ PCSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA); 1403 WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInterfaceW(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ CONST GUID*, _In_opt_ PCWSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA); 1404 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDeviceInterfaceRegKeyA(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD, _In_ REGSAM, _In_opt_ HINF, _In_opt_ PCSTR); 1405 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDeviceInterfaceRegKeyW(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD, _In_ REGSAM, _In_opt_ HINF, _In_opt_ PCWSTR); 1406 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDevRegKeyA(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ HINF, _In_opt_ PCSTR); 1407 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiCreateDevRegKeyW(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_opt_ HINF, _In_opt_ PCWSTR); 1408 WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInfo(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA); 1409 WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInterfaceData(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA); 1410 WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInterfaceRegKey(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD); 1411 WINSETUPAPI BOOL WINAPI SetupDiDeleteDevRegKey(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD); 1412 WINSETUPAPI BOOL WINAPI SetupDiDestroyClassImageList(_In_ PSP_CLASSIMAGELIST_DATA); 1413 WINSETUPAPI BOOL WINAPI SetupDiDestroyDeviceInfoList(_In_ HDEVINFO); 1414 WINSETUPAPI BOOL WINAPI SetupDiDestroyDriverInfoList(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ DWORD); 1415 WINSETUPAPI INT WINAPI SetupDiDrawMiniIcon(_In_ HDC, _In_ RECT, _In_ INT, _In_ DWORD); 1416 WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInfo(_In_ HDEVINFO, _In_ DWORD, _Out_ PSP_DEVINFO_DATA); 1417 WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInterfaces(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ CONST GUID*, _In_ DWORD, _Out_ PSP_DEVICE_INTERFACE_DATA); 1418 WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _Out_ PSP_DRVINFO_DATA_A); 1419 WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _Out_ PSP_DRVINFO_DATA_W); 1420 1421 WINSETUPAPI 1422 BOOL 1423 WINAPI 1424 SetupDiGetActualSectionToInstallA( 1425 _In_ HINF InfHandle, 1426 _In_ PCSTR InfSectionName, 1427 _Out_writes_opt_(InfSectionWithExtSize) PSTR InfSectionWithExt, 1428 _In_ DWORD InfSectionWithExtSize, 1429 _Out_opt_ PDWORD RequiredSize, 1430 _Out_opt_ PSTR *Extension); 1431 1432 WINSETUPAPI 1433 BOOL 1434 WINAPI 1435 SetupDiGetActualSectionToInstallW( 1436 _In_ HINF InfHandle, 1437 _In_ PCWSTR InfSectionName, 1438 _Out_writes_opt_(InfSectionWithExtSize) PWSTR InfSectionWithExt, 1439 _In_ DWORD InfSectionWithExtSize, 1440 _Out_opt_ PDWORD RequiredSize, 1441 _Out_opt_ PWSTR *Extension); 1442 1443 WINSETUPAPI 1444 BOOL 1445 WINAPI 1446 SetupDiGetActualSectionToInstallExA( 1447 _In_ HINF InfHandle, 1448 _In_ PCSTR InfSectionName, 1449 _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, 1450 _Out_writes_opt_(InfSectionWithExtSize) PSTR InfSectionWithExt, 1451 _In_ DWORD InfSectionWithExtSize, 1452 _Out_opt_ PDWORD RequiredSize, 1453 _Out_opt_ PSTR *Extension, 1454 _Reserved_ PVOID Reserved); 1455 1456 WINSETUPAPI 1457 BOOL 1458 WINAPI 1459 SetupDiGetActualSectionToInstallExW( 1460 _In_ HINF InfHandle, 1461 _In_ PCWSTR InfSectionName, 1462 _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, 1463 _Out_writes_opt_(InfSectionWithExtSize) PWSTR InfSectionWithExt, 1464 _In_ DWORD InfSectionWithExtSize, 1465 _Out_opt_ PDWORD RequiredSize, 1466 _Out_opt_ PWSTR *Extension, 1467 _Reserved_ PVOID Reserved); 1468 1469 WINSETUPAPI BOOL WINAPI SetupDiGetClassBitmapIndex(_In_opt_ CONST GUID*, _Out_ PINT); 1470 1471 WINSETUPAPI 1472 BOOL 1473 WINAPI 1474 SetupDiGetClassDescriptionA( 1475 _In_ CONST GUID *ClassGuid, 1476 _Out_writes_(ClassDescriptionSize) PSTR ClassDescription, 1477 _In_ DWORD ClassDescriptionSize, 1478 _Out_opt_ PDWORD RequiredSize); 1479 1480 WINSETUPAPI 1481 BOOL 1482 WINAPI 1483 SetupDiGetClassDescriptionW( 1484 _In_ CONST GUID *ClassGuid, 1485 _Out_writes_(ClassDescriptionSize) PWSTR ClassDescription, 1486 _In_ DWORD ClassDescriptionSize, 1487 _Out_opt_ PDWORD RequiredSize); 1488 1489 WINSETUPAPI 1490 BOOL 1491 WINAPI 1492 SetupDiGetClassDescriptionExA( 1493 _In_ CONST GUID *ClassGuid, 1494 _Out_writes_(ClassDescriptionSize) PSTR ClassDescription, 1495 _In_ DWORD ClassDescriptionSize, 1496 _Out_opt_ PDWORD RequiredSize, 1497 _In_opt_ PCSTR MachineName, 1498 _Reserved_ PVOID Reserved); 1499 1500 WINSETUPAPI 1501 BOOL 1502 WINAPI 1503 SetupDiGetClassDescriptionExW( 1504 _In_ CONST GUID *ClassGuid, 1505 _Out_writes_(ClassDescriptionSize) PWSTR ClassDescription, 1506 _In_ DWORD ClassDescriptionSize, 1507 _Out_opt_ PDWORD RequiredSize, 1508 _In_opt_ PCWSTR MachineName, 1509 _Reserved_ PVOID Reserved); 1510 1511 WINSETUPAPI BOOL WINAPI SetupDiGetClassDevPropertySheetsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ LPPROPSHEETHEADERA, _In_ DWORD, _Out_opt_ PDWORD, _In_ DWORD); 1512 WINSETUPAPI BOOL WINAPI SetupDiGetClassDevPropertySheetsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ LPPROPSHEETHEADERW, _In_ DWORD, _Out_opt_ PDWORD, _In_ DWORD); 1513 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsA(_In_opt_ CONST GUID*, _In_opt_ PCSTR, _In_opt_ HWND, _In_ DWORD); 1514 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsW(_In_opt_ CONST GUID*, _In_opt_ PCWSTR, _In_opt_ HWND, _In_ DWORD); 1515 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsExA(_In_opt_ CONST GUID*, _In_opt_ PCSTR, _In_opt_ HWND, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PCSTR, _Reserved_ PVOID); 1516 _Check_return_ WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsExW(_In_opt_ CONST GUID*, _In_opt_ PCWSTR, _In_opt_ HWND, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PCWSTR, _Reserved_ PVOID); 1517 WINSETUPAPI BOOL WINAPI SetupDiGetClassImageIndex(_In_ PSP_CLASSIMAGELIST_DATA, _In_ CONST GUID*, _Out_ PINT); 1518 WINSETUPAPI BOOL WINAPI SetupDiGetClassImageList(_Out_ PSP_CLASSIMAGELIST_DATA); 1519 WINSETUPAPI BOOL WINAPI SetupDiGetClassImageListExA(_Out_ PSP_CLASSIMAGELIST_DATA, _In_opt_ PCSTR, _Reserved_ PVOID); 1520 WINSETUPAPI BOOL WINAPI SetupDiGetClassImageListExW(_Out_ PSP_CLASSIMAGELIST_DATA, _In_opt_ PCWSTR, _Reserved_ PVOID); 1521 1522 _Success_(return != FALSE) 1523 WINSETUPAPI 1524 BOOL 1525 WINAPI 1526 SetupDiGetClassInstallParamsA( 1527 _In_ HDEVINFO DeviceInfoSet, 1528 _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, 1529 _Out_writes_bytes_to_opt_(ClassInstallParamsSize, *RequiredSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, 1530 _In_ DWORD ClassInstallParamsSize, 1531 _Out_opt_ PDWORD RequiredSize); 1532 1533 _Success_(return != FALSE) 1534 WINSETUPAPI 1535 BOOL 1536 WINAPI 1537 SetupDiGetClassInstallParamsW( 1538 _In_ HDEVINFO DeviceInfoSet, 1539 _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, 1540 _Out_writes_bytes_to_opt_(ClassInstallParamsSize, *RequiredSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, 1541 _In_ DWORD ClassInstallParamsSize, 1542 _Out_opt_ PDWORD RequiredSize); 1543 1544 _Success_(return != FALSE) 1545 WINSETUPAPI 1546 BOOL 1547 WINAPI 1548 SetupDiGetClassRegistryPropertyA( 1549 _In_ CONST GUID *ClassGuid, 1550 _In_ DWORD Property, 1551 _Out_opt_ PDWORD PropertyRegDataType, 1552 _Out_writes_bytes_to_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, 1553 _In_ DWORD PropertyBufferSize, 1554 _Out_opt_ PDWORD RequiredSize, 1555 _In_opt_ PCSTR MachineName, 1556 _Reserved_ PVOID Reserved); 1557 1558 _Success_(return != FALSE) 1559 WINSETUPAPI 1560 BOOL 1561 WINAPI 1562 SetupDiGetClassRegistryPropertyW( 1563 _In_ CONST GUID *ClassGuid, 1564 _In_ DWORD Property, 1565 _Out_opt_ PDWORD PropertyRegDataType, 1566 _Out_writes_bytes_to_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, 1567 _In_ DWORD PropertyBufferSize, 1568 _Out_opt_ PDWORD RequiredSize, 1569 _In_opt_ PCWSTR MachineName, 1570 _Reserved_ PVOID Reserved); 1571 1572 WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListClass(_In_ HDEVINFO, _Out_ LPGUID); 1573 WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListDetailA(_In_ HDEVINFO, _Out_ PSP_DEVINFO_LIST_DETAIL_DATA_A); 1574 WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListDetailW(_In_ HDEVINFO, _Out_ PSP_DEVINFO_LIST_DETAIL_DATA_W); 1575 WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DEVINSTALL_PARAMS_A); 1576 WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DEVINSTALL_PARAMS_W); 1577 1578 WINSETUPAPI 1579 BOOL 1580 WINAPI 1581 SetupDiGetDeviceInstanceIdA( 1582 _In_ HDEVINFO DeviceInfoSet, 1583 _In_ PSP_DEVINFO_DATA DeviceInfoData, 1584 _Out_writes_opt_(DeviceInstanceIdSize) PSTR DeviceInstanceId, 1585 _In_ DWORD DeviceInstanceIdSize, 1586 _Out_opt_ PDWORD RequiredSize); 1587 1588 WINSETUPAPI 1589 BOOL 1590 WINAPI 1591 SetupDiGetDeviceInstanceIdW( 1592 _In_ HDEVINFO DeviceInfoSet, 1593 _In_ PSP_DEVINFO_DATA DeviceInfoData, 1594 _Out_writes_opt_(DeviceInstanceIdSize) PWSTR DeviceInstanceId, 1595 _In_ DWORD DeviceInstanceIdSize, 1596 _Out_opt_ PDWORD RequiredSize); 1597 1598 WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceAlias(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _In_ CONST GUID*, _Out_ PSP_DEVICE_INTERFACE_DATA); 1599 1600 _Success_(return != FALSE) 1601 _At_((LPSTR)DeviceInterfaceDetailData->DevicePath, _Post_z_) 1602 WINSETUPAPI 1603 BOOL 1604 WINAPI 1605 SetupDiGetDeviceInterfaceDetailA( 1606 _In_ HDEVINFO DeviceInfoSet, 1607 _In_ PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData, 1608 _Inout_updates_bytes_to_opt_(DeviceInterfaceDetailDataSize, *RequiredSize) PSP_DEVICE_INTERFACE_DETAIL_DATA_A DeviceInterfaceDetailData, 1609 _In_ DWORD DeviceInterfaceDetailDataSize, 1610 _Out_opt_ _Out_range_(>=, sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_A)) PDWORD RequiredSize, 1611 _Out_opt_ PSP_DEVINFO_DATA DeviceInfoData); 1612 1613 _Success_(return != FALSE) 1614 _At_((LPWSTR)DeviceInterfaceDetailData->DevicePath, _Post_z_) 1615 WINSETUPAPI 1616 BOOL 1617 WINAPI 1618 SetupDiGetDeviceInterfaceDetailW( 1619 _In_ HDEVINFO DeviceInfoSet, 1620 _In_ PSP_DEVICE_INTERFACE_DATA DeviceInterfaceData, 1621 _Out_writes_bytes_to_opt_(DeviceInterfaceDetailDataSize, *RequiredSize) PSP_DEVICE_INTERFACE_DETAIL_DATA_W DeviceInterfaceDetailData, 1622 _In_ DWORD DeviceInterfaceDetailDataSize, 1623 _Out_opt_ _Out_range_(>=, sizeof(SP_DEVICE_INTERFACE_DETAIL_DATA_W)) PDWORD RequiredSize, 1624 _Out_opt_ PSP_DEVINFO_DATA DeviceInfoData); 1625 1626 _Success_(return != FALSE) 1627 _When_((*PropertyRegDataType == REG_SZ), _At_((PSTR) PropertyBuffer, _Post_valid_)) 1628 _When_((*PropertyRegDataType == REG_MULTI_SZ), _At_((PZZSTR) PropertyBuffer, _Post_valid_)) 1629 WINSETUPAPI 1630 BOOL 1631 WINAPI 1632 SetupDiGetDeviceRegistryPropertyA( 1633 _In_ HDEVINFO DeviceInfoSet, 1634 _In_ PSP_DEVINFO_DATA DeviceInfoData, 1635 _In_ DWORD Property, 1636 _Out_opt_ PDWORD PropertyRegDataType, 1637 _Out_writes_bytes_to_opt_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, 1638 _In_ DWORD PropertyBufferSize, 1639 _Out_opt_ PDWORD RequiredSize); 1640 1641 _Success_(return != FALSE) 1642 _When_((*PropertyRegDataType == REG_SZ), _At_((PWSTR) PropertyBuffer, _Post_valid_)) 1643 _When_((*PropertyRegDataType == REG_MULTI_SZ), _At_((PZZWSTR) PropertyBuffer, _Post_valid_)) 1644 WINSETUPAPI 1645 BOOL 1646 WINAPI 1647 SetupDiGetDeviceRegistryPropertyW( 1648 _In_ HDEVINFO DeviceInfoSet, 1649 _In_ PSP_DEVINFO_DATA DeviceInfoData, 1650 _In_ DWORD Property, 1651 _Out_opt_ PDWORD PropertyRegDataType, 1652 _Out_writes_bytes_to_opt_(PropertyBufferSize, *RequiredSize) PBYTE PropertyBuffer, 1653 _In_ DWORD PropertyBufferSize, 1654 _Out_opt_ PDWORD RequiredSize); 1655 1656 WINSETUPAPI 1657 BOOL 1658 WINAPI 1659 SetupDiGetDriverInfoDetailA( 1660 _In_ HDEVINFO DeviceInfoSet, 1661 _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, 1662 _In_ PSP_DRVINFO_DATA_A DriverInfoData, 1663 _Inout_updates_bytes_opt_(DriverInfoDetailDataSize) PSP_DRVINFO_DETAIL_DATA_A DriverInfoDetailData, 1664 _In_ DWORD DriverInfoDetailDataSize, 1665 _Out_opt_ PDWORD RequiredSize); 1666 1667 WINSETUPAPI 1668 BOOL 1669 WINAPI 1670 SetupDiGetDriverInfoDetailW( 1671 _In_ HDEVINFO DeviceInfoSet, 1672 _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, 1673 _In_ PSP_DRVINFO_DATA_W DriverInfoData, 1674 _Inout_updates_bytes_opt_(DriverInfoDetailDataSize) PSP_DRVINFO_DETAIL_DATA_W DriverInfoDetailData, 1675 _In_ DWORD DriverInfoDetailDataSize, 1676 _Out_opt_ PDWORD RequiredSize); 1677 1678 WINSETUPAPI BOOL WINAPI SetupDiGetDriverInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_A, _Out_ PSP_DRVINSTALL_PARAMS); 1679 WINSETUPAPI BOOL WINAPI SetupDiGetDriverInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_W, _Out_ PSP_DRVINSTALL_PARAMS); 1680 1681 WINSETUPAPI 1682 BOOL 1683 WINAPI 1684 SetupDiGetHwProfileFriendlyNameA( 1685 _In_ DWORD HwProfile, 1686 _Out_writes_(FriendlyNameSize) PSTR FriendlyName, 1687 _In_ DWORD FriendlyNameSize, 1688 _Out_opt_ PDWORD RequiredSize); 1689 1690 WINSETUPAPI 1691 BOOL 1692 WINAPI 1693 SetupDiGetHwProfileFriendlyNameW( 1694 _In_ DWORD HwProfile, 1695 _Out_writes_(FriendlyNameSize) PWSTR FriendlyName, 1696 _In_ DWORD FriendlyNameSize, 1697 _Out_opt_ PDWORD RequiredSize); 1698 1699 WINSETUPAPI 1700 BOOL 1701 WINAPI 1702 SetupDiGetHwProfileFriendlyNameExA( 1703 _In_ DWORD HwProfile, 1704 _Out_writes_(FriendlyNameSize) PSTR FriendlyName, 1705 _In_ DWORD FriendlyNameSize, 1706 _Out_opt_ PDWORD RequiredSize, 1707 _In_opt_ PCSTR MachineName, 1708 _Reserved_ PVOID Reserved); 1709 1710 WINSETUPAPI 1711 BOOL 1712 WINAPI 1713 SetupDiGetHwProfileFriendlyNameExW( 1714 _In_ DWORD HwProfile, 1715 _Out_writes_(FriendlyNameSize) PWSTR FriendlyName, 1716 _In_ DWORD FriendlyNameSize, 1717 _Out_opt_ PDWORD RequiredSize, 1718 _In_opt_ PCWSTR MachineName, 1719 _Reserved_ PVOID Reserved); 1720 1721 WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileFriendlyNameW(DWORD,PWSTR,DWORD,PDWORD); 1722 1723 _Success_(return != FALSE) 1724 WINSETUPAPI 1725 BOOL 1726 WINAPI 1727 SetupDiGetHwProfileList( 1728 _Out_writes_to_(HwProfileListSize, *RequiredSize) PDWORD HwProfileList, 1729 _In_ DWORD HwProfileListSize, 1730 _Out_ PDWORD RequiredSize, 1731 _Out_opt_ PDWORD CurrentlyActiveIndex); 1732 1733 _Success_(return != FALSE) 1734 WINSETUPAPI 1735 BOOL 1736 WINAPI 1737 SetupDiGetHwProfileListExA( 1738 _Out_writes_to_(HwProfileListSize, *RequiredSize) PDWORD HwProfileList, 1739 _In_ DWORD HwProfileListSize, 1740 _Out_ PDWORD RequiredSize, 1741 _Out_opt_ PDWORD CurrentlyActiveIndex, 1742 _In_opt_ PCSTR MachineName, 1743 _Reserved_ PVOID Reserved); 1744 1745 _Success_(return != FALSE) 1746 WINSETUPAPI 1747 BOOL 1748 WINAPI 1749 SetupDiGetHwProfileListExW( 1750 _Out_writes_to_(HwProfileListSize, *RequiredSize) PDWORD HwProfileList, 1751 _In_ DWORD HwProfileListSize, 1752 _Out_ PDWORD RequiredSize, 1753 _Out_opt_ PDWORD CurrentlyActiveIndex, 1754 _In_opt_ PCWSTR MachineName, 1755 _Reserved_ PVOID Reserved); 1756 1757 WINSETUPAPI 1758 BOOL 1759 WINAPI 1760 SetupDiGetINFClassA( 1761 _In_ PCSTR InfName, 1762 _Out_ LPGUID ClassGuid, 1763 _Out_writes_(ClassNameSize) PSTR ClassName, 1764 _In_ DWORD ClassNameSize, 1765 _Out_opt_ PDWORD RequiredSize); 1766 1767 WINSETUPAPI 1768 BOOL 1769 WINAPI 1770 SetupDiGetINFClassW( 1771 _In_ PCWSTR InfName, 1772 _Out_ LPGUID ClassGuid, 1773 _Out_writes_(ClassNameSize) PWSTR ClassName, 1774 _In_ DWORD ClassNameSize, 1775 _Out_opt_ PDWORD RequiredSize); 1776 1777 WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDevice(_In_ HDEVINFO, _Out_ PSP_DEVINFO_DATA); 1778 WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDriverA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DRVINFO_DATA_A); 1779 WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDriverW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Out_ PSP_DRVINFO_DATA_W); 1780 WINSETUPAPI HPROPSHEETPAGE WINAPI SetupDiGetWizardPage(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_INSTALLWIZARD_DATA, _In_ DWORD, _In_ DWORD); 1781 WINSETUPAPI BOOL WINAPI SetupDiInstallClassA(_In_opt_ HWND, _In_ PCSTR, _In_ DWORD, _In_opt_ HSPFILEQ); 1782 WINSETUPAPI BOOL WINAPI SetupDiInstallClassW(_In_opt_ HWND, _In_ PCWSTR, _In_ DWORD, _In_opt_ HSPFILEQ); 1783 WINSETUPAPI BOOL WINAPI SetupDiInstallClassExA(_In_opt_ HWND, _In_opt_ PCSTR, _In_ DWORD, _In_opt_ HSPFILEQ, _In_opt_ CONST GUID*, _Reserved_ PVOID, _Reserved_ PVOID); 1784 WINSETUPAPI BOOL WINAPI SetupDiInstallClassExW(_In_opt_ HWND, _In_opt_ PCWSTR, _In_ DWORD, _In_opt_ HSPFILEQ, _In_opt_ CONST GUID*, _Reserved_ PVOID, _Reserved_ PVOID); 1785 WINSETUPAPI BOOL WINAPI SetupDiInstallDevice(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA); 1786 WINSETUPAPI BOOL WINAPI SetupDiInstallDeviceInterfaces(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA); 1787 WINSETUPAPI BOOL WINAPI SetupDiInstallDriverFiles(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA); 1788 WINSETUPAPI BOOL WINAPI SetupDiLoadClassIcon(_In_ CONST GUID*, _Out_opt_ HICON*, _Out_opt_ PINT); 1789 WINSETUPAPI BOOL WINAPI SetupDiMoveDuplicateDevice(HDEVINFO,PSP_DEVINFO_DATA); 1790 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKey(_In_opt_ CONST GUID*, _In_ REGSAM); 1791 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKeyExA(_In_opt_ CONST GUID*, _In_ REGSAM, _In_ DWORD, _In_opt_ PCSTR, _Reserved_ PVOID); 1792 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKeyExW(_In_opt_ CONST GUID*, _In_ REGSAM, _In_ DWORD, _In_opt_ PCWSTR, _Reserved_ PVOID); 1793 WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInfoA(_In_ HDEVINFO, _In_ PCSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA); 1794 WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInfoW(_In_ HDEVINFO, _In_ PCWSTR, _In_opt_ HWND, _In_ DWORD, _Out_opt_ PSP_DEVINFO_DATA); 1795 WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInterfaceA(_In_ HDEVINFO, _In_ PCSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA); 1796 WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInterfaceW(_In_ HDEVINFO, _In_ PCWSTR, _In_ DWORD, _Out_opt_ PSP_DEVICE_INTERFACE_DATA); 1797 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenDeviceInterfaceRegKey(_In_ HDEVINFO, _In_ PSP_DEVICE_INTERFACE_DATA, _Reserved_ DWORD, _In_ REGSAM); 1798 _Check_return_ WINSETUPAPI HKEY WINAPI SetupDiOpenDevRegKey(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA, _In_ DWORD, _In_ DWORD, _In_ DWORD, _In_ REGSAM); 1799 WINSETUPAPI BOOL WINAPI SetupDiRegisterCoDeviceInstallers(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA); 1800 WINSETUPAPI BOOL WINAPI SetupDiRegisterDeviceInfo(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA, _In_ DWORD, _In_opt_ PSP_DETSIG_CMPPROC, _In_opt_ PVOID, _Out_opt_ PSP_DEVINFO_DATA); 1801 WINSETUPAPI BOOL WINAPI SetupDiRemoveDevice(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA); 1802 WINSETUPAPI BOOL WINAPI SetupDiRemoveDeviceInterface(_In_ HDEVINFO, _Inout_ PSP_DEVICE_INTERFACE_DATA); 1803 WINSETUPAPI BOOL WINAPI SetupDiRestartDevices(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA); 1804 WINSETUPAPI BOOL WINAPI SetupDiSelectBestCompatDrv(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA); 1805 WINSETUPAPI BOOL WINAPI SetupDiSelectDevice(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA); 1806 WINSETUPAPI BOOL WINAPI SetupDiSelectOEMDrv(_In_opt_ HWND, _In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA); 1807 1808 WINSETUPAPI 1809 BOOL 1810 WINAPI 1811 SetupDiSetClassInstallParamsA( 1812 _In_ HDEVINFO DeviceInfoSet, 1813 _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, 1814 _In_reads_bytes_opt_(ClassInstallParamsSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, 1815 _In_ DWORD ClassInstallParamsSize); 1816 1817 WINSETUPAPI 1818 BOOL 1819 WINAPI 1820 SetupDiSetClassInstallParamsW( 1821 _In_ HDEVINFO DeviceInfoSet, 1822 _In_opt_ PSP_DEVINFO_DATA DeviceInfoData, 1823 _In_reads_bytes_opt_(ClassInstallParamsSize) PSP_CLASSINSTALL_HEADER ClassInstallParams, 1824 _In_ DWORD ClassInstallParamsSize); 1825 1826 WINSETUPAPI 1827 BOOL 1828 WINAPI 1829 SetupDiSetClassRegistryPropertyA( 1830 _In_ CONST GUID *ClassGuid, 1831 _In_ DWORD Property, 1832 _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, 1833 _In_ DWORD PropertyBufferSize, 1834 _In_opt_ PCSTR MachineName, 1835 _Reserved_ PVOID Reserved); 1836 1837 WINSETUPAPI 1838 BOOL 1839 WINAPI 1840 SetupDiSetClassRegistryPropertyW( 1841 _In_ CONST GUID *ClassGuid, 1842 _In_ DWORD Property, 1843 _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, 1844 _In_ DWORD PropertyBufferSize, 1845 _In_opt_ PCWSTR MachineName, 1846 _Reserved_ PVOID Reserved); 1847 1848 WINSETUPAPI BOOL WINAPI SetupDiSetDeviceInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DEVINSTALL_PARAMS_A); 1849 WINSETUPAPI BOOL WINAPI SetupDiSetDeviceInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DEVINSTALL_PARAMS_W); 1850 1851 WINSETUPAPI 1852 BOOL 1853 WINAPI 1854 SetupDiSetDeviceRegistryPropertyA( 1855 _In_ HDEVINFO DeviceInfoSet, 1856 _Inout_ PSP_DEVINFO_DATA DeviceInfoData, 1857 _In_ DWORD Property, 1858 _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, 1859 _In_ DWORD PropertyBufferSize); 1860 1861 WINSETUPAPI 1862 BOOL 1863 WINAPI 1864 SetupDiSetDeviceRegistryPropertyW( 1865 _In_ HDEVINFO DeviceInfoSet, 1866 _Inout_ PSP_DEVINFO_DATA DeviceInfoData, 1867 _In_ DWORD Property, 1868 _In_reads_bytes_opt_(PropertyBufferSize) CONST BYTE *PropertyBuffer, 1869 _In_ DWORD PropertyBufferSize); 1870 1871 WINSETUPAPI BOOL WINAPI SetupDiSetDriverInstallParamsA(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_A, _In_ PSP_DRVINSTALL_PARAMS); 1872 WINSETUPAPI BOOL WINAPI SetupDiSetDriverInstallParamsW(_In_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _In_ PSP_DRVINFO_DATA_W, _In_ PSP_DRVINSTALL_PARAMS); 1873 WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDevice(_In_ HDEVINFO, _In_ PSP_DEVINFO_DATA); 1874 WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDriverA(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA, _Inout_opt_ PSP_DRVINFO_DATA_A); 1875 WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDriverW(_In_ HDEVINFO, _Inout_opt_ PSP_DEVINFO_DATA, _Inout_opt_ PSP_DRVINFO_DATA_W); 1876 WINSETUPAPI BOOL WINAPI SetupDiUnremoveDevice(_In_ HDEVINFO, _Inout_ PSP_DEVINFO_DATA); 1877 WINSETUPAPI HDSKSPC WINAPI SetupDuplicateDiskSpaceListA(_In_ HDSKSPC, _Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT); 1878 WINSETUPAPI HDSKSPC WINAPI SetupDuplicateDiskSpaceListW(_In_ HDSKSPC, _Reserved_ PVOID, _Reserved_ DWORD, _In_ UINT); 1879 WINSETUPAPI BOOL WINAPI SetupFindFirstLineA(_In_ HINF, _In_ PCSTR, _In_opt_ PCSTR, _Out_ PINFCONTEXT); 1880 WINSETUPAPI BOOL WINAPI SetupFindFirstLineW(_In_ HINF, _In_ PCWSTR, _In_opt_ PCWSTR, _Out_ PINFCONTEXT); 1881 WINSETUPAPI BOOL WINAPI SetupFindNextLine(_In_ PINFCONTEXT, _Out_ PINFCONTEXT); 1882 WINSETUPAPI BOOL WINAPI SetupFindNextMatchLineA(_In_ PINFCONTEXT, _In_opt_ PCSTR, _Out_ PINFCONTEXT); 1883 WINSETUPAPI BOOL WINAPI SetupFindNextMatchLineW(_In_ PINFCONTEXT, _In_opt_ PCWSTR, _Out_ PINFCONTEXT); 1884 WINSETUPAPI BOOL WINAPI SetupFreeA(PCSTR**,UINT); 1885 WINSETUPAPI BOOL WINAPI SetupFreeW(PCWSTR**,UINT); 1886 WINSETUPAPI BOOL WINAPI SetupGetBackupInformationA(_In_ HSPFILEQ, _Inout_ PSP_BACKUP_QUEUE_PARAMS_A); 1887 WINSETUPAPI BOOL WINAPI SetupGetBackupInformationW(_In_ HSPFILEQ, _Inout_ PSP_BACKUP_QUEUE_PARAMS_W); 1888 1889 _Success_(return != FALSE) 1890 WINSETUPAPI 1891 BOOL 1892 WINAPI 1893 SetupGetBinaryField( 1894 _In_ PINFCONTEXT Context, 1895 _In_ DWORD FieldIndex, 1896 _Out_writes_bytes_to_opt_(ReturnBufferSize, *RequiredSize) PBYTE ReturnBuffer, 1897 _In_ DWORD ReturnBufferSize, 1898 _Out_opt_ LPDWORD RequiredSize); 1899 1900 WINSETUPAPI DWORD WINAPI SetupGetFieldCount(_In_ PINFCONTEXT); 1901 WINSETUPAPI DWORD WINAPI SetupGetFileCompressionInfoA(_In_ PCSTR, _Out_ PSTR*, _Out_ PDWORD, _Out_ PDWORD, _Out_ PUINT); 1902 WINSETUPAPI DWORD WINAPI SetupGetFileCompressionInfoW(_In_ PCWSTR, _Out_ PWSTR*, _Out_ PDWORD, _Out_ PDWORD, _Out_ PUINT); 1903 1904 WINSETUPAPI 1905 BOOL 1906 WINAPI 1907 SetupGetFileCompressionInfoExA( 1908 _In_ PCSTR SourceFileName, 1909 _In_reads_opt_(ActualSourceFileNameBufferLen) PSTR ActualSourceFileNameBuffer, 1910 _In_ DWORD ActualSourceFileNameBufferLen, 1911 _Out_opt_ PDWORD RequiredBufferLen, 1912 _Out_ PDWORD SourceFileSize, 1913 _Out_ PDWORD TargetFileSize, 1914 _Out_ PUINT CompressionType); 1915 1916 WINSETUPAPI 1917 BOOL 1918 WINAPI 1919 SetupGetFileCompressionInfoExW( 1920 _In_ PCWSTR SourceFileName, 1921 _In_reads_opt_(ActualSourceFileNameBufferLen) PWSTR ActualSourceFileNameBuffer, 1922 _In_ DWORD ActualSourceFileNameBufferLen, 1923 _Out_opt_ PDWORD RequiredBufferLen, 1924 _Out_ PDWORD SourceFileSize, 1925 _Out_ PDWORD TargetFileSize, 1926 _Out_ PUINT CompressionType); 1927 1928 WINSETUPAPI 1929 BOOL 1930 WINAPI 1931 SetupGetInfFileListA( 1932 _In_opt_ PCSTR DirectoryPath, 1933 _In_ DWORD InfStyle, 1934 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 1935 _In_ DWORD ReturnBufferSize, 1936 _Out_opt_ PDWORD RequiredSize); 1937 1938 WINSETUPAPI 1939 BOOL 1940 WINAPI 1941 SetupGetInfFileListW( 1942 _In_opt_ PCWSTR DirectoryPath, 1943 _In_ DWORD InfStyle, 1944 _Out_writes_(ReturnBufferSize) PWSTR ReturnBuffer, 1945 _In_ DWORD ReturnBufferSize, 1946 _Out_opt_ PDWORD RequiredSize); 1947 1948 _Success_(return != FALSE) 1949 WINSETUPAPI 1950 BOOL 1951 WINAPI 1952 SetupGetInfInformationA( 1953 _In_ LPCVOID InfSpec, 1954 _In_ DWORD SearchControl, 1955 _Out_writes_bytes_to_opt_(ReturnBufferSize, *RequiredSize) PSP_INF_INFORMATION ReturnBuffer, 1956 _In_ DWORD ReturnBufferSize, 1957 _Out_opt_ PDWORD RequiredSize); 1958 1959 _Success_(return != FALSE) 1960 WINSETUPAPI 1961 BOOL 1962 WINAPI 1963 SetupGetInfInformationW( 1964 _In_ LPCVOID InfSpec, 1965 _In_ DWORD SearchControl, 1966 _Out_writes_bytes_to_opt_(ReturnBufferSize, *RequiredSize) PSP_INF_INFORMATION ReturnBuffer, 1967 _In_ DWORD ReturnBufferSize, 1968 _Out_opt_ PDWORD RequiredSize); 1969 1970 WINSETUPAPI BOOL WINAPI SetupGetIntField(_In_ PINFCONTEXT, _In_ DWORD, _Out_ PINT); 1971 WINSETUPAPI BOOL WINAPI SetupGetLineByIndexA(_In_ HINF, _In_ PCSTR, _In_ DWORD, _Out_ PINFCONTEXT); 1972 WINSETUPAPI BOOL WINAPI SetupGetLineByIndexW(_In_ HINF, _In_ PCWSTR, _In_ DWORD, _Out_ PINFCONTEXT); 1973 WINSETUPAPI LONG WINAPI SetupGetLineCountA(_In_ HINF, _In_ PCSTR); 1974 WINSETUPAPI LONG WINAPI SetupGetLineCountW(_In_ HINF, _In_ PCWSTR); 1975 1976 WINSETUPAPI 1977 BOOL 1978 WINAPI 1979 SetupGetLineTextA( 1980 _In_opt_ PINFCONTEXT Context, 1981 _In_opt_ HINF InfHandle, 1982 _In_opt_ PCSTR Section, 1983 _In_opt_ PCSTR Key, 1984 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 1985 _In_ DWORD ReturnBufferSize, 1986 _Out_opt_ PDWORD RequiredSize); 1987 1988 WINSETUPAPI 1989 BOOL 1990 WINAPI 1991 SetupGetLineTextW( 1992 _In_opt_ PINFCONTEXT Context, 1993 _In_opt_ HINF InfHandle, 1994 _In_opt_ PCWSTR Section, 1995 _In_opt_ PCWSTR Key, 1996 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 1997 _In_ DWORD ReturnBufferSize, 1998 _Out_opt_ PDWORD RequiredSize); 1999 2000 WINSETUPAPI 2001 BOOL 2002 WINAPI 2003 SetupGetMultiSzFieldA( 2004 _In_ PINFCONTEXT Context, 2005 _In_ DWORD FieldIndex, 2006 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2007 _In_ DWORD ReturnBufferSize, 2008 _Out_opt_ LPDWORD RequiredSize); 2009 2010 WINSETUPAPI 2011 BOOL 2012 WINAPI 2013 SetupGetMultiSzFieldW( 2014 _In_ PINFCONTEXT Context, 2015 _In_ DWORD FieldIndex, 2016 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2017 _In_ DWORD ReturnBufferSize, 2018 _Out_opt_ LPDWORD RequiredSize); 2019 2020 WINSETUPAPI 2021 BOOL 2022 WINAPI 2023 SetupGetSourceFileLocationA( 2024 _In_ HINF InfHandle, 2025 _In_opt_ PINFCONTEXT InfContext, 2026 _In_opt_ PCSTR FileName, 2027 _Out_ PUINT SourceId, 2028 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2029 _In_ DWORD ReturnBufferSize, 2030 _Out_opt_ PDWORD RequiredSize); 2031 2032 WINSETUPAPI 2033 BOOL 2034 WINAPI 2035 SetupGetSourceFileLocationW( 2036 _In_ HINF InfHandle, 2037 _In_opt_ PINFCONTEXT InfContext, 2038 _In_opt_ PCWSTR FileName, 2039 _Out_ PUINT SourceId, 2040 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2041 _In_ DWORD ReturnBufferSize, 2042 _Out_opt_ PDWORD RequiredSize); 2043 2044 WINSETUPAPI BOOL WINAPI SetupGetSourceFileSizeA(_In_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCSTR, _In_opt_ PCSTR, _Out_ PDWORD, _In_ UINT); 2045 WINSETUPAPI BOOL WINAPI SetupGetSourceFileSizeW(_In_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _Out_ PDWORD, _In_ UINT); 2046 2047 WINSETUPAPI 2048 BOOL 2049 WINAPI 2050 SetupGetSourceInfoA( 2051 _In_ HINF InfHandle, 2052 _In_ UINT SourceId, 2053 _In_ UINT InfoDesired, 2054 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2055 _In_ DWORD ReturnBufferSize, 2056 _Out_opt_ PDWORD RequiredSize); 2057 2058 WINSETUPAPI 2059 BOOL 2060 WINAPI 2061 SetupGetSourceInfoW( 2062 _In_ HINF InfHandle, 2063 _In_ UINT SourceId, 2064 _In_ UINT InfoDesired, 2065 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2066 _In_ DWORD ReturnBufferSize, 2067 _Out_opt_ PDWORD RequiredSize); 2068 2069 WINSETUPAPI 2070 BOOL 2071 WINAPI 2072 SetupGetStringFieldA( 2073 _In_ PINFCONTEXT Context, 2074 _In_ DWORD FieldIndex, 2075 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2076 _In_ DWORD ReturnBufferSize, 2077 _Out_opt_ PDWORD RequiredSize); 2078 2079 WINSETUPAPI 2080 BOOL 2081 WINAPI 2082 SetupGetStringFieldW( 2083 _In_ PINFCONTEXT Context, 2084 _In_ DWORD FieldIndex, 2085 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2086 _In_ DWORD ReturnBufferSize, 2087 _Out_opt_ PDWORD RequiredSize); 2088 2089 WINSETUPAPI 2090 BOOL 2091 WINAPI 2092 SetupGetTargetPathA( 2093 _In_ HINF InfHandle, 2094 _In_opt_ PINFCONTEXT InfContext, 2095 _In_opt_ PCSTR Section, 2096 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2097 _In_ DWORD ReturnBufferSize, 2098 _Out_opt_ PDWORD RequiredSize); 2099 2100 WINSETUPAPI 2101 BOOL 2102 WINAPI 2103 SetupGetTargetPathW( 2104 _In_ HINF InfHandle, 2105 _In_opt_ PINFCONTEXT InfContext, 2106 _In_opt_ PCWSTR Section, 2107 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2108 _In_ DWORD ReturnBufferSize, 2109 _Out_opt_ PDWORD RequiredSize); 2110 2111 WINSETUPAPI PVOID WINAPI SetupInitDefaultQueueCallback(_In_opt_ HWND); 2112 WINSETUPAPI PVOID WINAPI SetupInitDefaultQueueCallbackEx(_In_opt_ HWND, _In_opt_ HWND, _In_ UINT, _Reserved_ DWORD, _Reserved_ PVOID); 2113 WINSETUPAPI HSPFILELOG WINAPI SetupInitializeFileLogA(_In_opt_ PCSTR, _In_ DWORD); 2114 WINSETUPAPI HSPFILELOG WINAPI SetupInitializeFileLogW(_In_opt_ PCWSTR, _In_ DWORD); 2115 WINSETUPAPI BOOL WINAPI SetupInstallFileA(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID); 2116 WINSETUPAPI BOOL WINAPI SetupInstallFileW(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID); 2117 WINSETUPAPI BOOL WINAPI SetupInstallFileExA(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID, _Out_ PBOOL); 2118 WINSETUPAPI BOOL WINAPI SetupInstallFileExW(_In_opt_ HINF, _In_opt_ PINFCONTEXT, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID, _Out_ PBOOL); 2119 WINSETUPAPI BOOL WINAPI SetupInstallFilesFromInfSectionA(_In_ HINF, _In_opt_ HINF, _In_ HSPFILEQ, _In_ PCSTR, _In_opt_ PCSTR, _In_ UINT); 2120 WINSETUPAPI BOOL WINAPI SetupInstallFilesFromInfSectionW(_In_ HINF, _In_opt_ HINF, _In_ HSPFILEQ, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ UINT); 2121 WINSETUPAPI BOOL WINAPI SetupInstallFromInfSectionA(_In_opt_ HWND, _In_ HINF, _In_ PCSTR, _In_ UINT, _In_opt_ HKEY, _In_opt_ PCSTR, _In_ UINT, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA); 2122 WINSETUPAPI BOOL WINAPI SetupInstallFromInfSectionW(_In_opt_ HWND, _In_ HINF, _In_ PCWSTR, _In_ UINT, _In_opt_ HKEY, _In_opt_ PCWSTR, _In_ UINT, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA); 2123 WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionA(_In_ HINF, _In_ PCSTR, _In_ DWORD); 2124 WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionW(_In_ HINF, _In_ PCWSTR, _In_ DWORD); 2125 WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionExA(_In_ HINF, _In_ PCSTR, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Reserved_ PVOID, _Reserved_ PVOID); 2126 WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionExW(_In_ HINF, _In_ PCWSTR, _In_ DWORD, _In_opt_ HDEVINFO, _In_opt_ PSP_DEVINFO_DATA, _Reserved_ PVOID, _Reserved_ PVOID); 2127 WINSETUPAPI BOOL WINAPI SetupIterateCabinetA(_In_ PCSTR, _Reserved_ DWORD, _In_ PSP_FILE_CALLBACK_A, _In_ PVOID); 2128 WINSETUPAPI BOOL WINAPI SetupIterateCabinetW(_In_ PCWSTR, _Reserved_ DWORD, _In_ PSP_FILE_CALLBACK_W, _In_ PVOID); 2129 WINSETUPAPI BOOL WINAPI SetupLogErrorA(_In_ LPCSTR, _In_ LogSeverity); 2130 WINSETUPAPI BOOL WINAPI SetupLogErrorW(_In_ LPCWSTR, _In_ LogSeverity); 2131 WINSETUPAPI BOOL WINAPI SetupLogFileA(_In_ HSPFILELOG, _In_opt_ PCSTR, _In_ PCSTR, _In_ PCSTR, _In_ DWORD, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ DWORD); 2132 WINSETUPAPI BOOL WINAPI SetupLogFileW(_In_ HSPFILELOG, _In_opt_ PCWSTR, _In_ PCWSTR, _In_ PCWSTR, _In_ DWORD, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD); 2133 2134 WINSETUPAPI 2135 BOOL 2136 WINAPI 2137 SetupOpenAppendInfFileA( 2138 _In_opt_ PCSTR FileName, 2139 _In_ HINF InfHandle, 2140 _Out_opt_ PUINT ErrorLine); 2141 2142 WINSETUPAPI 2143 BOOL 2144 WINAPI 2145 SetupOpenAppendInfFileW( 2146 _In_opt_ PCWSTR FileName, 2147 _In_ HINF InfHandle, 2148 _Out_opt_ PUINT ErrorLine); 2149 2150 WINSETUPAPI HSPFILEQ WINAPI SetupOpenFileQueue(VOID); 2151 2152 WINSETUPAPI 2153 HINF 2154 WINAPI 2155 SetupOpenInfFileA( 2156 _In_ PCSTR FileName, 2157 _In_opt_ PCSTR InfClass, 2158 _In_ DWORD InfStyle, 2159 _Out_opt_ PUINT ErrorLine); 2160 2161 WINSETUPAPI 2162 HINF 2163 WINAPI 2164 SetupOpenInfFileW( 2165 _In_ PCWSTR FileName, 2166 _In_opt_ PCWSTR InfClass, 2167 _In_ DWORD InfStyle, 2168 _Out_opt_ PUINT ErrorLine); 2169 2170 WINSETUPAPI BOOL WINAPI SetupOpenLog(_In_ BOOL); 2171 WINSETUPAPI HINF WINAPI SetupOpenMasterInf(VOID); 2172 2173 WINSETUPAPI 2174 UINT 2175 WINAPI 2176 SetupPromptForDiskA( 2177 _In_ HWND hwndParent, 2178 _In_opt_ PCSTR DialogTitle, 2179 _In_opt_ PCSTR DiskName, 2180 _In_opt_ PCSTR PathToSource, 2181 _In_ PCSTR FileSought, 2182 _In_opt_ PCSTR TagFile, 2183 _In_ DWORD DiskPromptStyle, 2184 _Out_writes_opt_(PathBufferSize) PSTR PathBuffer, 2185 _In_ DWORD PathBufferSize, 2186 _Out_opt_ PDWORD PathRequiredSize); 2187 2188 WINSETUPAPI 2189 UINT 2190 WINAPI 2191 SetupPromptForDiskW( 2192 _In_ HWND hwndParent, 2193 _In_opt_ PCWSTR DialogTitle, 2194 _In_opt_ PCWSTR DiskName, 2195 _In_opt_ PCWSTR PathToSource, 2196 _In_ PCWSTR FileSought, 2197 _In_opt_ PCWSTR TagFile, 2198 _In_ DWORD DiskPromptStyle, 2199 _Out_writes_opt_(PathBufferSize) PWSTR PathBuffer, 2200 _In_ DWORD PathBufferSize, 2201 _Out_opt_ PDWORD PathRequiredSize); 2202 2203 WINSETUPAPI INT WINAPI SetupPromptReboot(_In_opt_ HSPFILEQ, _In_opt_ HWND, _In_ BOOL); 2204 WINSETUPAPI BOOL WINAPI SetupQueryA(DWORD,PCSTR**,PUINT); 2205 WINSETUPAPI BOOL WINAPI SetupQueryW(DWORD,PCWSTR**,PUINT); 2206 2207 WINSETUPAPI 2208 BOOL 2209 WINAPI 2210 SetupQueryDrivesInDiskSpaceListA( 2211 _In_ HDSKSPC DiskSpace, 2212 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2213 _In_ DWORD ReturnBufferSize, 2214 _Out_opt_ PDWORD RequiredSize); 2215 2216 WINSETUPAPI 2217 BOOL 2218 WINAPI 2219 SetupQueryDrivesInDiskSpaceListW( 2220 _In_ HDSKSPC DiskSpace, 2221 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2222 _In_ DWORD ReturnBufferSize, 2223 _Out_opt_ PDWORD RequiredSize); 2224 2225 WINSETUPAPI 2226 BOOL 2227 WINAPI 2228 SetupQueryFileLogA( 2229 _In_ HSPFILELOG FileLogHandle, 2230 _In_opt_ PCSTR LogSectionName, 2231 _In_ PCSTR TargetFilename, 2232 _In_ SetupFileLogInfo DesiredInfo, 2233 _Out_writes_opt_(ReturnBufferSize) PSTR DataOut, 2234 _In_ DWORD ReturnBufferSize, 2235 _Out_opt_ PDWORD RequiredSize); 2236 2237 WINSETUPAPI 2238 BOOL 2239 WINAPI 2240 SetupQueryFileLogW( 2241 _In_ HSPFILELOG FileLogHandle, 2242 _In_opt_ PCWSTR LogSectionName, 2243 _In_ PCWSTR TargetFilename, 2244 _In_ SetupFileLogInfo DesiredInfo, 2245 _Out_writes_opt_(ReturnBufferSize) PWSTR DataOut, 2246 _In_ DWORD ReturnBufferSize, 2247 _Out_opt_ PDWORD RequiredSize); 2248 2249 WINSETUPAPI 2250 BOOL 2251 WINAPI 2252 SetupQueryInfFileInformationA( 2253 _In_ PSP_INF_INFORMATION InfInformation, 2254 _In_ UINT InfIndex, 2255 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2256 _In_ DWORD ReturnBufferSize, 2257 _Out_opt_ PDWORD RequiredSize); 2258 2259 WINSETUPAPI 2260 BOOL 2261 WINAPI 2262 SetupQueryInfFileInformationW( 2263 _In_ PSP_INF_INFORMATION InfInformation, 2264 _In_ UINT InfIndex, 2265 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2266 _In_ DWORD ReturnBufferSize, 2267 _Out_opt_ PDWORD RequiredSize); 2268 2269 WINSETUPAPI 2270 BOOL 2271 WINAPI 2272 SetupQueryInfOriginalFileInformationA( 2273 _In_ PSP_INF_INFORMATION InfInformation, 2274 _In_ UINT InfIndex, 2275 _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, 2276 _Out_ PSP_ORIGINAL_FILE_INFO_A OriginalFileInfo); 2277 2278 WINSETUPAPI 2279 BOOL 2280 WINAPI 2281 SetupQueryInfOriginalFileInformationW( 2282 _In_ PSP_INF_INFORMATION InfInformation, 2283 _In_ UINT InfIndex, 2284 _In_opt_ PSP_ALTPLATFORM_INFO AlternatePlatformInfo, 2285 _Out_ PSP_ORIGINAL_FILE_INFO_W OriginalFileInfo); 2286 2287 WINSETUPAPI 2288 BOOL 2289 WINAPI 2290 SetupQueryInfVersionInformationA( 2291 _In_ PSP_INF_INFORMATION InfInformation, 2292 _In_ UINT InfIndex, 2293 _In_opt_ PCSTR Key, 2294 _Out_writes_opt_(ReturnBufferSize) PSTR ReturnBuffer, 2295 _In_ DWORD ReturnBufferSize, 2296 _Out_opt_ PDWORD RequiredSize); 2297 2298 WINSETUPAPI 2299 BOOL 2300 WINAPI 2301 SetupQueryInfVersionInformationW( 2302 _In_ PSP_INF_INFORMATION InfInformation, 2303 _In_ UINT InfIndex, 2304 _In_opt_ PCWSTR Key, 2305 _Out_writes_opt_(ReturnBufferSize) PWSTR ReturnBuffer, 2306 _In_ DWORD ReturnBufferSize, 2307 _Out_opt_ PDWORD RequiredSize); 2308 2309 WINSETUPAPI BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(_In_ HDSKSPC, _In_ PCSTR, _Out_ LONGLONG*, _Reserved_ PVOID, _Reserved_ UINT); 2310 WINSETUPAPI BOOL WINAPI SetupQuerySpaceRequiredOnDriveW(_In_ HDSKSPC, _In_ PCWSTR, _Out_ LONGLONG*, _Reserved_ PVOID, _Reserved_ UINT); 2311 WINSETUPAPI BOOL WINAPI SetupQueueCopyA(_In_ HSPFILEQ, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_ DWORD); 2312 WINSETUPAPI BOOL WINAPI SetupQueueCopyW(_In_ HSPFILEQ, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD); 2313 WINSETUPAPI BOOL WINAPI SetupQueueCopyIndirectA(_In_ PSP_FILE_COPY_PARAMS_A); 2314 WINSETUPAPI BOOL WINAPI SetupQueueCopyIndirectW(_In_ PSP_FILE_COPY_PARAMS_W); 2315 WINSETUPAPI BOOL WINAPI SetupQueueCopySectionA(_In_ HSPFILEQ, _In_opt_ PCSTR, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _In_ DWORD); 2316 WINSETUPAPI BOOL WINAPI SetupQueueCopySectionW(_In_ HSPFILEQ, _In_opt_ PCWSTR, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _In_ DWORD); 2317 WINSETUPAPI BOOL WINAPI SetupQueueDefaultCopyA(_In_ HSPFILEQ, _In_ HINF, _In_opt_ PCSTR, _In_ PCSTR, _In_opt_ PCSTR, _In_ DWORD); 2318 WINSETUPAPI BOOL WINAPI SetupQueueDefaultCopyW(_In_ HSPFILEQ, _In_ HINF, _In_opt_ PCWSTR, _In_ PCWSTR, _In_opt_ PCWSTR, _In_ DWORD); 2319 WINSETUPAPI BOOL WINAPI SetupQueueDeleteA(_In_ HSPFILEQ, _In_ PCSTR, _In_opt_ PCSTR); 2320 WINSETUPAPI BOOL WINAPI SetupQueueDeleteW(_In_ HSPFILEQ, _In_ PCWSTR, _In_opt_ PCWSTR); 2321 WINSETUPAPI BOOL WINAPI SetupQueueDeleteSectionA(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCSTR); 2322 WINSETUPAPI BOOL WINAPI SetupQueueDeleteSectionW(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR); 2323 WINSETUPAPI BOOL WINAPI SetupQueueRenameA(_In_ HSPFILEQ, _In_ PCSTR, _In_opt_ PCSTR, _In_opt_ PCSTR, _In_ PCSTR); 2324 WINSETUPAPI BOOL WINAPI SetupQueueRenameW(_In_ HSPFILEQ, _In_ PCWSTR, _In_opt_ PCWSTR, _In_opt_ PCWSTR, _In_ PCWSTR); 2325 WINSETUPAPI BOOL WINAPI SetupQueueRenameSectionA(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCSTR); 2326 WINSETUPAPI BOOL WINAPI SetupQueueRenameSectionW(_In_ HSPFILEQ, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR); 2327 WINSETUPAPI BOOL WINAPI SetupRemoveFileLogEntryA(_In_ HSPFILELOG, _In_opt_ PCSTR, _In_opt_ PCSTR); 2328 WINSETUPAPI BOOL WINAPI SetupRemoveFileLogEntryW(_In_ HSPFILELOG, _In_opt_ PCWSTR, _In_opt_ PCWSTR); 2329 WINSETUPAPI BOOL WINAPI SetupRemoveFromDiskSpaceListA(_In_ HDSKSPC, _In_ PCSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 2330 WINSETUPAPI BOOL WINAPI SetupRemoveFromDiskSpaceListW(_In_ HDSKSPC, _In_ PCWSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 2331 WINSETUPAPI BOOL WINAPI SetupRemoveFromSourceListA(_In_ DWORD, _In_ PCSTR); 2332 WINSETUPAPI BOOL WINAPI SetupRemoveFromSourceListW(_In_ DWORD, _In_ PCWSTR); 2333 WINSETUPAPI BOOL WINAPI SetupRemoveInstallSectionFromDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _Reserved_ PVOID, _Reserved_ UINT); 2334 WINSETUPAPI BOOL WINAPI SetupRemoveInstallSectionFromDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _Reserved_ PVOID, _Reserved_ UINT); 2335 WINSETUPAPI BOOL WINAPI SetupRemoveSectionFromDiskSpaceListA(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 2336 WINSETUPAPI BOOL WINAPI SetupRemoveSectionFromDiskSpaceListW(_In_ HDSKSPC, _In_ HINF, _In_opt_ HINF, _In_ PCWSTR, _In_ UINT, _Reserved_ PVOID, _Reserved_ UINT); 2337 WINSETUPAPI UINT WINAPI SetupRenameErrorA(_In_ HWND, _In_opt_ PCSTR, _In_ PCSTR, _In_ PCSTR, _In_ UINT, _In_ DWORD); 2338 WINSETUPAPI UINT WINAPI SetupRenameErrorW(_In_ HWND, _In_opt_ PCWSTR, _In_ PCWSTR, _In_ PCWSTR, _In_ UINT, _In_ DWORD); 2339 WINSETUPAPI BOOL WINAPI SetupScanFileQueueA(_In_ HSPFILEQ, _In_ DWORD, _In_opt_ HWND, _In_opt_ PSP_FILE_CALLBACK_A, _In_opt_ PVOID, _Out_ PDWORD); 2340 WINSETUPAPI BOOL WINAPI SetupScanFileQueueW(_In_ HSPFILEQ, _In_ DWORD, _In_opt_ HWND, _In_opt_ PSP_FILE_CALLBACK_W, _In_opt_ PVOID, _Out_ PDWORD); 2341 WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdA(_In_ HINF, _In_ DWORD, _In_opt_ PCSTR); 2342 WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdW(_In_ HINF, _In_ DWORD, _In_opt_ PCWSTR); 2343 WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdExA(_In_ HINF, _In_ DWORD, _In_opt_ PCSTR, _In_ DWORD, _Reserved_ DWORD, _Reserved_ PVOID); 2344 WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdExW(_In_ HINF, _In_ DWORD, _In_opt_ PCWSTR, _In_ DWORD, _Reserved_ DWORD, _Reserved_ PVOID); 2345 WINSETUPAPI BOOL WINAPI SetupSetFileQueueAlternatePlatformA(_In_ HSPFILEQ, _In_opt_ PSP_ALTPLATFORM_INFO, _In_opt_ PCSTR); 2346 WINSETUPAPI BOOL WINAPI SetupSetFileQueueAlternatePlatformW(_In_ HSPFILEQ, _In_opt_ PSP_ALTPLATFORM_INFO, _In_opt_ PCWSTR); 2347 WINSETUPAPI BOOL WINAPI SetupSetNonInteractiveMode(_In_ BOOL); 2348 WINSETUPAPI BOOL WINAPI SetupSetPlatformPathOverrideA(_In_opt_ PCSTR); 2349 WINSETUPAPI BOOL WINAPI SetupSetPlatformPathOverrideW(_In_opt_ PCWSTR); 2350 2351 WINSETUPAPI 2352 BOOL 2353 WINAPI 2354 SetupSetSourceListA( 2355 _In_ DWORD Flags, 2356 _In_reads_(SourceCount) PCSTR *SourceList, 2357 _In_ UINT SourceCount); 2358 2359 WINSETUPAPI 2360 BOOL 2361 WINAPI 2362 SetupSetSourceListW( 2363 _In_ DWORD Flags, 2364 _In_reads_(SourceCount) PCWSTR *SourceList, 2365 _In_ UINT SourceCount); 2366 2367 WINSETUPAPI VOID WINAPI SetupTermDefaultQueueCallback(_In_ PVOID); 2368 WINSETUPAPI BOOL WINAPI SetupTerminateFileLog(_In_ HSPFILELOG); 2369 2370 WINSETUPAPI 2371 BOOL 2372 WINAPI 2373 SetupUninstallOEMInfA( 2374 _In_ PCSTR InfFileName, 2375 _In_ DWORD Flags, 2376 _In_ PVOID Reserved); 2377 2378 WINSETUPAPI 2379 BOOL 2380 WINAPI 2381 SetupUninstallOEMInfW( 2382 _In_ PCWSTR InfFileName, 2383 _In_ DWORD Flags, 2384 _In_ PVOID Reserved); 2385 2386 WINSETUPAPI DWORD WINAPI StampFileSecurity(PCWSTR, PSECURITY_DESCRIPTOR); 2387 2388 2389 WINSETUPAPI DWORD WINAPI pSetupCaptureAndConvertAnsiArg(PCSTR, PWSTR*); 2390 WINSETUPAPI VOID WINAPI pSetupCenterWindowRelativeToParent(HWND); 2391 WINSETUPAPI BOOL WINAPI pSetupConcatenatePaths(LPWSTR, LPCWSTR, DWORD, LPDWORD); 2392 WINSETUPAPI PWSTR WINAPI pSetupDuplicateString(PCWSTR); 2393 WINSETUPAPI BOOL WINAPI pSetupEnablePrivilege(PCWSTR, BOOL); 2394 WINSETUPAPI PWSTR WINAPI pSetupGetFileTitle(PCWSTR); 2395 WINSETUPAPI BOOL WINAPI pSetupGetVersionInfoFromImage(LPWSTR, PULARGE_INTEGER, LPWORD); 2396 WINSETUPAPI DWORD WINAPI pSetupGuidFromString(PCWSTR, LPGUID); 2397 WINSETUPAPI BOOL WINAPI pSetupIsGuidNull(LPGUID); 2398 WINSETUPAPI BOOL WINAPI pSetupIsUserAdmin(VOID); 2399 WINSETUPAPI PWSTR WINAPI pSetupMultiByteToUnicode(PCSTR, UINT); 2400 WINSETUPAPI DWORD WINAPI pSetupOpenAndMapForRead(PCWSTR, PDWORD, PHANDLE, PHANDLE, PVOID*); 2401 WINSETUPAPI DWORD WINAPI pSetupStringFromGuid(LPGUID, PWSTR, DWORD); 2402 2403 2404 WINSETUPAPI DWORD WINAPI pSetupStringTableAddString(HSTRING_TABLE, LPWSTR, DWORD); 2405 WINSETUPAPI DWORD WINAPI pSetupStringTableAddStringEx(HSTRING_TABLE, LPWSTR, DWORD, LPVOID, DWORD); 2406 WINSETUPAPI VOID WINAPI pSetupStringTableDestroy(HSTRING_TABLE); 2407 WINSETUPAPI HSTRING_TABLE WINAPI pSetupStringTableDuplicate(HSTRING_TABLE); 2408 WINSETUPAPI BOOL WINAPI pSetupStringTableGetExtraData(HSTRING_TABLE, DWORD, LPVOID, DWORD); 2409 WINSETUPAPI HSTRING_TABLE WINAPI pSetupStringTableInitialize(VOID); 2410 WINSETUPAPI HSTRING_TABLE WINAPI pSetupStringTableInitializeEx(DWORD, DWORD); 2411 WINSETUPAPI DWORD WINAPI pSetupStringTableLookUpString(HSTRING_TABLE, LPWSTR, DWORD); 2412 WINSETUPAPI DWORD WINAPI pSetupStringTableLookUpStringEx(HSTRING_TABLE, LPWSTR, DWORD, LPVOID, DWORD); 2413 WINSETUPAPI BOOL WINAPI pSetupStringTableSetExtraData(HSTRING_TABLE, DWORD, LPVOID, DWORD); 2414 WINSETUPAPI LPWSTR WINAPI pSetupStringTableStringFromId(HSTRING_TABLE, DWORD); 2415 WINSETUPAPI BOOL WINAPI pSetupStringTableStringFromIdEx(HSTRING_TABLE, DWORD, LPWSTR, LPDWORD); 2416 2417 WINSETUPAPI PSTR WINAPI pSetupUnicodeToMultiByte(PCWSTR lpUnicodeStr, UINT uCodePage); 2418 WINSETUPAPI BOOL WINAPI pSetupUnmapAndCloseFile(HANDLE, HANDLE, PVOID); 2419 2420 2421 WINSETUPAPI DWORD WINAPI TakeOwnershipOfFile(PCWSTR); 2422 WINSETUPAPI PSTR WINAPI UnicodeToMultiByte(PCWSTR lpUnicodeStr, UINT uCodePage); 2423 2424 2425 /* for backward compatability */ 2426 #define SetupDiCreateInterfaceDeviceW SetupDiCreateDeviceInterfaceW 2427 #define SetupDiCreateInterfaceDeviceRegKeyW SetupDiCreateDeviceInterfaceRegKeyW 2428 #define SetupDiOpenInterfaceDeviceW SetupDiOpenDeviceInterfaceW 2429 #define SetupDiGetInterfaceDeviceDetailW SetupDiGetDeviceInterfaceDetailW 2430 #define SetupDiCreateInterfaceDeviceA SetupDiCreateDeviceInterfaceA 2431 #define SetupDiCreateInterfaceDeviceRegKeyA SetupDiCreateDeviceInterfaceRegKeyA 2432 #define SetupDiOpenInterfaceDeviceA SetupDiOpenDeviceInterfaceA 2433 #define SetupDiGetInterfaceDeviceDetailA SetupDiGetDeviceInterfaceDetailA 2434 2435 #ifdef UNICODE 2436 #define PSP_FILE_CALLBACK PSP_FILE_CALLBACK_W 2437 #define InstallHinfSection InstallHinfSectionW 2438 #define SetupAddInstallSectionToDiskSpaceList SetupAddInstallSectionToDiskSpaceListW 2439 #define SetupAddSectionToDiskSpaceList SetupAddSectionToDiskSpaceListW 2440 #define SetupAddToDiskSpaceList SetupAddToDiskSpaceListW 2441 #define SetupAddToSourceList SetupAddToSourceListW 2442 #define SetupAdjustDiskSpaceList SetupAdjustDiskSpaceListW 2443 #define SetupBackupError SetupBackupErrorW 2444 #define SetupCommitFileQueue SetupCommitFileQueueW 2445 #define SetupCopyError SetupCopyErrorW 2446 #define SetupCopyOEMInf SetupCopyOEMInfW 2447 #define SetupCreateDiskSpaceList SetupCreateDiskSpaceListW 2448 #define SetupDecompressOrCopyFile SetupDecompressOrCopyFileW 2449 #define SetupDefaultQueueCallback SetupDefaultQueueCallbackW 2450 #define SetupDeleteError SetupDeleteErrorW 2451 #define SetupDiBuildClassInfoListEx SetupDiBuildClassInfoListExW 2452 #define SetupDiClassGuidsFromNameEx SetupDiClassGuidsFromNameExW 2453 #define SetupDiClassGuidsFromName SetupDiClassGuidsFromNameW 2454 #define SetupDiClassNameFromGuidEx SetupDiClassNameFromGuidExW 2455 #define SetupDiClassNameFromGuid SetupDiClassNameFromGuidW 2456 #define SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInfoListExW 2457 #define SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoW 2458 #define SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDeviceInterfaceRegKeyW 2459 #define SetupDiCreateInterfaceDeviceRegKey SetupDiCreateDeviceInterfaceRegKeyW 2460 #define SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceW 2461 #define SetupDiCreateInterfaceDevice SetupDiCreateDeviceInterfaceW 2462 #define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyW 2463 #define SetupDiEnumDriverInfo SetupDiEnumDriverInfoW 2464 #define SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallW 2465 #define SetupDiGetActualSectionToInstallEx SetupDiGetActualSectionToInstallExW 2466 #define SetupDiGetClassDescriptionEx SetupDiGetClassDescriptionExW 2467 #define SetupDiGetClassDescription SetupDiGetClassDescriptionW 2468 #define SetupDiGetClassDevPropertySheets SetupDiGetClassDevPropertySheetsW 2469 #define SetupDiGetClassDevsEx SetupDiGetClassDevsExW 2470 #define SetupDiGetClassDevs SetupDiGetClassDevsW 2471 #define SetupDiGetClassImageListEx SetupDiGetClassImageListExW 2472 #define SetupDiGetClassInstallParams SetupDiGetClassInstallParamsW 2473 #define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyW 2474 #define SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInfoListDetailW 2475 #define SetupDiGetDeviceInstallParams SetupDiGetDeviceInstallParamsW 2476 #define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdW 2477 #define SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfaceDetailW 2478 #define SetupDiGetInterfaceDeviceDetail SetupDiGetDeviceInterfaceDetailW 2479 #define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyW 2480 #define SetupDiGetDriverInfoDetail SetupDiGetDriverInfoDetailW 2481 #define SetupDiGetDriverInstallParams SetupDiGetDriverInstallParamsW 2482 #define SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileFriendlyNameExW 2483 #define SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameW 2484 #define SetupDiGetHwProfileListEx SetupDiGetHwProfileListExW 2485 #define SetupDiGetINFClass SetupDiGetINFClassW 2486 #define SetupDiGetSelectedDriver SetupDiGetSelectedDriverW 2487 #define SetupDiInstallClassEx SetupDiInstallClassExW 2488 #define SetupDiInstallClass SetupDiInstallClassW 2489 #define SetupDiOpenClassRegKeyEx SetupDiOpenClassRegKeyExW 2490 #define SetupDiOpenDeviceInfo SetupDiOpenDeviceInfoW 2491 #define SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceW 2492 #define SetupDiOpenInterfaceDevice SetupDiOpenDeviceInterfaceW 2493 #define SetupDiSetClassInstallParams SetupDiSetClassInstallParamsW 2494 #define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyW 2495 #define SetupDiSetDeviceInstallParams SetupDiSetDeviceInstallParamsW 2496 #define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyW 2497 #define SetupDiSetDriverInstallParams SetupDiSetDriverInstallParamsW 2498 #define SetupDiSetSelectedDriver SetupDiSetSelectedDriverW 2499 #define SetupDuplicateDiskSpaceList SetupDuplicateDiskSpaceListW 2500 #define SetupFindFirstLine SetupFindFirstLineW 2501 #define SetupFindNextMatchLine SetupFindNextMatchLineW 2502 #define SetupFreeSourceList SetupFreeSourceListW 2503 #define SetupGetBackupInformation SetupGetBackupInformationW 2504 #define SetupGetFileCompressionInfo SetupGetFileCompressionInfoW 2505 #define SetupGetFileCompressionInfoEx SetupGetFileCompressionInfoExW 2506 #define SetupGetInfFileList SetupGetInfFileListW 2507 #define SetupGetInfInformation SetupGetInfInformationW 2508 #define SetupGetLineByIndex SetupGetLineByIndexW 2509 #define SetupGetLineCount SetupGetLineCountW 2510 #define SetupGetLineText SetupGetLineTextW 2511 #define SetupGetMultiSzField SetupGetMultiSzFieldW 2512 #define SetupGetSourceFileLocation SetupGetSourceFileLocationW 2513 #define SetupGetSourceFileSize SetupGetSourceFileSizeW 2514 #define SetupGetSourceInfo SetupGetSourceInfoW 2515 #define SetupGetStringField SetupGetStringFieldW 2516 #define SetupGetTargetPath SetupGetTargetPathW 2517 #define SetupInitializeFileLog SetupInitializeFileLogW 2518 #define SetupInstallFileEx SetupInstallFileExW 2519 #define SetupInstallFilesFromInfSection SetupInstallFilesFromInfSectionW 2520 #define SetupInstallFile SetupInstallFileW 2521 #define SetupInstallFromInfSection SetupInstallFromInfSectionW 2522 #define SetupInstallServicesFromInfSectionEx SetupInstallServicesFromInfSectionExW 2523 #define SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionW 2524 #define SetupIterateCabinet SetupIterateCabinetW 2525 #define SetupLogError SetupLogErrorW 2526 #define SetupLogFile SetupLogFileW 2527 #define SetupOpenAppendInfFile SetupOpenAppendInfFileW 2528 #define SetupOpenInfFile SetupOpenInfFileW 2529 #define SetupPromptForDisk SetupPromptForDiskW 2530 #define SetupQueryDrivesInDiskSpaceList SetupQueryDrivesInDiskSpaceListW 2531 #define SetupQueryFileLog SetupQueryFileLogW 2532 #define SetupQueryInfFileInformation SetupQueryInfFileInformationW 2533 #define SetupQueryInfOriginalFileInformation SetupQueryInfOriginalFileInformationW 2534 #define SetupQueryInfVersionInformation SetupQueryInfVersionInformationW 2535 #define SetupQuerySourceList SetupQuerySourceListW 2536 #define SetupQuerySpaceRequiredOnDrive SetupQuerySpaceRequiredOnDriveW 2537 #define SetupQueueCopyIndirect SetupQueueCopyIndirectW 2538 #define SetupQueueCopySection SetupQueueCopySectionW 2539 #define SetupQueueCopy SetupQueueCopyW 2540 #define SetupQueueDefaultCopy SetupQueueDefaultCopyW 2541 #define SetupQueueDeleteSection SetupQueueDeleteSectionW 2542 #define SetupQueueDelete SetupQueueDeleteW 2543 #define SetupQueueRenameSection SetupQueueRenameSectionW 2544 #define SetupQueueRename SetupQueueRenameW 2545 #define SetupRemoveFileLogEntry SetupRemoveFileLogEntryW 2546 #define SetupRemoveFromDiskSpaceList SetupRemoveFromDiskSpaceListW 2547 #define SetupRemoveFromSourceList SetupRemoveFromSourceListW 2548 #define SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveInstallSectionFromDiskSpaceListW 2549 #define SetupRemoveSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceListW 2550 #define SetupRenameError SetupRenameErrorW 2551 #define SetupScanFileQueue SetupScanFileQueueW 2552 #define SetupSetDirectoryIdEx SetupSetDirectoryIdExW 2553 #define SetupSetDirectoryId SetupSetDirectoryIdW 2554 #define SetupSetFileQueueAlternatePlatform SetupSetFileQueueAlternatePlatformW 2555 #define SetupSetPlatformPathOverride SetupSetPlatformPathOverrideW 2556 #define SetupSetSourceList SetupSetSourceListW 2557 #define SetupUninstallOEMInf SetupUninstallOEMInfW 2558 #else 2559 #define PSP_FILE_CALLBACK PSP_FILE_CALLBACK_A 2560 #define InstallHinfSection InstallHinfSectionA 2561 #define SetupAddInstallSectionToDiskSpaceList SetupAddInstallSectionToDiskSpaceListA 2562 #define SetupAddSectionToDiskSpaceList SetupAddSectionToDiskSpaceListA 2563 #define SetupAddToDiskSpaceList SetupAddToDiskSpaceListA 2564 #define SetupAddToSourceList SetupAddToSourceListA 2565 #define SetupAdjustDiskSpaceList SetupAdjustDiskSpaceListA 2566 #define SetupBackupError SetupBackupErrorA 2567 #define SetupCommitFileQueue SetupCommitFileQueueA 2568 #define SetupCopyError SetupCopyErrorA 2569 #define SetupCopyOEMInf SetupCopyOEMInfA 2570 #define SetupCreateDiskSpaceList SetupCreateDiskSpaceListA 2571 #define SetupDecompressOrCopyFile SetupDecompressOrCopyFileA 2572 #define SetupDefaultQueueCallback SetupDefaultQueueCallbackA 2573 #define SetupDeleteError SetupDeleteErrorA 2574 #define SetupDiBuildClassInfoListEx SetupDiBuildClassInfoListExA 2575 #define SetupDiClassGuidsFromName SetupDiClassGuidsFromNameA 2576 #define SetupDiClassGuidsFromNameEx SetupDiClassGuidsFromNameExA 2577 #define SetupDiClassNameFromGuid SetupDiClassNameFromGuidA 2578 #define SetupDiClassNameFromGuidEx SetupDiClassNameFromGuidExA 2579 #define SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoA 2580 #define SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInfoListExA 2581 #define SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceA 2582 #define SetupDiCreateInterfaceDevice SetupDiCreateDeviceInterfaceA 2583 #define SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDeviceInterfaceRegKeyA 2584 #define SetupDiCreateInterfaceDeviceRegKey SetupDiCreateDeviceInterfaceRegKeyA 2585 #define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyA 2586 #define SetupDiDeleteInterfaceDeviceData SetupDiDeleteDeviceInterfaceData 2587 #define SetupDiEnumDriverInfo SetupDiEnumDriverInfoA 2588 #define SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallA 2589 #define SetupDiGetActualSectionToInstallEx SetupDiGetActualSectionToInstallExA 2590 #define SetupDiGetClassDescription SetupDiGetClassDescriptionA 2591 #define SetupDiGetClassDescriptionEx SetupDiGetClassDescriptionExA 2592 #define SetupDiGetClassDevPropertySheets SetupDiGetClassDevPropertySheetsA 2593 #define SetupDiGetClassDevs SetupDiGetClassDevsA 2594 #define SetupDiGetClassDevsEx SetupDiGetClassDevsExA 2595 #define SetupDiGetClassImageListEx SetupDiGetClassImageListExA 2596 #define SetupDiGetClassInstallParams SetupDiGetClassInstallParamsA 2597 #define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyA 2598 #define SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInfoListDetailA 2599 #define SetupDiGetDeviceInstallParams SetupDiGetDeviceInstallParamsA 2600 #define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdA 2601 #define SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfaceDetailA 2602 #define SetupDiGetInterfaceDeviceDetail SetupDiGetDeviceInterfaceDetailA 2603 #define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyA 2604 #define SetupDiGetDriverInfoDetail SetupDiGetDriverInfoDetailA 2605 #define SetupDiGetDriverInstallParams SetupDiGetDriverInstallParamsA 2606 #define SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameA 2607 #define SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileFriendlyNameExA 2608 #define SetupDiGetHwProfileListEx SetupDiGetHwProfileListExA 2609 #define SetupDiGetINFClass SetupDiGetINFClassA 2610 #define SetupDiGetSelectedDriver SetupDiGetSelectedDriverA 2611 #define SetupDiInstallClass SetupDiInstallClassA 2612 #define SetupDiInstallClassEx SetupDiInstallClassExA 2613 #define SetupDiOpenClassRegKeyEx SetupDiOpenClassRegKeyExA 2614 #define SetupDiOpenDeviceInfo SetupDiOpenDeviceInfoA 2615 #define SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceA 2616 #define SetupDiOpenInterfaceDevice SetupDiOpenDeviceInterfaceA 2617 #define SetupDiSetClassInstallParams SetupDiSetClassInstallParamsA 2618 #define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyA 2619 #define SetupDiSetDeviceInstallParams SetupDiSetDeviceInstallParamsA 2620 #define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyA 2621 #define SetupDiSetDriverInstallParams SetupDiSetDriverInstallParamsA 2622 #define SetupDiSetSelectedDriver SetupDiSetSelectedDriverA 2623 #define SetupDuplicateDiskSpaceList SetupDuplicateDiskSpaceListA 2624 #define SetupFindFirstLine SetupFindFirstLineA 2625 #define SetupFindNextMatchLine SetupFindNextMatchLineA 2626 #define SetupFreeSourceList SetupFreeSourceListA 2627 #define SetupGetBackupInformation SetupGetBackupInformationA 2628 #define SetupGetFileCompressionInfo SetupGetFileCompressionInfoA 2629 #define SetupGetFileCompressionInfoEx SetupGetFileCompressionInfoExA 2630 #define SetupGetInfFileList SetupGetInfFileListA 2631 #define SetupGetInfInformation SetupGetInfInformationA 2632 #define SetupGetLineByIndex SetupGetLineByIndexA 2633 #define SetupGetLineCount SetupGetLineCountA 2634 #define SetupGetLineText SetupGetLineTextA 2635 #define SetupGetMultiSzField SetupGetMultiSzFieldA 2636 #define SetupGetSourceFileLocation SetupGetSourceFileLocationA 2637 #define SetupGetSourceFileSize SetupGetSourceFileSizeA 2638 #define SetupGetSourceInfo SetupGetSourceInfoA 2639 #define SetupGetStringField SetupGetStringFieldA 2640 #define SetupGetTargetPath SetupGetTargetPathA 2641 #define SetupInitializeFileLog SetupInitializeFileLogA 2642 #define SetupInstallFile SetupInstallFileA 2643 #define SetupInstallFileEx SetupInstallFileExA 2644 #define SetupInstallFilesFromInfSection SetupInstallFilesFromInfSectionA 2645 #define SetupInstallFromInfSection SetupInstallFromInfSectionA 2646 #define SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionA 2647 #define SetupInstallServicesFromInfSectionEx SetupInstallServicesFromInfSectionExA 2648 #define SetupIterateCabinet SetupIterateCabinetA 2649 #define SetupLogError SetupLogErrorA 2650 #define SetupLogFile SetupLogFileA 2651 #define SetupOpenAppendInfFile SetupOpenAppendInfFileA 2652 #define SetupOpenInfFile SetupOpenInfFileA 2653 #define SetupPromptForDisk SetupPromptForDiskA 2654 #define SetupQueryDrivesInDiskSpaceList SetupQueryDrivesInDiskSpaceListA 2655 #define SetupQueryFileLog SetupQueryFileLogA 2656 #define SetupQueryInfFileInformation SetupQueryInfFileInformationA 2657 #define SetupQueryInfOriginalFileInformation SetupQueryInfOriginalFileInformationA 2658 #define SetupQueryInfVersionInformation SetupQueryInfVersionInformationA 2659 #define SetupQuerySourceList SetupQuerySourceListA 2660 #define SetupQuerySpaceRequiredOnDrive SetupQuerySpaceRequiredOnDriveA 2661 #define SetupQueueCopy SetupQueueCopyA 2662 #define SetupQueueCopyIndirect SetupQueueCopyIndirectA 2663 #define SetupQueueCopySection SetupQueueCopySectionA 2664 #define SetupQueueDefaultCopy SetupQueueDefaultCopyA 2665 #define SetupQueueDelete SetupQueueDeleteA 2666 #define SetupQueueDeleteSection SetupQueueDeleteSectionA 2667 #define SetupQueueRename SetupQueueRenameA 2668 #define SetupQueueRenameSection SetupQueueRenameSectionA 2669 #define SetupRemoveFileLogEntry SetupRemoveFileLogEntryA 2670 #define SetupRemoveFromDiskSpaceList SetupRemoveFromDiskSpaceListA 2671 #define SetupRemoveFromSourceList SetupRemoveFromSourceListA 2672 #define SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveInstallSectionFromDiskSpaceListA 2673 #define SetupRemoveSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceListA 2674 #define SetupRenameError SetupRenameErrorA 2675 #define SetupScanFileQueue SetupScanFileQueueA 2676 #define SetupSetDirectoryId SetupSetDirectoryIdA 2677 #define SetupSetDirectoryIdEx SetupSetDirectoryIdExA 2678 #define SetupSetFileQueueAlternatePlatform SetupSetFileQueueAlternatePlatformA 2679 #define SetupSetPlatformPathOverride SetupSetPlatformPathOverrideA 2680 #define SetupSetSourceList SetupSetSourceListA 2681 #define SetupUninstallOEMInf SetupUninstallOEMInfA 2682 #endif /* UNICODE */ 2683 2684 #endif /* RC_INVOKED */ 2685 2686 #ifdef __cplusplus 2687 } 2688 #endif 2689 2690 #include <poppack.h> 2691 #endif /* _SETUPAPI_H_ */ 2692 2693