source: vendor/w32api/3.6/include/setupapi.h

Last change on this file was 2720, checked in by bird, 19 years ago

w32api v3.6

File size: 78.9 KB
Line 
1#ifndef _SETUPAPI_H_
2#define _SETUPAPI_H_
3#if __GNUC__ >=3
4#pragma GCC system_header
5#endif
6
7#include <commctrl.h>
8#include <pshpack1.h>
9
10#ifdef __cplusplus
11extern "C" {
12#endif
13
14#define WINSETUPAPI DECLSPEC_IMPORT
15
16#define LINE_LEN 256
17#define MAX_INF_STRING_LENGTH 4096
18#define MAX_TITLE_LEN 60
19#define MAX_INSTRUCTION_LEN 256
20#define MAX_LABEL_LEN 30
21#define MAX_SERVICE_NAME_LEN 256
22#define MAX_SUBTITLE_LEN 256
23#define SP_MAX_MACHINENAME_LENGTH (MAX_PATH + 3)
24
25#define COPYFLG_WARN_IF_SKIP 0x00000001
26#define COPYFLG_NOSKIP 0x00000002
27#define COPYFLG_NOVERSIONCHECK 0x00000004
28#define COPYFLG_FORCE_FILE_IN_USE 0x00000008
29#define COPYFLG_NO_OVERWRITE 0x00000010
30#define COPYFLG_NO_VERSION_DIALOG 0x00000020
31#define COPYFLG_OVERWRITE_OLDER_ONLY 0x00000040
32#define COPYFLG_REPLACEONLY 0x00000400
33#define COPYFLG_NODECOMP 0x00000800
34#define COPYFLG_REPLACE_BOOT_FILE 0x00001000
35#define COPYFLG_NOPRUNE 0x00002000
36#define DELFLG_IN_USE 0x00000001
37#define DELFLG_IN_USE1 0x00010000
38#define DI_REMOVEDEVICE_GLOBAL 0x00000001
39#define DI_REMOVEDEVICE_CONFIGSPECIFIC 0x00000002
40#define DI_UNREMOVEDEVICE_CONFIGSPECIFIC 0x00000002
41#define DI_SHOWOEM 0x00000001
42#define DI_SHOWCOMPAT 0x00000002
43#define DI_SHOWCLASS 0x00000004
44#define DI_SHOWALL 0x00000007
45#define DI_NOVCP 0x00000008
46#define DI_DIDCOMPAT 0x00000010
47#define DI_DIDCLASS 0x00000020
48#define DI_AUTOASSIGNRES 0x00000040
49#define DI_NEEDRESTART 0x00000080
50#define DI_NEEDREBOOT 0x00000100
51#define DI_NOBROWSE 0x00000200
52#define DI_MULTMFGS 0x00000400
53#define DI_DISABLED 0x00000800
54#define DI_GENERALPAGE_ADDED 0x00001000
55#define DI_RESOURCEPAGE_ADDED 0x00002000
56#define DI_PROPERTIES_CHANGE 0x00004000
57#define DI_INF_IS_SORTED 0x00008000
58#define DI_ENUMSINGLEINF 0x00010000
59#define DI_DONOTCALLCONFIGMG 0x00020000
60#define DI_INSTALLDISABLED 0x00040000
61#define DI_COMPAT_FROM_CLASS 0x00080000
62#define DI_CLASSINSTALLPARAMS 0x00100000
63#define DI_NODI_DEFAULTACTION 0x00200000
64#define DI_QUIETINSTALL 0x00800000
65#define DI_NOFILECOPY 0x01000000
66#define DI_FORCECOPY 0x02000000
67#define DI_DRIVERPAGE_ADDED 0x04000000
68#define DI_USECI_SELECTSTRINGS 0x08000000
69#define DI_OVERRIDE_INFFLAGS 0x10000000
70#define DI_PROPS_NOCHANGEUSAGE 0x20000000
71#define DI_NOSELECTICONS 0x40000000
72#define DI_NOWRITE_IDS 0x80000000
73#define DI_FLAGSEX_USEOLDINFSEARCH 0x00000001
74#define DI_FLAGSEX_AUTOSELECTRANK0 0x00000002
75#define DI_FLAGSEX_CI_FAILED 0x00000004
76#define DI_FLAGSEX_DIDINFOLIST 0x00000010
77#define DI_FLAGSEX_DIDCOMPATINFO 0x00000020
78#define DI_FLAGSEX_FILTERCLASSES 0x00000040
79#define DI_FLAGSEX_SETFAILEDINSTALL 0x00000080
80#define DI_FLAGSEX_DEVICECHANGE 0x00000100
81#define DI_FLAGSEX_ALWAYSWRITEIDS 0x00000200
82#define DI_FLAGSEX_PROPCHANGE_PENDING 0x00000400
83#define DI_FLAGSEX_ALLOWEXCLUDEDDRVS 0x00000800
84#define DI_FLAGSEX_NOUIONQUERYREMOVE 0x00001000
85#define DI_FLAGSEX_USECLASSFORCOMPAT 0x00002000
86#define DI_FLAGSEX_OLDINF_IN_CLASSLIST 0x00004000
87#define DI_FLAGSEX_NO_DRVREG_MODIFY 0x00008000
88#define DI_FLAGSEX_IN_SYSTEM_SETUP 0x00010000
89#define DI_FLAGSEX_INET_DRIVER 0x00020000
90#define DI_FLAGSEX_APPENDDRIVERLIST 0x00040000
91#define DI_FLAGSEX_PREINSTALLBACKUP 0x00080000
92#define DI_FLAGSEX_BACKUPONREPLACE 0x00100000
93#define DI_FLAGSEX_DRIVERLIST_FROM_URL 0x00200000
94#define DI_FLAGSEX_RESERVED1 0x00400000
95#define DI_FLAGSEX_EXCLUDE_OLD_INET_DRIVERS 0x00800000
96#define DI_FLAGSEX_POWERPAGE_ADDED 0x01000000
97#define DIBCI_NOINSTALLCLASS 0x00000001
98#define DIBCI_NODISPLAYCLASS 0x00000002
99#define DICD_GENERATE_ID 0x00000001
100#define DICD_INHERIT_CLASSDRVS 0x00000002
101#define DICS_ENABLE 1
102#define DICS_FLAG_GLOBAL 1
103#define DICS_DISABLE 2
104#define DICS_FLAG_CONFIGSPECIFIC 2
105#define DICS_PROPCHANGE 3
106#define DICS_START 4
107#define DICS_FLAG_CONFIGGENERAL 4
108#define DICS_STOP 5
109#define DIF_SELECTDEVICE 1
110#define DIF_INSTALLDEVICE 2
111#define DIF_ASSIGNRESOURCES 3
112#define DIF_PROPERTIES 4
113#define DIF_REMOVE 5
114#define DIF_FIRSTTIMESETUP 6
115#define DIF_FOUNDDEVICE 7
116#define DIF_SELECTCLASSDRIVERS 8
117#define DIF_VALIDATECLASSDRIVERS 9
118#define DIF_INSTALLCLASSDRIVERS 10
119#define DIF_CALCDISKSPACE 11
120#define DIF_DESTROYPRIVATEDATA 12
121#define DIF_VALIDATEDRIVER 13
122#define DIF_MOVEDEVICE 14
123#define DIF_DETECT 15
124#define DIF_INSTALLWIZARD 16
125#define DIF_DESTROYWIZARDDATA 17
126#define DIF_PROPERTYCHANGE 18
127#define DIF_ENABLECLASS 19
128#define DIF_DETECTVERIFY 20
129#define DIF_INSTALLDEVICEFILES 21
130#define DIF_UNREMOVE 22
131#define DIF_SELECTBESTCOMPATDRV 23
132#define DIF_ALLOW_INSTALL 24
133#define DIF_REGISTERDEVICE 25
134#define DIF_NEWDEVICEWIZARD_PRESELECT 26
135#define DIF_NEWDEVICEWIZARD_SELECT 27
136#define DIF_NEWDEVICEWIZARD_PREANALYZE 28
137#define DIF_NEWDEVICEWIZARD_POSTANALYZE 29
138#define DIF_NEWDEVICEWIZARD_FINISHINSTALL 30
139#define DIF_UNUSED1 31
140#define DIF_INSTALLINTERFACES 32
141#define DIF_DETECTCANCEL 33
142#define DIF_REGISTER_COINSTALLERS 34
143#define DIF_ADDPROPERTYPAGE_ADVANCED 35
144#define DIF_ADDPROPERTYPAGE_BASIC 36
145#define DIF_RESERVED1 37
146#define DIF_TROUBLESHOOTER 38
147#define DIF_POWERMESSAGEWAKE 39
148#define DIGCF_DEFAULT 0x00000001
149#define DIGCDP_FLAG_BASIC 0x00000001
150#define DIGCF_PRESENT 0x00000002
151#define DIGCDP_FLAG_ADVANCED 0x00000002
152#define DIGCF_ALLCLASSES 0x00000004
153#define DIGCF_PROFILE 0x00000008
154#define DIGCF_DEVICEINTERFACE 0x00000010
155#define DIGCF_INTERFACEDEVICE 0x00000010
156#define DIOCR_INSTALLER 0x00000001
157#define DIOCR_INTERFACE 0x00000002
158#define DIODI_NO_ADD 0x00000001
159#define DIOD_INHERIT_CLASSDRVS 0x00000002
160#define DIOD_CANCEL_REMOVE 0x00000004
161#define DIREG_DEV 0x00000001
162#define DIREG_DRV 0x00000002
163#define DIREG_BOTH 0x00000004
164#define DIRID_ABSOLUTE -1
165#define DIRID_NULL 0
166#define DIRID_SRCPATH 1
167#define DIRID_WINDOWS 10
168#define DIRID_SYSTEM 11
169#define DIRID_DRIVERS 12
170#define DIRID_INF 17
171#define DIRID_HELP 18
172#define DIRID_FONTS 20
173#define DIRID_VIEWERS 21
174#define DIRID_COLOR 23
175#define DIRID_APPS 24
176#define DIRID_SHARED 25
177#define DIRID_BOOT 30
178#define DIRID_SYSTEM16 50
179#define DIRID_SPOOL 51
180#define DIRID_SPOOLDRIVERS 52
181#define DIRID_USERPROFILE 53
182#define DIRID_LOADER 54
183#define DIRID_PRINTPROCESSOR 55
184#define DIRID_COMMON_STARTMENU 16406
185#define DIRID_COMMON_PROGRAMS 16407
186#define DIRID_COMMON_STARTUP 16408
187#define DIRID_COMMON_DESKTOPDIRECTORY 16409
188#define DIRID_COMMON_FAVORITES 16415
189#define DIRID_COMMON_APPDATA 16419
190#define DIRID_PROGRAM_FILES 16422
191#define DIRID_SYSTEM_X86 16425
192#define DIRID_PROGRAM_FILES_X86 16426
193#define DIRID_PROGRAM_FILES_COMMON 16427
194#define DIRID_PROGRAM_FILES_COMMONX86 16428
195#define DIRID_COMMON_TEMPLATES 16429
196#define DIRID_COMMON_DOCUMENTS 16430
197#define DIRID_USER 0x8000
198#define DIRID_ABSOLUTE_16BIT 0xffff
199#define DIRID_IOSUBSYS DIRID_DRIVERS
200#define DIRID_DEFAULT DIRID_SYSTEM
201#define DMI_MASK 0x00000001
202#define DMI_BKCOLOR 0x00000002
203#define DMI_USERECT 0x00000004
204#define DNF_DUPDESC 0x00000001
205#define DNF_OLDDRIVER 0x00000002
206#define DNF_EXCLUDEFROMLIST 0x00000004
207#define DNF_NODRIVER 0x00000008
208#define DNF_LEGACYINF 0x00000010
209#define DNF_CLASS_DRIVER 0x00000020
210#define DNF_COMPATIBLE_DRIVER 0x00000040
211#define DNF_INET_DRIVER 0x00000080
212#define DNF_UNUSED1 0x00000100
213#define DNF_INDEXED_DRIVER 0x00000200
214#define DNF_OLD_INET_DRIVER 0x00000400
215#define DNF_BAD_DRIVER 0x00000800
216#define DNF_DUPPROVIDER 0x00001000
217#define DPROMPT_SUCCESS 0
218#define DPROMPT_CANCEL 1
219#define DPROMPT_SKIPFILE 2
220#define DPROMPT_BUFFERTOOSMALL 3
221#define DPROMPT_OUTOFMEMORY 4
222#define DRIVER_HARDWAREID_RANK 0x00000FFF
223#define DYNAWIZ_FLAG_PAGESADDED 0x00000001
224#define DYNAWIZ_FLAG_INSTALLDET_NEXT 0x00000002
225#define DYNAWIZ_FLAG_INSTALLDET_PREV 0x00000004
226#define DYNAWIZ_FLAG_ANALYZE_HANDLECONFLICT 0x00000008
227#define ENABLECLASS_QUERY 0
228#define ENABLECLASS_SUCCESS 1
229#define ENABLECLASS_FAILURE 2
230#define ERROR_EXPECTED_SECTION_NAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0)
231#define ERROR_BAD_SECTION_NAME_LINE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|1)
232#define ERROR_SECTION_NAME_TOO_LONG (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|2)
233#define ERROR_GENERAL_SYNTAX (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|3)
234#define ERROR_WRONG_INF_STYLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x100)
235#define ERROR_NOT_INSTALLED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x1000)
236#define ERROR_SECTION_NOT_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x101)
237#define ERROR_LINE_NOT_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x102)
238#define ERROR_NO_BACKUP (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x103)
239#define ERROR_NO_ASSOCIATED_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x200)
240#define ERROR_CLASS_MISMATCH (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x201)
241#define ERROR_DUPLICATE_FOUND (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x202)
242#define ERROR_NO_DRIVER_SELECTED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x203)
243#define ERROR_KEY_DOES_NOT_EXIST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x204)
244#define ERROR_INVALID_DEVINST_NAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x205)
245#define ERROR_INVALID_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x206)
246#define ERROR_DEVINST_ALREADY_EXISTS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x207)
247#define ERROR_DEVINFO_NOT_REGISTERED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x208)
248#define ERROR_INVALID_REG_PROPERTY (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x209)
249#define ERROR_NO_INF (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20A)
250#define ERROR_NO_SUCH_DEVINST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20B)
251#define ERROR_CANT_LOAD_CLASS_ICON (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20C)
252#define ERROR_INVALID_CLASS_INSTALLER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20D)
253#define ERROR_DI_DO_DEFAULT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20E)
254#define ERROR_DI_NOFILECOPY (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x20F)
255#define ERROR_INVALID_HWPROFILE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x210)
256#define ERROR_NO_DEVICE_SELECTED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x211)
257#define ERROR_DEVINFO_LIST_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x212)
258#define ERROR_DEVINFO_DATA_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x213)
259#define ERROR_DI_BAD_PATH (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x214)
260#define ERROR_NO_CLASSINSTALL_PARAMS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x215)
261#define ERROR_FILEQUEUE_LOCKED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x216)
262#define ERROR_BAD_SERVICE_INSTALLSECT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x217)
263#define ERROR_NO_CLASS_DRIVER_LIST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x218)
264#define ERROR_NO_ASSOCIATED_SERVICE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x219)
265#define ERROR_NO_DEFAULT_DEVICE_INTERFACE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21A)
266#define ERROR_DEVICE_INTERFACE_ACTIVE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21B)
267#define ERROR_DEVICE_INTERFACE_REMOVED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21C)
268#define ERROR_BAD_INTERFACE_INSTALLSECT (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21D)
269#define ERROR_NO_SUCH_INTERFACE_CLASS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21E)
270#define ERROR_INVALID_REFERENCE_STRING (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x21F)
271#define ERROR_INVALID_MACHINENAME (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x220)
272#define ERROR_REMOTE_COMM_FAILURE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x221)
273#define ERROR_MACHINE_UNAVAILABLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x222)
274#define ERROR_NO_CONFIGMGR_SERVICES (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x223)
275#define ERROR_INVALID_PROPPAGE_PROVIDER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x224)
276#define ERROR_NO_SUCH_DEVICE_INTERFACE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x225)
277#define ERROR_DI_POSTPROCESSING_REQUIRED (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x226)
278#define ERROR_INVALID_COINSTALLER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x227)
279#define ERROR_NO_COMPAT_DRIVERS (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x228)
280#define ERROR_NO_DEVICE_ICON (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x229)
281#define ERROR_INVALID_INF_LOGCONFIG (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22A)
282#define ERROR_DI_DONT_INSTALL (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22B)
283#define ERROR_INVALID_FILTER_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22C)
284#define ERROR_NON_WINDOWS_NT_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22D)
285#define ERROR_NON_WINDOWS_DRIVER (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22E)
286#define ERROR_NO_CATALOG_FOR_OEM_INF (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x22F)
287#define ERROR_DEVINSTALL_QUEUE_NONNATIVE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x230)
288#define ERROR_NOT_DISABLEABLE (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x231)
289#define ERROR_CANT_REMOVE_DEVINST (APPLICATION_ERROR_MASK|ERROR_SEVERITY_ERROR|0x232)
290#define ERROR_INTERFACE_DEVICE_ACTIVE ERROR_DEVICE_INTERFACE_ACTIVE
291#define ERROR_INTERFACE_DEVICE_REMOVED ERROR_DEVICE_INTERFACE_REMOVED
292#define ERROR_NO_DEFAULT_INTERFACE_DEVICE ERROR_NO_DEFAULT_DEVICE_INTERFACE
293#define ERROR_NO_SUCH_INTERFACE_DEVICE ERROR_NO_SUCH_DEVICE_INTERFACE
294
295#define FILEOP_COPY 0
296#define FILEOP_ABORT 0
297#define FILE_COMPRESSION_NONE 0
298#define FILEOP_RENAME 1
299#define FILEOP_DOIT 1
300#define FILE_COMPRESSION_WINLZA 1
301#define FILEOP_DELETE 2
302#define FILEOP_SKIP 2
303#define FILE_COMPRESSION_MSZIP 2
304#define FILEOP_BACKUP 3
305#define FILE_COMPRESSION_NTCAB 3
306#define FILEOP_NEWPATH 4
307#define FILEOP_RETRY FILEOP_DOIT
308#define FLG_ADDREG_TYPE_SZ 0x00000000
309#define FLG_ADDREG_BINVALUETYPE 0x00000001
310#define FLG_ADDREG_NOCLOBBER 0x00000002
311#define FLG_ADDREG_DELVAL 0x00000004
312#define FLG_ADDREG_APPEND 0x00000008
313#define FLG_ADDREG_KEYONLY 0x00000010
314#define FLG_ADDREG_OVERWRITEONLY 0x00000020
315#if (_SETUPAPI_VER >= 0x0501)
316#define FLG_ADDREG_64BITKEY 0x00001000
317#define FLG_ADDREG_KEYONLY_COMMON 0x00002000
318#define FLG_ADDREG_32BITKEY 0x00004000
319#define FLG_ADDREG_DELREG_BIT 0x00008000
320#endif
321#define FLG_ADDREG_TYPE_MULTI_SZ 0x00010000
322#define FLG_ADDREG_TYPE_EXPAND_SZ 0x00020000
323#define FLG_ADDREG_TYPE_BINARY (0x00000000|FLG_ADDREG_BINVALUETYPE)
324#define FLG_ADDREG_TYPE_DWORD (0x00010000|FLG_ADDREG_BINVALUETYPE)
325#define FLG_ADDREG_TYPE_NONE (0x00020000|FLG_ADDREG_BINVALUETYPE)
326#define FLG_ADDREG_TYPE_MASK (0xFFFF0000|FLG_ADDREG_BINVALUETYPE)
327#define FLG_DELREG_VALUE 0x00000000
328#if (_SETUPAPI_VER >= 0x0501)
329#define FLG_DELREG_TYPE_MASK FLG_ADDREG_TYPE_MASK
330#define FLG_DELREG_TYPE_SZ FLG_ADDREG_TYPE_SZ
331#define FLG_DELREG_TYPE_MULTI_SZ FLG_ADDREG_TYPE_MULTI_SZ
332#define FLG_DELREG_TYPE_EXPAND_SZ FLG_ADDREG_TYPE_EXPAND_SZ
333#define FLG_DELREG_TYPE_BINARY FLG_ADDREG_TYPE_BINARY
334#define FLG_DELREG_TYPE_DWORD FLG_ADDREG_TYPE_DWORD
335#define FLG_DELREG_TYPE_NONE FLG_ADDREG_TYPE_NONE
336#define FLG_DELREG_64BITKEY FLG_ADDREG_64BITKEY
337#define FLG_DELREG_KEYONLY_COMMON FLG_ADDREG_KEYONLY_COMMON
338#define FLG_DELREG_32BITKEY FLG_ADDREG_32BITKEY
339#define FLG_DELREG_OPERATION_MASK 0x000000FE
340#define FLG_DELREG_MULTI_SZ_DELSTRING (0x00000002|FLG_DELREG_TYPE_MULTI_SZ|FLG_ADDREG_DELREG_BIT)
341#endif
342#define FLG_BITREG_CLEARBITS 0x00000000
343#define FLG_BITREG_SETBITS 0x00000001
344#define FLG_PROFITEM_CURRENTUSER 0x00000001
345#define FLG_PROFITEM_DELETE 0x00000002
346#define FLG_PROFITEM_GROUP 0x00000004
347#define FLG_PROFITEM_CSIDL 0x00000008
348#define FLG_REGSVR_DLLREGISTER 0x00000001
349#define FLG_REGSVR_DLLINSTALL 0x00000002
350#define MIN_IDD_DYNAWIZ_RESOURCE_ID 10000
351#define MAX_IDD_DYNAWIZ_RESOURCE_ID 11000
352#define IDD_DYNAWIZ_FIRSTPAGE 10000
353#define IDD_DYNAWIZ_SELECT_PREVPAGE 10001
354#define IDD_DYNAWIZ_SELECT_NEXTPAGE 10002
355#define IDD_DYNAWIZ_ANALYZE_PREVPAGE 10003
356#define IDD_DYNAWIZ_ANALYZE_NEXTPAGE 10004
357#define IDD_DYNAWIZ_INSTALLDETECTED_PREVPAGE 10006
358#define IDD_DYNAWIZ_INSTALLDETECTED_NEXTPAGE 10007
359#define IDD_DYNAWIZ_INSTALLDETECTED_NODEVS 10008
360#define IDD_DYNAWIZ_SELECTDEV_PAGE 10009
361#define IDD_DYNAWIZ_ANALYZEDEV_PAGE 10010
362#define IDD_DYNAWIZ_INSTALLDETECTEDDEVS_PAGE 10011
363#define IDD_DYNAWIZ_SELECTCLASS_PAGE 10012
364#define IDF_NOBROWSE 0x00000001
365#define IDF_NOSKIP 0x00000002
366#define IDF_NODETAILS 0x00000004
367#define IDF_NOCOMPRESSED 0x00000008
368#define IDF_CHECKFIRST 0x00000100
369#define IDF_NOBEEP 0x00000200
370#define IDF_NOFOREGROUND 0x00000400
371#define IDF_WARNIFSKIP 0x00000800
372#define IDF_OEMDISK 0x80000000
373#define IDI_RESOURCEFIRST 159
374#define IDI_RESOURCE 159
375#define IDI_RESOURCELAST 161
376#define IDI_RESOURCEOVERLAYFIRST 161
377#define IDI_RESOURCEOVERLAYLAST 161
378#define IDI_CONFLICT 161
379#define IDI_PROBLEM_OVL 500
380#define IDI_DISABLED_OVL 501
381#define IDI_FORCED_OVL 502
382#define IDI_CLASSICON_OVERLAYFIRST 500
383#define IDI_CLASSICON_OVERLAYLAST 502
384#define INF_STYLE_NONE 0x00000000
385#define INF_STYLE_OLDNT 0x00000001
386#define INF_STYLE_WIN4 0x00000002
387#define INF_STYLE_CACHE_ENABLE 0x00000010
388#define INF_STYLE_CACHE_DISABLE 0x00000020
389#define INFINFO_INF_SPEC_IS_HINF 1
390#define INFINFO_INF_NAME_IS_ABSOLUTE 2
391#define INFINFO_DEFAULT_SEARCH 3
392#define INFINFO_REVERSE_DEFAULT_SEARCH 4
393#define INFINFO_INF_PATH_LIST_SEARCH 5
394#define LogSevInformation 0
395#define LogSevWarning 1
396#define LogSevError 2
397#define LogSevFatalError 3
398#define LogSevMaximum 4
399#define LogSeverity DWORD
400#define MAX_INSTALLWIZARD_DYNAPAGES 20
401#define NDW_INSTALLFLAG_DIDFACTDEFS 0x00000001
402#define NDW_INSTALLFLAG_HARDWAREALLREADYIN 0x00000002
403#define NDW_INSTALLFLAG_NEEDSHUTDOWN 0x00000200
404#define NDW_INSTALLFLAG_EXPRESSINTRO 0x00000400
405#define NDW_INSTALLFLAG_SKIPISDEVINSTALLED 0x00000800
406#define NDW_INSTALLFLAG_NODETECTEDDEVS 0x00001000
407#define NDW_INSTALLFLAG_INSTALLSPECIFIC 0x00002000
408#define NDW_INSTALLFLAG_SKIPCLASSLIST 0x00004000
409#define NDW_INSTALLFLAG_CI_PICKED_OEM 0x00008000
410#define NDW_INSTALLFLAG_PCMCIAMODE 0x00010000
411#define NDW_INSTALLFLAG_PCMCIADEVICE 0x00020000
412#define NDW_INSTALLFLAG_USERCANCEL 0x00040000
413#define NDW_INSTALLFLAG_KNOWNCLASS 0x00080000
414#define NDW_INSTALLFLAG_NEEDRESTART 0x00000080
415#define NDW_INSTALLFLAG_NEEDREBOOT 0x00000100
416#define SETDIRID_NOT_FULL_PATH 0x00000001
417#define SP_COPY_DELETESOURCE 0x0000001
418#define SP_COPY_REPLACEONLY 0x0000002
419#define SP_COPY_NEWER 0x0000004
420#define SP_COPY_NEWER_OR_SAME 0x0000004
421#define SP_COPY_NOOVERWRITE 0x0000008
422#define SP_COPY_NODECOMP 0x0000010
423#define SP_COPY_LANGUAGEAWARE 0x0000020
424#define SP_COPY_SOURCE_ABSOLUTE 0x0000040
425#define SP_COPY_SOURCEPATH_ABSOLUTE 0x0000080
426#define SP_COPY_IN_USE_NEEDS_REBOOT 0x0000100
427#define SP_COPY_FORCE_IN_USE 0x0000200
428#define SP_COPY_NOSKIP 0x0000400
429#define SP_COPY_FORCE_NOOVERWRITE 0x0001000
430#define SP_COPY_FORCE_NEWER 0x0002000
431#define SP_COPY_WARNIFSKIP 0x0004000
432#define SP_COPY_NOBROWSE 0x0008000
433#define SP_COPY_NEWER_ONLY 0x0010000
434#define SP_COPY_SOURCE_SIS_MASTER 0x0020000
435#define SP_COPY_OEMINF_CATALOG_ONLY 0x0040000
436#define SP_COPY_REPLACE_BOOT_FILE 0x0080000
437#define SP_COPY_NOPRUNE 0x0100000
438#define SP_FLAG_CABINETCONTINUATION 0x0000800
439#define SPCRP_SECURITY 23
440#define SPCRP_SECURITY_SDS 24
441#define SPCRP_DEVTYPE 25
442#define SPCRP_EXCLUSIVE 26
443#define SPCRP_CHARACTERISTICS 27
444#define SPCRP_MAXIMUM_PROPERTY 28
445#define SPDIT_NODRIVER 0
446#define SPDIT_CLASSDRIVER 1
447#define SPDIT_COMPATDRIVER 2
448#define SPDRP_DEVICEDESC 0
449#define SPDRP_HARDWAREID 1
450#define SPDRP_COMPATIBLEIDS 2
451#define SPDRP_UNUSED0 3
452#define SPDRP_SERVICE 4
453#define SPDRP_UNUSED1 5
454#define SPDRP_UNUSED2 6
455#define SPDRP_CLASS 7
456#define SPDRP_CLASSGUID 8
457#define SPDRP_DRIVER 9
458#define SPDRP_CONFIGFLAGS 10
459#define SPDRP_MFG 11
460#define SPDRP_FRIENDLYNAME 12
461#define SPDRP_LOCATION_INFORMATION 13
462#define SPDRP_PHYSICAL_DEVICE_OBJECT_NAME 14
463#define SPDRP_CAPABILITIES 15
464#define SPDRP_UI_NUMBER 16
465#define SPDRP_UPPERFILTERS 17
466#define SPDRP_LOWERFILTERS 18
467#define SPDRP_BUSTYPEGUID 19
468#define SPDRP_LEGACYBUSTYPE 20
469#define SPDRP_BUSNUMBER 21
470#define SPDRP_ENUMERATOR_NAME 22
471#define SPDRP_SECURITY 23
472#define SPDRP_SECURITY_SDS 24
473#define SPDRP_DEVTYPE 25
474#define SPDRP_EXCLUSIVE 26
475#define SPDRP_CHARACTERISTICS 27
476#define SPDRP_ADDRESS 28
477#define SPDRP_UI_NUMBER_DESC_FORMAT 30
478#define SPDRP_MAXIMUM_PROPERTY 31
479#define SPDSL_IGNORE_DISK 1
480#define SPDSL_DISALLOW_NEGATIVE_ADJUST 2
481
482#define SPFILENOTIFY_STARTQUEUE 1
483#define SPFILENOTIFY_ENDQUEUE 2
484#define SPFILENOTIFY_STARTSUBQUEUE 3
485#define SPFILENOTIFY_ENDSUBQUEUE 4
486#define SPFILENOTIFY_STARTDELETE 5
487#define SPFILENOTIFY_ENDDELETE 6
488#define SPFILENOTIFY_DELETEERROR 7
489#define SPFILENOTIFY_STARTRENAME 8
490#define SPFILENOTIFY_ENDRENAME 9
491#define SPFILENOTIFY_RENAMEERROR 10
492#define SPFILENOTIFY_STARTCOPY 11
493#define SPFILENOTIFY_ENDCOPY 12
494#define SPFILENOTIFY_COPYERROR 13
495#define SPFILENOTIFY_NEEDMEDIA 14
496#define SPFILENOTIFY_QUEUESCAN 15
497#define SPFILENOTIFY_CABINETINFO 16
498#define SPFILENOTIFY_FILEINCABINET 17
499#define SPFILENOTIFY_NEEDNEWCABINET 18
500#define SPFILENOTIFY_FILEEXTRACTED 19
501#define SPFILENOTIFY_FILEOPDELAYED 20
502#define SPFILENOTIFY_STARTBACKUP 21
503#define SPFILENOTIFY_BACKUPERROR 22
504#define SPFILENOTIFY_ENDBACKUP 23
505#define SPFILENOTIFY_QUEUESCAN_EX 24
506#define SPFILENOTIFY_LANGMISMATCH 0x00010000
507#define SPFILENOTIFY_TARGETEXISTS 0x00020000
508#define SPFILENOTIFY_TARGETNEWER 0x00040000
509#define SPFILELOG_SYSTEMLOG 0x00000001
510#define SPFILELOG_OEMFILE 0x00000001
511#define SPFILELOG_FORCENEW 0x00000002
512#define SPFILELOG_QUERYONLY 0x00000004
513#define SPFILEQ_FILE_IN_USE 0x00000001
514#define SPFILEQ_REBOOT_RECOMMENDED 0x00000002
515#define SPFILEQ_REBOOT_IN_PROGRESS 0x00000004
516#define SPINT_ACTIVE 0x00000001
517#define SPINT_DEFAULT 0x00000002
518#define SPINT_REMOVED 0x00000004
519#define SPID_ACTIVE 0x00000001
520#define SPID_DEFAULT 0x00000002
521#define SPID_REMOVED 0x00000004
522#define SPINST_LOGCONFIG 0x00000001
523#define SPINST_INIFILES 0x00000002
524#define SPINST_REGISTRY 0x00000004
525#define SPINST_INI2REG 0x00000008
526#define SPINST_FILES 0x00000010
527#define SPINST_BITREG 0x00000020
528#define SPINST_REGSVR 0x00000040
529#define SPINST_UNREGSVR 0x00000080
530#define SPINST_PROFILEITEMS 0x00000100
531#if (_SETUPAPI_VER >= 0x0501)
532#define SPINST_COPYINF 0x00000200
533#define SPINST_ALL 0x000003ff
534#else
535#define SPINST_ALL 0x000001ff
536#endif
537#define SPINST_SINGLESECTION 0x00010000
538#define SPINST_LOGCONFIG_IS_FORCED 0x00020000
539#define SPINST_LOGCONFIGS_ARE_OVERRIDES 0x00040000
540#define SPOST_NONE 0
541#define SPOST_PATH 1
542#define SPOST_URL 2
543#define SPOST_MAX 3
544#define SPPSR_SELECT_DEVICE_RESOURCES 1
545#define SPPSR_ENUM_BASIC_DEVICE_PROPERTIES 2
546#define SPPSR_ENUM_ADV_DEVICE_PROPERTIES 3
547#define SPQ_SCAN_FILE_PRESENCE 0x00000001
548#define SPQ_DELAYED_COPY 0x00000001
549#define SPQ_SCAN_FILE_VALIDITY 0x00000002
550#define SPQ_SCAN_USE_CALLBACK 0x00000004
551#define SPQ_SCAN_USE_CALLBACKEX 0x00000008
552#define SPQ_SCAN_INFORM_USER 0x00000010
553#define SPQ_SCAN_PRUNE_COPY_QUEUE 0x00000020
554#define SPRDI_FIND_DUPS 0x00000001
555#define SPSVCINST_TAGTOFRONT 0x00000001
556#define SPSVCINST_ASSOCSERVICE 0x00000002
557#define SPSVCINST_DELETEEVENTLOGENTRY 0x00000004
558#define SPSVCINST_NOCLOBBER_DISPLAYNAME 0x00000008
559#define SPSVCINST_NOCLOBBER_STARTTYPE 0x00000010
560#define SPSVCINST_NOCLOBBER_ERRORCONTROL 0x00000020
561#define SPSVCINST_NOCLOBBER_LOADORDERGROUP 0x00000040
562#define SPSVCINST_NOCLOBBER_DEPENDENCIES 0x00000080
563#define SPSVCINST_NOCLOBBER_DESCRIPTION 0x00000100
564#define SPSVCINST_STOPSERVICE 0x00000200
565#define SPWPT_SELECTDEVICE 0x00000001
566#define SPWP_USE_DEVINFO_DATA 0x00000001
567#define SRCINFO_PATH 1
568#define SRCINFO_TAGFILE 2
569#define SRCINFO_DESCRIPTION 3
570#define SRCINFO_FLAGS 4
571#define SRCLIST_TEMPORARY 0x00000001
572#define SRCLIST_NOBROWSE 0x00000002
573#define SRCLIST_SYSTEM 0x00000010
574#define SRCLIST_USER 0x00000020
575#define SRCLIST_SYSIFADMIN 0x00000040
576#define SRCLIST_SUBDIRS 0x00000100
577#define SRCLIST_APPEND 0x00000200
578#define SRCLIST_NOSTRIPPLATFORM 0x00000400
579
580#ifndef RC_INVOKED
581typedef PVOID HINF;
582typedef PVOID HDSKSPC;
583typedef PVOID HDEVINFO;
584typedef PVOID HSPFILEQ;
585typedef PVOID HSPFILELOG;
586typedef UINT DI_FUNCTION;
587
588typedef enum {
589 SetupFileLogSourceFilename,
590 SetupFileLogChecksum,
591 SetupFileLogDiskTagfile,
592 SetupFileLogDiskDescription,
593 SetupFileLogOtherInfo,
594 SetupFileLogMax
595} SetupFileLogInfo;
596typedef struct _INFCONTEXT {
597 PVOID Inf;
598 PVOID CurrentInf;
599 UINT Section;
600 UINT Line;
601} INFCONTEXT, *PINFCONTEXT;
602typedef struct _SP_INF_INFORMATION {
603 DWORD InfStyle;
604 DWORD InfCount;
605 BYTE VersionData[ANYSIZE_ARRAY];
606} SP_INF_INFORMATION, *PSP_INF_INFORMATION;
607typedef struct _SP_ALTPLATFORM_INFO {
608 DWORD cbSize;
609 DWORD Platform;
610 DWORD MajorVersion;
611 DWORD MinorVersion;
612 WORD ProcessorArchitecture;
613 WORD Reserved;
614} SP_ALTPLATFORM_INFO, *PSP_ALTPLATFORM_INFO;
615typedef struct _SP_ORIGINAL_FILE_INFO_A {
616 DWORD cbSize;
617 CHAR OriginalInfName[MAX_PATH];
618 CHAR OriginalCatalogName[MAX_PATH];
619} SP_ORIGINAL_FILE_INFO_A, *PSP_ORIGINAL_FILE_INFO_A;
620typedef struct _SP_ORIGINAL_FILE_INFO_W {
621 DWORD cbSize;
622 WCHAR OriginalInfName[MAX_PATH];
623 WCHAR OriginalCatalogName[MAX_PATH];
624} SP_ORIGINAL_FILE_INFO_W, *PSP_ORIGINAL_FILE_INFO_W;
625typedef struct _FILEPATHS_A {
626 PCSTR Target;
627 PCSTR Source;
628 UINT Win32Error;
629 DWORD Flags;
630} FILEPATHS_A, *PFILEPATHS_A;
631typedef struct _FILEPATHS_W {
632 PCWSTR Target;
633 PCWSTR Source;
634 UINT Win32Error;
635 DWORD Flags;
636} FILEPATHS_W, *PFILEPATHS_W;
637typedef struct _SOURCE_MEDIA_A {
638 PCSTR Reserved;
639 PCSTR Tagfile;
640 PCSTR Description;
641 PCSTR SourcePath;
642 PCSTR SourceFile;
643 DWORD Flags;
644} SOURCE_MEDIA_A, *PSOURCE_MEDIA_A;
645typedef struct _SOURCE_MEDIA_W {
646 PCWSTR Reserved;
647 PCWSTR Tagfile;
648 PCWSTR Description;
649 PCWSTR SourcePath;
650 PCWSTR SourceFile;
651 DWORD Flags;
652} SOURCE_MEDIA_W, *PSOURCE_MEDIA_W;
653typedef struct _CABINET_INFO_A {
654 PCSTR CabinetPath;
655 PCSTR CabinetFile;
656 PCSTR DiskName;
657 USHORT SetId;
658 USHORT CabinetNumber;
659} CABINET_INFO_A, *PCABINET_INFO_A;
660typedef struct _CABINET_INFO_W {
661 PCWSTR CabinetPath;
662 PCWSTR CabinetFile;
663 PCWSTR DiskName;
664 USHORT SetId;
665 USHORT CabinetNumber;
666} CABINET_INFO_W, *PCABINET_INFO_W;
667typedef struct _FILE_IN_CABINET_INFO_A {
668 PCSTR NameInCabinet;
669 DWORD FileSize;
670 DWORD Win32Error;
671 WORD DosDate;
672 WORD DosTime;
673 WORD DosAttribs;
674 CHAR FullTargetName[MAX_PATH];
675} FILE_IN_CABINET_INFO_A, *PFILE_IN_CABINET_INFO_A;
676typedef struct _FILE_IN_CABINET_INFO_W {
677 PCWSTR NameInCabinet;
678 DWORD FileSize;
679 DWORD Win32Error;
680 WORD DosDate;
681 WORD DosTime;
682 WORD DosAttribs;
683 WCHAR FullTargetName[MAX_PATH];
684} FILE_IN_CABINET_INFO_W, *PFILE_IN_CABINET_INFO_W;
685typedef struct _SP_FILE_COPY_PARAMS_A {
686 DWORD cbSize;
687 HSPFILEQ QueueHandle;
688 PCSTR SourceRootPath;
689 PCSTR SourcePath;
690 PCSTR SourceFilename;
691 PCSTR SourceDescription;
692 PCSTR SourceTagfile;
693 PCSTR TargetDirectory;
694 PCSTR TargetFilename;
695 DWORD CopyStyle;
696 HINF LayoutInf;
697 PCSTR SecurityDescriptor;
698} SP_FILE_COPY_PARAMS_A, *PSP_FILE_COPY_PARAMS_A;
699typedef struct _SP_FILE_COPY_PARAMS_W {
700 DWORD cbSize;
701 HSPFILEQ QueueHandle;
702 PCWSTR SourceRootPath;
703 PCWSTR SourcePath;
704 PCWSTR SourceFilename;
705 PCWSTR SourceDescription;
706 PCWSTR SourceTagfile;
707 PCWSTR TargetDirectory;
708 PCWSTR TargetFilename;
709 DWORD CopyStyle;
710 HINF LayoutInf;
711 PCWSTR SecurityDescriptor;
712} SP_FILE_COPY_PARAMS_W, *PSP_FILE_COPY_PARAMS_W;
713typedef struct _SP_DEVINFO_DATA {
714 DWORD cbSize;
715 GUID ClassGuid;
716 DWORD DevInst;
717 ULONG_PTR Reserved;
718} SP_DEVINFO_DATA, *PSP_DEVINFO_DATA;
719typedef struct _SP_DEVICE_INTERFACE_DATA {
720 DWORD cbSize;
721 GUID InterfaceClassGuid;
722 DWORD Flags;
723 ULONG_PTR Reserved;
724} SP_DEVICE_INTERFACE_DATA, *PSP_DEVICE_INTERFACE_DATA;
725/* For backward compatability */
726typedef SP_DEVICE_INTERFACE_DATA SP_INTERFACE_DEVICE_DATA, *PSP_INTERFACE_DEVICE_DATA;
727
728typedef struct _SP_DEVICE_INTERFACE_DETAIL_DATA_A {
729 DWORD cbSize;
730 CHAR DevicePath[ANYSIZE_ARRAY];
731} SP_DEVICE_INTERFACE_DETAIL_DATA_A, *PSP_DEVICE_INTERFACE_DETAIL_DATA_A;
732typedef struct _SP_DEVICE_INTERFACE_DETAIL_DATA_W {
733 DWORD cbSize;
734 WCHAR DevicePath[ANYSIZE_ARRAY];
735} SP_DEVICE_INTERFACE_DETAIL_DATA_W, *PSP_DEVICE_INTERFACE_DETAIL_DATA_W;
736/* For backward compatability */
737typedef SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA_A,
738 *PSP_INTERFACE_DEVICE_DETAIL_DATA_A;
739typedef SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA_W,
740 *PSP_INTERFACE_DEVICE_DETAIL_DATA_W;
741
742typedef struct _SP_DEVINFO_LIST_DETAIL_DATA_A {
743 DWORD cbSize;
744 GUID ClassGuid;
745 HANDLE RemoteMachineHandle;
746 CHAR RemoteMachineName[SP_MAX_MACHINENAME_LENGTH];
747} SP_DEVINFO_LIST_DETAIL_DATA_A, *PSP_DEVINFO_LIST_DETAIL_DATA_A;
748typedef struct _SP_DEVINFO_LIST_DETAIL_DATA_W {
749 DWORD cbSize;
750 GUID ClassGuid;
751 HANDLE RemoteMachineHandle;
752 WCHAR RemoteMachineName[SP_MAX_MACHINENAME_LENGTH];
753} SP_DEVINFO_LIST_DETAIL_DATA_W, *PSP_DEVINFO_LIST_DETAIL_DATA_W;
754
755typedef UINT (CALLBACK* PSP_FILE_CALLBACK_A)(PVOID,UINT,UINT_PTR,UINT_PTR);
756typedef UINT (CALLBACK* PSP_FILE_CALLBACK_W)(PVOID,UINT,UINT_PTR,UINT_PTR);
757typedef struct _SP_DEVINSTALL_PARAMS_A {
758 DWORD cbSize;
759 DWORD Flags;
760 DWORD FlagsEx;
761 HWND hwndParent;
762 PSP_FILE_CALLBACK_A InstallMsgHandler;
763 PVOID InstallMsgHandlerContext;
764 HSPFILEQ FileQueue;
765 ULONG_PTR ClassInstallReserved;
766 DWORD Reserved;
767 CHAR DriverPath[MAX_PATH];
768} SP_DEVINSTALL_PARAMS_A, *PSP_DEVINSTALL_PARAMS_A;
769typedef struct _SP_DEVINSTALL_PARAMS_W {
770 DWORD cbSize;
771 DWORD Flags;
772 DWORD FlagsEx;
773 HWND hwndParent;
774 PSP_FILE_CALLBACK_W InstallMsgHandler;
775 PVOID InstallMsgHandlerContext;
776 HSPFILEQ FileQueue;
777 ULONG_PTR ClassInstallReserved;
778 DWORD Reserved;
779 WCHAR DriverPath[MAX_PATH];
780} SP_DEVINSTALL_PARAMS_W, *PSP_DEVINSTALL_PARAMS_W;
781typedef struct _SP_CLASSINSTALL_HEADER {
782 DWORD cbSize;
783 DI_FUNCTION InstallFunction;
784} SP_CLASSINSTALL_HEADER, *PSP_CLASSINSTALL_HEADER;
785typedef struct _SP_ENABLECLASS_PARAMS {
786 SP_CLASSINSTALL_HEADER ClassInstallHeader;
787 GUID ClassGuid;
788 DWORD EnableMessage;
789} SP_ENABLECLASS_PARAMS, *PSP_ENABLECLASS_PARAMS;
790typedef struct _SP_MOVEDEV_PARAMS {
791 SP_CLASSINSTALL_HEADER ClassInstallHeader;
792 SP_DEVINFO_DATA SourceDeviceInfoData;
793} SP_MOVEDEV_PARAMS, *PSP_MOVEDEV_PARAMS;
794typedef struct _SP_PROPCHANGE_PARAMS {
795 SP_CLASSINSTALL_HEADER ClassInstallHeader;
796 DWORD StateChange;
797 DWORD Scope;
798 DWORD HwProfile;
799} SP_PROPCHANGE_PARAMS, *PSP_PROPCHANGE_PARAMS;
800typedef struct _SP_REMOVEDEVICE_PARAMS {
801 SP_CLASSINSTALL_HEADER ClassInstallHeader;
802 DWORD Scope;
803 DWORD HwProfile;
804} SP_REMOVEDEVICE_PARAMS, *PSP_REMOVEDEVICE_PARAMS;
805typedef struct _SP_UNREMOVEDEVICE_PARAMS {
806 SP_CLASSINSTALL_HEADER ClassInstallHeader;
807 DWORD Scope;
808 DWORD HwProfile;
809} SP_UNREMOVEDEVICE_PARAMS, *PSP_UNREMOVEDEVICE_PARAMS;
810typedef struct _SP_SELECTDEVICE_PARAMS_A {
811 SP_CLASSINSTALL_HEADER ClassInstallHeader;
812 CHAR Title[MAX_TITLE_LEN];
813 CHAR Instructions[MAX_INSTRUCTION_LEN];
814 CHAR ListLabel[MAX_LABEL_LEN];
815 CHAR SubTitle[MAX_SUBTITLE_LEN];
816 BYTE Reserved[2];
817} SP_SELECTDEVICE_PARAMS_A, *PSP_SELECTDEVICE_PARAMS_A;
818typedef struct _SP_SELECTDEVICE_PARAMS_W {
819 SP_CLASSINSTALL_HEADER ClassInstallHeader;
820 WCHAR Title[MAX_TITLE_LEN];
821 WCHAR Instructions[MAX_INSTRUCTION_LEN];
822 WCHAR ListLabel[MAX_LABEL_LEN];
823 WCHAR SubTitle[MAX_SUBTITLE_LEN];
824} SP_SELECTDEVICE_PARAMS_W, *PSP_SELECTDEVICE_PARAMS_W;
825
826typedef BOOL (CALLBACK* PDETECT_PROGRESS_NOTIFY)(PVOID,DWORD);
827typedef struct _SP_DETECTDEVICE_PARAMS {
828 SP_CLASSINSTALL_HEADER ClassInstallHeader;
829 PDETECT_PROGRESS_NOTIFY DetectProgressNotify;
830 PVOID ProgressNotifyParam;
831} SP_DETECTDEVICE_PARAMS, *PSP_DETECTDEVICE_PARAMS;
832typedef struct _SP_INSTALLWIZARD_DATA {
833 SP_CLASSINSTALL_HEADER ClassInstallHeader;
834 DWORD Flags;
835 HPROPSHEETPAGE DynamicPages[MAX_INSTALLWIZARD_DYNAPAGES];
836 DWORD NumDynamicPages;
837 DWORD DynamicPageFlags;
838 DWORD PrivateFlags;
839 LPARAM PrivateData;
840 HWND hwndWizardDlg;
841} SP_INSTALLWIZARD_DATA, *PSP_INSTALLWIZARD_DATA;
842typedef struct _SP_NEWDEVICEWIZARD_DATA {
843 SP_CLASSINSTALL_HEADER ClassInstallHeader;
844 DWORD Flags;
845 HPROPSHEETPAGE DynamicPages[MAX_INSTALLWIZARD_DYNAPAGES];
846 DWORD NumDynamicPages;
847 HWND hwndWizardDlg;
848} SP_NEWDEVICEWIZARD_DATA, *PSP_NEWDEVICEWIZARD_DATA;
849typedef SP_NEWDEVICEWIZARD_DATA SP_ADDPROPERTYPAGE_DATA,
850 *PSP_ADDPROPERTYPAGE_DATA;
851typedef struct _SP_TROUBLESHOOTER_PARAMS_A {
852 SP_CLASSINSTALL_HEADER ClassInstallHeader;
853 CHAR ChmFile[MAX_PATH];
854 CHAR HtmlTroubleShooter[MAX_PATH];
855} SP_TROUBLESHOOTER_PARAMS_A, *PSP_TROUBLESHOOTER_PARAMS_A;
856typedef struct _SP_TROUBLESHOOTER_PARAMS_W {
857 SP_CLASSINSTALL_HEADER ClassInstallHeader;
858 WCHAR ChmFile[MAX_PATH];
859 WCHAR HtmlTroubleShooter[MAX_PATH];
860} SP_TROUBLESHOOTER_PARAMS_W, *PSP_TROUBLESHOOTER_PARAMS_W;
861typedef struct _SP_POWERMESSAGEWAKE_PARAMS_A {
862 SP_CLASSINSTALL_HEADER ClassInstallHeader;
863 CHAR PowerMessageWake[LINE_LEN*2];
864} SP_POWERMESSAGEWAKE_PARAMS_A, *PSP_POWERMESSAGEWAKE_PARAMS_A;
865typedef struct _SP_POWERMESSAGEWAKE_PARAMS_W {
866 SP_CLASSINSTALL_HEADER ClassInstallHeader;
867 WCHAR PowerMessageWake[LINE_LEN*2];
868} SP_POWERMESSAGEWAKE_PARAMS_W, *PSP_POWERMESSAGEWAKE_PARAMS_W;
869typedef struct _SP_DRVINFO_DATA_V2_A {
870 DWORD cbSize;
871 DWORD DriverType;
872 ULONG_PTR Reserved;
873 CHAR Description[LINE_LEN];
874 CHAR MfgName[LINE_LEN];
875 CHAR ProviderName[LINE_LEN];
876 FILETIME DriverDate;
877 DWORDLONG DriverVersion;
878} SP_DRVINFO_DATA_V2_A, *PSP_DRVINFO_DATA_V2_A;
879typedef struct _SP_DRVINFO_DATA_V2_W {
880 DWORD cbSize;
881 DWORD DriverType;
882 ULONG_PTR Reserved;
883 WCHAR Description[LINE_LEN];
884 WCHAR MfgName[LINE_LEN];
885 WCHAR ProviderName[LINE_LEN];
886 FILETIME DriverDate;
887 DWORDLONG DriverVersion;
888} SP_DRVINFO_DATA_V2_W, *PSP_DRVINFO_DATA_V2_W;
889typedef struct _SP_DRVINFO_DATA_V1_A {
890 DWORD cbSize;
891 DWORD DriverType;
892 ULONG_PTR Reserved;
893 CHAR Description[LINE_LEN];
894 CHAR MfgName[LINE_LEN];
895 CHAR ProviderName[LINE_LEN];
896} SP_DRVINFO_DATA_V1_A, *PSP_DRVINFO_DATA_V1_A;
897typedef struct _SP_DRVINFO_DATA_V1_W {
898 DWORD cbSize;
899 DWORD DriverType;
900 ULONG_PTR Reserved;
901 WCHAR Description[LINE_LEN];
902 WCHAR MfgName[LINE_LEN];
903 WCHAR ProviderName[LINE_LEN];
904} SP_DRVINFO_DATA_V1_W, *PSP_DRVINFO_DATA_V1_W;
905
906#ifdef UNICODE
907typedef SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_V1, *PSP_DRVINFO_DATA_V1;
908typedef SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_V2, *PSP_DRVINFO_DATA_V2;
909#else
910typedef SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_V1, *PSP_DRVINFO_DATA_V1;
911typedef SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_V2, *PSP_DRVINFO_DATA_V2;
912#endif
913
914#if USE_SP_DRVINFO_DATA_V1
915typedef SP_DRVINFO_DATA_V1_A SP_DRVINFO_DATA_A, *PSP_DRVINFO_DATA_A;
916typedef SP_DRVINFO_DATA_V1_W SP_DRVINFO_DATA_W, *PSP_DRVINFO_DATA_W;
917typedef SP_DRVINFO_DATA_V1 SP_DRVINFO_DATA, *PSP_DRVINFO_DATA;
918#else
919typedef SP_DRVINFO_DATA_V2_A SP_DRVINFO_DATA_A, *PSP_DRVINFO_DATA_A;
920typedef SP_DRVINFO_DATA_V2_W SP_DRVINFO_DATA_W, *PSP_DRVINFO_DATA_W;
921typedef SP_DRVINFO_DATA_V2 SP_DRVINFO_DATA, *PSP_DRVINFO_DATA;
922#endif
923
924typedef DWORD (CALLBACK* PSP_DETSIG_CMPPROC)(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINFO_DATA,PVOID);
925
926typedef struct _SP_DRVINFO_DETAIL_DATA_A {
927 DWORD cbSize;
928 FILETIME InfDate;
929 DWORD CompatIDsOffset;
930 DWORD CompatIDsLength;
931 ULONG_PTR Reserved;
932 CHAR SectionName[LINE_LEN];
933 CHAR InfFileName[MAX_PATH];
934 CHAR DrvDescription[LINE_LEN];
935 CHAR HardwareID[ANYSIZE_ARRAY];
936} SP_DRVINFO_DETAIL_DATA_A, *PSP_DRVINFO_DETAIL_DATA_A;
937typedef struct _SP_DRVINFO_DETAIL_DATA_W {
938 DWORD cbSize;
939 FILETIME InfDate;
940 DWORD CompatIDsOffset;
941 DWORD CompatIDsLength;
942 ULONG_PTR Reserved;
943 WCHAR SectionName[LINE_LEN];
944 WCHAR InfFileName[MAX_PATH];
945 WCHAR DrvDescription[LINE_LEN];
946 WCHAR HardwareID[ANYSIZE_ARRAY];
947} SP_DRVINFO_DETAIL_DATA_W, *PSP_DRVINFO_DETAIL_DATA_W;
948typedef struct _SP_DRVINSTALL_PARAMS {
949 DWORD cbSize;
950 DWORD Rank;
951 DWORD Flags;
952 DWORD_PTR PrivateData;
953 DWORD Reserved;
954} SP_DRVINSTALL_PARAMS, *PSP_DRVINSTALL_PARAMS;
955
956
957typedef struct _COINSTALLER_CONTEXT_DATA {
958 BOOL PostProcessing;
959 DWORD InstallResult;
960 PVOID PrivateData;
961} COINSTALLER_CONTEXT_DATA, *PCOINSTALLER_CONTEXT_DATA;
962typedef struct _SP_CLASSIMAGELIST_DATA {
963 DWORD cbSize;
964 HIMAGELIST ImageList;
965 ULONG_PTR Reserved;
966} SP_CLASSIMAGELIST_DATA, *PSP_CLASSIMAGELIST_DATA;
967typedef struct _SP_PROPSHEETPAGE_REQUEST {
968 DWORD cbSize;
969 DWORD PageRequested;
970 HDEVINFO DeviceInfoSet;
971 PSP_DEVINFO_DATA DeviceInfoData;
972} SP_PROPSHEETPAGE_REQUEST, *PSP_PROPSHEETPAGE_REQUEST;
973typedef struct _SP_BACKUP_QUEUE_PARAMS_A {
974 DWORD cbSize;
975 CHAR FullInfPath[MAX_PATH];
976 INT FilenameOffset;
977} SP_BACKUP_QUEUE_PARAMS_A, *PSP_BACKUP_QUEUE_PARAMS_A;
978typedef struct _SP_BACKUP_QUEUE_PARAMS_W {
979 DWORD cbSize;
980 WCHAR FullInfPath[MAX_PATH];
981 INT FilenameOffset;
982} SP_BACKUP_QUEUE_PARAMS_W, *PSP_BACKUP_QUEUE_PARAMS_W;
983
984
985#ifdef UNICODE
986typedef SP_ORIGINAL_FILE_INFO_W SP_ORIGINAL_FILE_INFO, *PSP_ORIGINAL_FILE_INFO;
987typedef FILEPATHS_W FILEPATHS, *PFILEPATHS;
988typedef SOURCE_MEDIA_W SOURCE_MEDIA, *PSOURCE_MEDIA;
989typedef CABINET_INFO_W CABINET_INFO, *PCABINET_INFO;
990typedef FILE_IN_CABINET_INFO_W FILE_IN_CABINET_INFO, *PFILE_IN_CABINET_INFO;
991typedef SP_FILE_COPY_PARAMS_W SP_FILE_COPY_PARAMS, PSP_FILE_COPY_PARAMS;
992typedef SP_DEVICE_INTERFACE_DETAIL_DATA_W SP_DEVICE_INTERFACE_DETAIL_DATA,
993 *PSP_DEVICE_INTERFACE_DETAIL_DATA;
994typedef SP_INTERFACE_DEVICE_DETAIL_DATA_W SP_INTERFACE_DEVICE_DETAIL_DATA,
995 *PSP_INTERFACE_DEVICE_DETAIL_DATA; /* deprecated */
996typedef SP_DEVINFO_LIST_DETAIL_DATA_W SP_DEVINFO_LIST_DETAIL_DATA,
997 *PSP_DEVINFO_LIST_DETAIL_DATA;
998typedef SP_DEVINSTALL_PARAMS_W SP_DEVINSTALL_PARAMS, *PSP_DEVINSTALL_PARAMS;
999typedef SP_SELECTDEVICE_PARAMS_W SP_SELECTDEVICE_PARAMS, *PSP_SELECTDEVICE_PARAMS;
1000typedef SP_TROUBLESHOOTER_PARAMS_W SP_TROUBLESHOOTER_PARAMS,
1001 *PSP_TROUBLESHOOTER_PARAMS;
1002typedef SP_POWERMESSAGEWAKE_PARAMS_W SP_POWERMESSAGEWAKE_PARAMS,
1003 *PSP_POWERMESSAGEWAKE_PARAMS;
1004typedef SP_DRVINFO_DETAIL_DATA_W SP_DRVINFO_DETAIL_DATA,
1005 *PSP_DRVINFO_DETAIL_DATA;
1006typedef SP_BACKUP_QUEUE_PARAMS_W SP_BACKUP_QUEUE_PARAMS,
1007 *PSP_BACKUP_QUEUE_PARAMS;
1008#else
1009typedef SP_ORIGINAL_FILE_INFO_A SP_ORIGINAL_FILE_INFO, *PSP_ORIGINAL_FILE_INFO;
1010typedef FILEPATHS_A FILEPATHS, *PFILEPATHS;
1011typedef SOURCE_MEDIA_A SOURCE_MEDIA, *PSOURCE_MEDIA;
1012typedef CABINET_INFO_A CABINET_INFO, *PCABINET_INFO;
1013typedef FILE_IN_CABINET_INFO_A FILE_IN_CABINET_INFO, *PFILE_IN_CABINET_INFO;
1014typedef SP_FILE_COPY_PARAMS_A SP_FILE_COPY_PARAMS, *PSP_FILE_COPY_PARAMS;
1015typedef SP_DEVICE_INTERFACE_DETAIL_DATA_A SP_DEVICE_INTERFACE_DETAIL_DATA,
1016 *PSP_DEVICE_INTERFACE_DETAIL_DATA;
1017typedef SP_INTERFACE_DEVICE_DETAIL_DATA_A SP_INTERFACE_DEVICE_DETAIL_DATA,
1018 *PSP_INTERFACE_DEVICE_DETAIL_DATA; /* deprecated */
1019typedef SP_DEVINFO_LIST_DETAIL_DATA_A SP_DEVINFO_LIST_DETAIL_DATA,
1020 *PSP_DEVINFO_LIST_DETAIL_DATA;
1021typedef SP_DEVINSTALL_PARAMS_A SP_DEVINSTALL_PARAMS, *PSP_DEVINSTALL_PARAMS;
1022typedef SP_SELECTDEVICE_PARAMS_A SP_SELECTDEVICE_PARAMS,
1023 *PSP_SELECTDEVICE_PARAMS;
1024typedef SP_TROUBLESHOOTER_PARAMS_A SP_TROUBLESHOOTER_PARAMS,
1025 *PSP_TROUBLESHOOTER_PARAMS;
1026typedef SP_POWERMESSAGEWAKE_PARAMS_A SP_POWERMESSAGEWAKE_PARAMS,
1027 *PSP_POWERMESSAGEWAKE_PARAMS;
1028typedef SP_DRVINFO_DETAIL_DATA_A SP_DRVINFO_DETAIL_DATA,
1029 *PSP_DRVINFO_DETAIL_DATA;
1030typedef SP_BACKUP_QUEUE_PARAMS_A SP_BACKUP_QUEUE_PARAMS,
1031 *PSP_BACKUP_QUEUE_PARAMS;
1032#endif /* UNICODE */
1033
1034WINSETUPAPI BOOL WINAPI SetupAddInstallSectionToDiskSpaceListA(HDSKSPC,HINF,HINF,PCSTR,PVOID,UINT);
1035WINSETUPAPI BOOL WINAPI SetupAddInstallSectionToDiskSpaceListW(HDSKSPC,HINF,HINF,PCWSTR,PVOID,UINT);
1036WINSETUPAPI BOOL WINAPI SetupAddSectionToDiskSpaceListA(HDSKSPC,HINF,HINF,PCSTR,UINT,PVOID,UINT);
1037WINSETUPAPI BOOL WINAPI SetupAddSectionToDiskSpaceListW(HDSKSPC,HINF,HINF,PCWSTR,UINT,PVOID,UINT);
1038WINSETUPAPI BOOL WINAPI SetupAddToDiskSpaceListA(HDSKSPC,PCSTR,LONGLONG,UINT,PVOID,UINT);
1039WINSETUPAPI BOOL WINAPI SetupAddToDiskSpaceListW(HDSKSPC,PCWSTR,LONGLONG,UINT,PVOID,UINT);
1040WINSETUPAPI BOOL WINAPI SetupAddToSourceListA(DWORD,PCSTR);
1041WINSETUPAPI BOOL WINAPI SetupAddToSourceListW(DWORD,PCWSTR);
1042WINSETUPAPI BOOL WINAPI SetupAdjustDiskSpaceListA(HDSKSPC,LPCSTR,LONGLONG,PVOID,UINT);
1043WINSETUPAPI BOOL WINAPI SetupAdjustDiskSpaceListW(HDSKSPC,LPCWSTR,LONGLONG,PVOID,UINT);
1044WINSETUPAPI UINT WINAPI SetupBackupErrorA(HWND,PCSTR,PCSTR,PCSTR,UINT,DWORD);
1045WINSETUPAPI UINT WINAPI SetupBackupErrorW(HWND,PCWSTR,PCWSTR,PCWSTR,UINT,DWORD);
1046WINSETUPAPI BOOL WINAPI SetupCancelTemporary(VOID);
1047WINSETUPAPI BOOL WINAPI SetupCloseFileQueue(HSPFILEQ);
1048WINSETUPAPI VOID WINAPI SetupCloseInfFile(HINF);
1049WINSETUPAPI VOID WINAPI SetupCloseLog(VOID);
1050WINSETUPAPI BOOL WINAPI SetupCommitFileQueueA(HWND,HSPFILEQ,PSP_FILE_CALLBACK_A,PVOID);
1051WINSETUPAPI BOOL WINAPI SetupCommitFileQueueW(HWND,HSPFILEQ,PSP_FILE_CALLBACK_W,PVOID);
1052WINSETUPAPI UINT WINAPI SetupCopyErrorA(HWND,PCSTR,PCSTR,PCSTR,PCSTR,PCSTR,UINT,DWORD,PSTR,DWORD,PDWORD);
1053WINSETUPAPI UINT WINAPI SetupCopyErrorW(HWND,PCWSTR,PCWSTR,PCWSTR,PCWSTR,PCWSTR,UINT,DWORD,PWSTR,DWORD,PDWORD);
1054WINSETUPAPI BOOL WINAPI SetupCopyOEMInfA(PCSTR,PCSTR,DWORD,DWORD,PSTR,DWORD,PDWORD,PSTR*);
1055WINSETUPAPI BOOL WINAPI SetupCopyOEMInfW(PCWSTR,PCWSTR,DWORD,DWORD,PWSTR,DWORD,PDWORD,PWSTR*);
1056WINSETUPAPI HDSKSPC WINAPI SetupCreateDiskSpaceListA(PVOID,DWORD,UINT);
1057WINSETUPAPI HDSKSPC WINAPI SetupCreateDiskSpaceListW(PVOID,DWORD,UINT);
1058WINSETUPAPI DWORD WINAPI SetupDecompressOrCopyFileA(PCSTR,PCSTR,PUINT);
1059WINSETUPAPI DWORD WINAPI SetupDecompressOrCopyFileW(PCWSTR,PCWSTR,PUINT);
1060WINSETUPAPI UINT WINAPI SetupDefaultQueueCallbackA(PVOID,UINT,UINT_PTR,UINT_PTR);
1061WINSETUPAPI UINT WINAPI SetupDefaultQueueCallbackW(PVOID,UINT,UINT_PTR,UINT_PTR);
1062WINSETUPAPI UINT WINAPI SetupDeleteErrorA(HWND,PCSTR,PCSTR,UINT,DWORD);
1063WINSETUPAPI UINT WINAPI SetupDeleteErrorW(HWND,PCWSTR,PCWSTR,UINT,DWORD);
1064WINSETUPAPI BOOL WINAPI SetupDestroyDiskSpaceList(HDSKSPC);
1065WINSETUPAPI BOOL WINAPI SetupDiAskForOEMDisk(HDEVINFO,PSP_DEVINFO_DATA);
1066WINSETUPAPI BOOL WINAPI SetupDiBuildClassInfoList(DWORD,LPGUID,DWORD,PDWORD);
1067WINSETUPAPI BOOL WINAPI SetupDiBuildClassInfoListExA(DWORD,LPGUID,DWORD,PDWORD,PCSTR,PVOID);
1068WINSETUPAPI BOOL WINAPI SetupDiBuildClassInfoListExW(DWORD,LPGUID,DWORD,PDWORD,PCWSTR,PVOID);
1069WINSETUPAPI BOOL WINAPI SetupDiBuildDriverInfoList(HDEVINFO,PSP_DEVINFO_DATA,DWORD);
1070WINSETUPAPI BOOL WINAPI SetupDiCallClassInstaller(DI_FUNCTION,HDEVINFO,PSP_DEVINFO_DATA);
1071WINSETUPAPI BOOL WINAPI SetupDiCancelDriverInfoSearch(HDEVINFO);
1072WINSETUPAPI BOOL WINAPI SetupDiChangeState(HDEVINFO,PSP_DEVINFO_DATA);
1073WINSETUPAPI BOOL WINAPI SetupDiClassGuidsFromNameA(PCSTR,LPGUID,DWORD,PDWORD);
1074WINSETUPAPI BOOL WINAPI SetupDiClassGuidsFromNameW(PCWSTR,LPGUID,DWORD,PDWORD);
1075WINSETUPAPI BOOL WINAPI SetupDiClassGuidsFromNameExA(PCSTR,LPGUID,DWORD,PDWORD,PCSTR,PVOID);
1076WINSETUPAPI BOOL WINAPI SetupDiClassGuidsFromNameExW(PCWSTR,LPGUID,DWORD,PDWORD,PCWSTR,PVOID);
1077WINSETUPAPI BOOL WINAPI SetupDiClassNameFromGuidA(CONST GUID*,PSTR,DWORD,PDWORD);
1078WINSETUPAPI BOOL WINAPI SetupDiClassNameFromGuidW(CONST GUID*,PWSTR,DWORD,PDWORD);
1079WINSETUPAPI BOOL WINAPI SetupDiClassNameFromGuidExA(CONST GUID*,PSTR,DWORD,PDWORD,PCSTR,PVOID);
1080WINSETUPAPI BOOL WINAPI SetupDiClassNameFromGuidExW(CONST GUID*,PWSTR,DWORD,PDWORD,PCWSTR,PVOID);
1081WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInfoA(HDEVINFO,PCSTR,CONST GUID*,PCSTR,HWND,DWORD,PSP_DEVINFO_DATA);
1082WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInfoW(HDEVINFO,PCWSTR,CONST GUID*,PCWSTR,HWND,DWORD,PSP_DEVINFO_DATA);
1083WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoList(CONST GUID*,HWND);
1084WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoListExA(CONST GUID*,HWND,PCSTR,PVOID);
1085WINSETUPAPI HDEVINFO WINAPI SetupDiCreateDeviceInfoListExW(CONST GUID*,HWND,PCWSTR,PVOID);
1086WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInterfaceA(HDEVINFO,PSP_DEVINFO_DATA,CONST GUID*,PCSTR,DWORD,PSP_DEVICE_INTERFACE_DATA);
1087WINSETUPAPI BOOL WINAPI SetupDiCreateDeviceInterfaceW(HDEVINFO,PSP_DEVINFO_DATA,CONST GUID*,PCWSTR,DWORD,PSP_DEVICE_INTERFACE_DATA);
1088WINSETUPAPI HKEY WINAPI SetupDiCreateDeviceInterfaceRegKeyA(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,DWORD,REGSAM,HINF,PCSTR);
1089WINSETUPAPI HKEY WINAPI SetupDiCreateDeviceInterfaceRegKeyW(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,DWORD,REGSAM,HINF,PCWSTR);
1090WINSETUPAPI HKEY WINAPI SetupDiCreateDevRegKeyA(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,DWORD,HINF,PCSTR);
1091WINSETUPAPI HKEY WINAPI SetupDiCreateDevRegKeyW(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,DWORD,HINF,PCWSTR);
1092WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInfo(HDEVINFO,PSP_DEVINFO_DATA);
1093WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInterfaceData(HDEVINFO,PSP_DEVICE_INTERFACE_DATA);
1094WINSETUPAPI BOOL WINAPI SetupDiDeleteDeviceInterfaceRegKey(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,DWORD);
1095WINSETUPAPI BOOL WINAPI SetupDiDeleteDevRegKey(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,DWORD);
1096WINSETUPAPI BOOL WINAPI SetupDiDestroyClassImageList(PSP_CLASSIMAGELIST_DATA);
1097WINSETUPAPI BOOL WINAPI SetupDiDestroyDeviceInfoList(HDEVINFO);
1098WINSETUPAPI BOOL WINAPI SetupDiDestroyDriverInfoList(HDEVINFO,PSP_DEVINFO_DATA,DWORD);
1099WINSETUPAPI INT WINAPI SetupDiDrawMiniIcon(HDC,RECT,INT,DWORD);
1100WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInfo(HDEVINFO,DWORD,PSP_DEVINFO_DATA);
1101WINSETUPAPI BOOL WINAPI SetupDiEnumDeviceInterfaces(HDEVINFO,PSP_DEVINFO_DATA,CONST GUID*,DWORD,PSP_DEVICE_INTERFACE_DATA);
1102WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoA(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,PSP_DRVINFO_DATA_A);
1103WINSETUPAPI BOOL WINAPI SetupDiEnumDriverInfoW(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,PSP_DRVINFO_DATA_W);
1104WINSETUPAPI BOOL WINAPI SetupDiGetActualSectionToInstallA(HINF,PCSTR,PSTR,DWORD,PDWORD,PSTR*);
1105WINSETUPAPI BOOL WINAPI SetupDiGetActualSectionToInstallW(HINF,PCWSTR,PWSTR,DWORD,PDWORD,PWSTR*);
1106WINSETUPAPI BOOL WINAPI SetupDiGetClassBitmapIndex(CONST GUID*,PINT);
1107WINSETUPAPI BOOL WINAPI SetupDiGetClassDescriptionA(CONST GUID*,PSTR,DWORD,PDWORD);
1108WINSETUPAPI BOOL WINAPI SetupDiGetClassDescriptionW(CONST GUID*,PWSTR,DWORD,PDWORD);
1109WINSETUPAPI BOOL WINAPI SetupDiGetClassDescriptionExA(CONST GUID*,PSTR,DWORD,PDWORD,PCSTR,PVOID);
1110WINSETUPAPI BOOL WINAPI SetupDiGetClassDescriptionExW(CONST GUID*,PWSTR,DWORD,PDWORD,PCWSTR,PVOID);
1111WINSETUPAPI BOOL WINAPI SetupDiGetClassDevPropertySheetsA(HDEVINFO,PSP_DEVINFO_DATA,LPPROPSHEETHEADERA,DWORD,PDWORD,DWORD);
1112WINSETUPAPI BOOL WINAPI SetupDiGetClassDevPropertySheetsW(HDEVINFO,PSP_DEVINFO_DATA,LPPROPSHEETHEADERW,DWORD,PDWORD,DWORD);
1113WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsA(CONST GUID*,PCSTR,HWND,DWORD);
1114WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsW(CONST GUID*,PCWSTR,HWND,DWORD);
1115WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsExA(CONST GUID*,PCSTR,HWND,DWORD,HDEVINFO,PCSTR,PVOID);
1116WINSETUPAPI HDEVINFO WINAPI SetupDiGetClassDevsExW(CONST GUID*,PCWSTR,HWND,DWORD,HDEVINFO,PCWSTR,PVOID);
1117WINSETUPAPI BOOL WINAPI SetupDiGetClassImageIndex(PSP_CLASSIMAGELIST_DATA,CONST GUID*,PINT);
1118WINSETUPAPI BOOL WINAPI SetupDiGetClassImageList(PSP_CLASSIMAGELIST_DATA);
1119WINSETUPAPI BOOL WINAPI SetupDiGetClassImageListExA(PSP_CLASSIMAGELIST_DATA,PCSTR,PVOID);
1120WINSETUPAPI BOOL WINAPI SetupDiGetClassImageListExW(PSP_CLASSIMAGELIST_DATA,PCWSTR,PVOID);
1121WINSETUPAPI BOOL WINAPI SetupDiGetClassInstallParamsA(HDEVINFO,PSP_DEVINFO_DATA,PSP_CLASSINSTALL_HEADER,DWORD,PDWORD);
1122WINSETUPAPI BOOL WINAPI SetupDiGetClassInstallParamsW(HDEVINFO,PSP_DEVINFO_DATA,PSP_CLASSINSTALL_HEADER,DWORD,PDWORD);
1123WINSETUPAPI BOOL WINAPI SetupDiGetClassRegistryPropertyA(LPGUID,DWORD,PDWORD,PBYTE,DWORD,PDWORD,PCSTR,PVOID);
1124WINSETUPAPI BOOL WINAPI SetupDiGetClassRegistryPropertyW(LPGUID,DWORD,PDWORD,PBYTE,DWORD,PDWORD,PCWSTR,PVOID);
1125WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListClass(HDEVINFO,LPGUID);
1126WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListDetailA(HDEVINFO,PSP_DEVINFO_LIST_DETAIL_DATA_A);
1127WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInfoListDetailW(HDEVINFO,PSP_DEVINFO_LIST_DETAIL_DATA_W);
1128WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstallParamsA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINSTALL_PARAMS_A);
1129WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstallParamsW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINSTALL_PARAMS_W);
1130WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstanceIdA(HDEVINFO,PSP_DEVINFO_DATA,PSTR,DWORD,PDWORD);
1131WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInstanceIdW(HDEVINFO,PSP_DEVINFO_DATA,PWSTR,DWORD,PDWORD);
1132WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceAlias(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,CONST GUID*,PSP_DEVICE_INTERFACE_DATA);
1133WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceDetailA(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,PSP_DEVICE_INTERFACE_DETAIL_DATA_A,DWORD,PDWORD,PSP_DEVINFO_DATA);
1134WINSETUPAPI BOOL WINAPI SetupDiGetDeviceInterfaceDetailW(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,PSP_DEVICE_INTERFACE_DETAIL_DATA_W,DWORD,PDWORD,PSP_DEVINFO_DATA);
1135WINSETUPAPI BOOL WINAPI SetupDiGetDeviceRegistryPropertyA(HDEVINFO,PSP_DEVINFO_DATA,DWORD,PDWORD,PBYTE,DWORD,PDWORD);
1136WINSETUPAPI BOOL WINAPI SetupDiGetDeviceRegistryPropertyW(HDEVINFO,PSP_DEVINFO_DATA,DWORD,PDWORD,PBYTE,DWORD,PDWORD);
1137WINSETUPAPI BOOL WINAPI SetupDiGetDriverInfoDetailA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_A,PSP_DRVINFO_DETAIL_DATA_A,DWORD,PDWORD);
1138WINSETUPAPI BOOL WINAPI SetupDiGetDriverInfoDetailW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_W,PSP_DRVINFO_DETAIL_DATA_W,DWORD,PDWORD);
1139WINSETUPAPI BOOL WINAPI SetupDiGetDriverInstallParamsA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_A,PSP_DRVINSTALL_PARAMS);
1140WINSETUPAPI BOOL WINAPI SetupDiGetDriverInstallParamsW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_W,PSP_DRVINSTALL_PARAMS);
1141WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileFriendlyNameA(DWORD,PSTR,DWORD,PDWORD);
1142WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileFriendlyNameExA(DWORD,PSTR,DWORD,PDWORD,PCSTR,PVOID);
1143WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileFriendlyNameExW(DWORD,PWSTR,DWORD,PDWORD,PCWSTR,PVOID);
1144WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileFriendlyNameW(DWORD,PWSTR,DWORD,PDWORD);
1145WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileList(PDWORD,DWORD,PDWORD,PDWORD);
1146WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileListExA(PDWORD,DWORD,PDWORD,PDWORD,PCSTR,PVOID);
1147WINSETUPAPI BOOL WINAPI SetupDiGetHwProfileListExW(PDWORD,DWORD,PDWORD,PDWORD,PCWSTR,PVOID);
1148WINSETUPAPI BOOL WINAPI SetupDiGetINFClassA(PCSTR,LPGUID,PSTR,DWORD,PDWORD);
1149WINSETUPAPI BOOL WINAPI SetupDiGetINFClassW(PCWSTR,LPGUID,PWSTR,DWORD,PDWORD);
1150WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDevice(HDEVINFO,PSP_DEVINFO_DATA);
1151WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDriverA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_A);
1152WINSETUPAPI BOOL WINAPI SetupDiGetSelectedDriverW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_W);
1153WINSETUPAPI HPROPSHEETPAGE WINAPI SetupDiGetWizardage(HDEVINFO,PSP_DEVINFO_DATA,PSP_INSTALLWIZARD_DATA,DWORD,DWORD);
1154WINSETUPAPI BOOL WINAPI SetupDiInstallClassA(HWND,PCSTR,DWORD,HSPFILEQ);
1155WINSETUPAPI BOOL WINAPI SetupDiInstallClassW(HWND,PCWSTR,DWORD,HSPFILEQ);
1156WINSETUPAPI BOOL WINAPI SetupDiInstallClassExA(HWND,PCSTR,DWORD,HSPFILEQ,CONST GUID*,PVOID,PVOID);
1157WINSETUPAPI BOOL WINAPI SetupDiInstallClassExW(HWND,PCWSTR,DWORD,HSPFILEQ,CONST GUID*,PVOID,PVOID);
1158WINSETUPAPI BOOL WINAPI SetupDiInstallDevice(HDEVINFO,PSP_DEVINFO_DATA);
1159WINSETUPAPI BOOL WINAPI SetupDiInstallDeviceInterfaces(HDEVINFO,PSP_DEVINFO_DATA);
1160WINSETUPAPI BOOL WINAPI SetupDiInstallDriverFiles(HDEVINFO,PSP_DEVINFO_DATA);
1161WINSETUPAPI BOOL WINAPI SetupDiLoadClassIcon(CONST GUID*,HICON*,PINT);
1162WINSETUPAPI BOOL WINAPI SetupDiMoveDuplicateDevice(HDEVINFO,PSP_DEVINFO_DATA);
1163WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKey(CONST GUID*,REGSAM);
1164WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKeyExA(CONST GUID*,REGSAM,DWORD,PCSTR,PVOID);
1165WINSETUPAPI HKEY WINAPI SetupDiOpenClassRegKeyExW(CONST GUID*,REGSAM,DWORD,PCWSTR,PVOID);
1166WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInfoA(HDEVINFO,PCSTR,HWND,DWORD,PSP_DEVINFO_DATA);
1167WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInfoW(HDEVINFO,PCWSTR,HWND,DWORD,PSP_DEVINFO_DATA);
1168WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInterfaceA(HDEVINFO,PCSTR,DWORD,PSP_DEVICE_INTERFACE_DATA);
1169WINSETUPAPI BOOL WINAPI SetupDiOpenDeviceInterfaceW(HDEVINFO,PCWSTR,DWORD,PSP_DEVICE_INTERFACE_DATA);
1170WINSETUPAPI HKEY WINAPI SetupDiOpenDeviceInterfaceRegKey(HDEVINFO,PSP_DEVICE_INTERFACE_DATA,DWORD,REGSAM);
1171WINSETUPAPI HKEY WINAPI SetupDiOpenDevRegKey(HDEVINFO,PSP_DEVINFO_DATA,DWORD,DWORD,DWORD,REGSAM);
1172WINSETUPAPI BOOL WINAPI SetupDiRegisterCoDeviceInstallers(HDEVINFO,PSP_DEVINFO_DATA);
1173WINSETUPAPI BOOL WINAPI SetupDiRegisterDeviceInfo(HDEVINFO,PSP_DEVINFO_DATA,DWORD,PSP_DETSIG_CMPPROC,PVOID,PSP_DEVINFO_DATA);
1174WINSETUPAPI BOOL WINAPI SetupDiRemoveDevice(HDEVINFO,PSP_DEVINFO_DATA);
1175WINSETUPAPI BOOL WINAPI SetupDiRemoveDeviceInterface(HDEVINFO,PSP_DEVICE_INTERFACE_DATA);
1176WINSETUPAPI BOOL WINAPI SetupDiSelectBestCompatDrv(HDEVINFO,PSP_DEVINFO_DATA);
1177WINSETUPAPI BOOL WINAPI SetupDiSelectDevice(HDEVINFO,PSP_DEVINFO_DATA);
1178WINSETUPAPI BOOL WINAPI SetupDiSelectOEMDrv(HWND,HDEVINFO,PSP_DEVINFO_DATA);
1179WINSETUPAPI BOOL WINAPI SetupDiSetClassInstallParamsA(HDEVINFO,PSP_DEVINFO_DATA,PSP_CLASSINSTALL_HEADER,DWORD);
1180WINSETUPAPI BOOL WINAPI SetupDiSetClassInstallParamsW(HDEVINFO,PSP_DEVINFO_DATA,PSP_CLASSINSTALL_HEADER,DWORD);
1181WINSETUPAPI BOOL WINAPI SetupDiSetClassRegistryPropertyA(LPGUID,DWORD,CONST BYTE*,DWORD,PCSTR,PVOID);
1182WINSETUPAPI BOOL WINAPI SetupDiSetClassRegistryPropertyW(LPGUID,DWORD,CONST BYTE*,DWORD,PCWSTR,PVOID);
1183WINSETUPAPI BOOL WINAPI SetupDiSetDeviceInstallParamsA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINSTALL_PARAMS_A);
1184WINSETUPAPI BOOL WINAPI SetupDiSetDeviceInstallParamsW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DEVINSTALL_PARAMS_W);
1185WINSETUPAPI BOOL WINAPI SetupDiSetDeviceRegistryPropertyA(HDEVINFO,PSP_DEVINFO_DATA,DWORD,CONST BYTE*,DWORD);
1186WINSETUPAPI BOOL WINAPI SetupDiSetDeviceRegistryPropertyW(HDEVINFO,PSP_DEVINFO_DATA,DWORD,CONST BYTE*,DWORD);
1187WINSETUPAPI BOOL WINAPI SetupDiSetDriverInstallParamsA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_A,PSP_DRVINSTALL_PARAMS);
1188WINSETUPAPI BOOL WINAPI SetupDiSetDriverInstallParamsW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_W,PSP_DRVINSTALL_PARAMS);
1189WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDevice(HDEVINFO,PSP_DEVINFO_DATA);
1190WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDriverA(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_A);
1191WINSETUPAPI BOOL WINAPI SetupDiSetSelectedDriverW(HDEVINFO,PSP_DEVINFO_DATA,PSP_DRVINFO_DATA_W);
1192WINSETUPAPI BOOL WINAPI SetupDiUnremoveDevice(HDEVINFO,PSP_DEVINFO_DATA);
1193WINSETUPAPI HDSKSPC WINAPI SetupDuplicateDiskSpaceListA(HDSKSPC,PVOID,DWORD,UINT);
1194WINSETUPAPI HDSKSPC WINAPI SetupDuplicateDiskSpaceListW(HDSKSPC,PVOID,DWORD,UINT);
1195WINSETUPAPI BOOL WINAPI SetupFindFirstLineA(HINF,PCSTR,PCSTR,PINFCONTEXT);
1196WINSETUPAPI BOOL WINAPI SetupFindFirstLineW(HINF,PCWSTR,PCWSTR,PINFCONTEXT);
1197WINSETUPAPI BOOL WINAPI SetupFindNextLine(PINFCONTEXT,PINFCONTEXT);
1198WINSETUPAPI BOOL WINAPI SetupFindNextMatchLineA(PINFCONTEXT,PCSTR,PINFCONTEXT);
1199WINSETUPAPI BOOL WINAPI SetupFindNextMatchLineW(PINFCONTEXT,PCWSTR,PINFCONTEXT);
1200WINSETUPAPI BOOL WINAPI SetupFreeA(PCSTR**,UINT);
1201WINSETUPAPI BOOL WINAPI SetupFreeW(PCWSTR**,UINT);
1202WINSETUPAPI BOOL WINAPI SetupGetBackupInformationA(HSPFILEQ,PSP_BACKUP_QUEUE_PARAMS_A);
1203WINSETUPAPI BOOL WINAPI SetupGetBackupInformationW(HSPFILEQ,PSP_BACKUP_QUEUE_PARAMS_W);
1204WINSETUPAPI BOOL WINAPI SetupGetBinaryField(PINFCONTEXT,DWORD,PBYTE,DWORD,LPDWORD);
1205WINSETUPAPI DWORD WINAPI SetupGetFieldCount(PINFCONTEXT);
1206WINSETUPAPI DWORD WINAPI SetupGetFileCompressionInfoA(PCSTR,PSTR*,PDWORD,PDWORD,PUINT);
1207WINSETUPAPI DWORD WINAPI SetupGetFileCompressionInfoW(PCWSTR,PWSTR*,PDWORD,PDWORD,PUINT);
1208WINSETUPAPI BOOL WINAPI SetupGetInfFileListA(PCSTR,DWORD,PSTR,DWORD,PDWORD);
1209WINSETUPAPI BOOL WINAPI SetupGetInfFileListW(PCWSTR,DWORD,PWSTR,DWORD,PDWORD);
1210WINSETUPAPI BOOL WINAPI SetupGetInfInformationA(LPCVOID,DWORD,PSP_INF_INFORMATION,DWORD,PDWORD);
1211WINSETUPAPI BOOL WINAPI SetupGetInfInformationW(LPCVOID,DWORD,PSP_INF_INFORMATION,DWORD,PDWORD);
1212WINSETUPAPI BOOL WINAPI SetupGetIntField(PINFCONTEXT,DWORD,PINT);
1213WINSETUPAPI BOOL WINAPI SetupGetLineByIndexA(HINF,PCSTR,DWORD,PINFCONTEXT);
1214WINSETUPAPI BOOL WINAPI SetupGetLineByIndexW(HINF,PCWSTR,DWORD,PINFCONTEXT);
1215WINSETUPAPI LONG WINAPI SetupGetLineCountA(HINF,PCSTR);
1216WINSETUPAPI LONG WINAPI SetupGetLineCountW(HINF,PCWSTR);
1217WINSETUPAPI BOOL WINAPI SetupGetLineTextA(PINFCONTEXT,HINF,PCSTR,PCSTR,PSTR,DWORD,PDWORD);
1218WINSETUPAPI BOOL WINAPI SetupGetLineTextW(PINFCONTEXT,HINF,PCWSTR,PCWSTR,PWSTR,DWORD,PDWORD);
1219WINSETUPAPI BOOL WINAPI SetupGetMultiSzFieldA(PINFCONTEXT,DWORD,PSTR,DWORD,LPDWORD);
1220WINSETUPAPI BOOL WINAPI SetupGetMultiSzFieldW(PINFCONTEXT,DWORD,PWSTR,DWORD,LPDWORD);
1221WINSETUPAPI BOOL WINAPI SetupGetSourceFileLocationA(HINF,PINFCONTEXT,PCSTR,PUINT,PSTR,DWORD,PDWORD);
1222WINSETUPAPI BOOL WINAPI SetupGetSourceFileLocationW(HINF,PINFCONTEXT,PCWSTR,PUINT,PWSTR,DWORD,PDWORD);
1223WINSETUPAPI BOOL WINAPI SetupGetSourceFileSizeA(HINF,PINFCONTEXT,PCSTR,PCSTR,PDWORD,UINT);
1224WINSETUPAPI BOOL WINAPI SetupGetSourceFileSizeW(HINF,PINFCONTEXT,PCWSTR,PCWSTR,PDWORD,UINT);
1225WINSETUPAPI BOOL WINAPI SetupGetSourceInfoA(HINF,UINT,UINT,PSTR,DWORD,PDWORD);
1226WINSETUPAPI BOOL WINAPI SetupGetSourceInfoW(HINF,UINT,UINT,PWSTR,DWORD,PDWORD);
1227WINSETUPAPI BOOL WINAPI SetupGetStringFieldA(PINFCONTEXT,DWORD,PSTR,DWORD,PDWORD);
1228WINSETUPAPI BOOL WINAPI SetupGetStringFieldW(PINFCONTEXT,DWORD,PWSTR,DWORD,PDWORD);
1229WINSETUPAPI BOOL WINAPI SetupGetTargetPathA(HINF,PINFCONTEXT,PCSTR,PSTR,DWORD,PDWORD);
1230WINSETUPAPI BOOL WINAPI SetupGetTargetPathW(HINF,PINFCONTEXT,PCWSTR,PWSTR,DWORD,PDWORD);
1231WINSETUPAPI PVOID WINAPI SetupInitDefaultQueueCallback(HWND);
1232WINSETUPAPI PVOID WINAPI SetupInitDefaultQueueCallbackEx(HWND,HWND,UINT,DWORD,PVOID);
1233WINSETUPAPI HSPFILELOG WINAPI SetupInitializeFileLogA(PCSTR,DWORD);
1234WINSETUPAPI HSPFILELOG WINAPI SetupInitializeFileLogW(PCWSTR,DWORD);
1235WINSETUPAPI BOOL WINAPI SetupInstallFileA(HINF,PINFCONTEXT,PCSTR,PCSTR,PCSTR,DWORD,PSP_FILE_CALLBACK_A,PVOID);
1236WINSETUPAPI BOOL WINAPI SetupInstallFileW(HINF,PINFCONTEXT,PCWSTR,PCWSTR,PCWSTR,DWORD,PSP_FILE_CALLBACK_W,PVOID);
1237WINSETUPAPI BOOL WINAPI SetupInstallFileExA(HINF,PINFCONTEXT,PCSTR,PCSTR,PCSTR,DWORD,PSP_FILE_CALLBACK_A,PVOID,PBOOL);
1238WINSETUPAPI BOOL WINAPI SetupInstallFileExW(HINF,PINFCONTEXT,PCWSTR,PCWSTR,PCWSTR,DWORD,PSP_FILE_CALLBACK_W,PVOID,PBOOL);
1239WINSETUPAPI BOOL WINAPI SetupInstallFilesFromInfSectionA(HINF,HINF,HSPFILEQ,PCSTR,PCSTR,UINT);
1240WINSETUPAPI BOOL WINAPI SetupInstallFilesFromInfSectionW(HINF,HINF,HSPFILEQ,PCWSTR,PCWSTR,UINT);
1241WINSETUPAPI BOOL WINAPI SetupInstallFromInfSectionA(HWND,HINF,PCSTR,UINT,HKEY,PCSTR,UINT,PSP_FILE_CALLBACK_A,PVOID,HDEVINFO,PSP_DEVINFO_DATA);
1242WINSETUPAPI BOOL WINAPI SetupInstallFromInfSectionW(HWND,HINF,PCWSTR,UINT,HKEY,PCWSTR,UINT,PSP_FILE_CALLBACK_W,PVOID,HDEVINFO,PSP_DEVINFO_DATA);
1243WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionA(HINF,PCSTR,DWORD);
1244WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionW(HINF,PCWSTR,DWORD);
1245WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionExA(HINF,PCSTR,DWORD,HDEVINFO,PSP_DEVINFO_DATA,PVOID,PVOID);
1246WINSETUPAPI BOOL WINAPI SetupInstallServicesFromInfSectionExW(HINF,PCWSTR,DWORD,HDEVINFO,PSP_DEVINFO_DATA,PVOID,PVOID);
1247WINSETUPAPI BOOL WINAPI SetupIterateCabinetA(PCSTR,DWORD,PSP_FILE_CALLBACK_A,PVOID);
1248WINSETUPAPI BOOL WINAPI SetupIterateCabinetW(PCWSTR,DWORD,PSP_FILE_CALLBACK_W,PVOID);
1249WINSETUPAPI BOOL WINAPI SetupLogErrorA(LPCSTR,LogSeverity);
1250WINSETUPAPI BOOL WINAPI SetupLogErrorW(LPCWSTR,LogSeverity);
1251WINSETUPAPI BOOL WINAPI SetupLogFileA(HSPFILELOG,PCSTR,PCSTR,PCSTR,DWORD,PCSTR,PCSTR,PCSTR,DWORD);
1252WINSETUPAPI BOOL WINAPI SetupLogFileW(HSPFILELOG,PCWSTR,PCWSTR,PCWSTR,DWORD,PCWSTR,PCWSTR,PCWSTR,DWORD);
1253WINSETUPAPI BOOL WINAPI SetupOpenAppendInfFileA(PCSTR,HINF,PUINT);
1254WINSETUPAPI BOOL WINAPI SetupOpenAppendInfFileW(PCWSTR,HINF,PUINT);
1255WINSETUPAPI HSPFILEQ WINAPI SetupOpenFileQueue(VOID);
1256WINSETUPAPI HINF WINAPI SetupOpenInfFileA(PCSTR,PCSTR,DWORD,PUINT);
1257WINSETUPAPI HINF WINAPI SetupOpenInfFileW(PCWSTR,PCWSTR,DWORD,PUINT);
1258WINSETUPAPI BOOL WINAPI SetupOpenLog(BOOL);
1259WINSETUPAPI HINF WINAPI SetupOpenMasterInf(VOID);
1260WINSETUPAPI UINT WINAPI SetupPromptForDiskA(HWND,PCSTR,PCSTR,PCSTR,PCSTR,PCSTR,DWORD,PSTR,DWORD,PDWORD);
1261WINSETUPAPI UINT WINAPI SetupPromptForDiskW(HWND,PCWSTR,PCWSTR,PCWSTR,PCWSTR,PCWSTR,DWORD,PWSTR,DWORD,PDWORD);
1262WINSETUPAPI INT WINAPI SetupPromptReboot(HSPFILEQ,HWND,BOOL);
1263WINSETUPAPI BOOL WINAPI SetupQueryA(DWORD,PCSTR**,PUINT);
1264WINSETUPAPI BOOL WINAPI SetupQueryW(DWORD,PCWSTR**,PUINT);
1265WINSETUPAPI BOOL WINAPI SetupQueryDrivesInDiskSpaceListA(HDSKSPC,PSTR,DWORD,PDWORD);
1266WINSETUPAPI BOOL WINAPI SetupQueryDrivesInDiskSpaceListW(HDSKSPC,PWSTR,DWORD,PDWORD);
1267WINSETUPAPI BOOL WINAPI SetupQueryFileLogA(HSPFILELOG,PCSTR,PCSTR,SetupFileLogInfo,PSTR,DWORD,PDWORD);
1268WINSETUPAPI BOOL WINAPI SetupQueryFileLogW(HSPFILELOG,PCWSTR,PCWSTR,SetupFileLogInfo,PWSTR,DWORD,PDWORD);
1269WINSETUPAPI BOOL WINAPI SetupQueryInfFileInformationA(PSP_INF_INFORMATION,UINT,PSTR,DWORD,PDWORD);
1270WINSETUPAPI BOOL WINAPI SetupQueryInfFileInformationW(PSP_INF_INFORMATION,UINT,PWSTR,DWORD,PDWORD);
1271WINSETUPAPI BOOL WINAPI SetupQueryInfOriginalFileInformationA(PSP_INF_INFORMATION,UINT,PSP_ALTPLATFORM_INFO,PSP_ORIGINAL_FILE_INFO_A);
1272WINSETUPAPI BOOL WINAPI SetupQueryInfOriginalFileInformationW(PSP_INF_INFORMATION,UINT,PSP_ALTPLATFORM_INFO,PSP_ORIGINAL_FILE_INFO_W);
1273WINSETUPAPI BOOL WINAPI SetupQueryInfVersionInformationA(PSP_INF_INFORMATION,UINT,PSTR,PSTR,DWORD,PDWORD);
1274WINSETUPAPI BOOL WINAPI SetupQueryInfVersionInformationW(PSP_INF_INFORMATION,UINT,PCWSTR,PWSTR,DWORD,PDWORD);
1275WINSETUPAPI BOOL WINAPI SetupQuerySpaceRequiredOnDriveA(HDSKSPC,PCSTR,LONGLONG*,PVOID,UINT);
1276WINSETUPAPI BOOL WINAPI SetupQuerySpaceRequiredOnDriveW(HDSKSPC,PCWSTR,LONGLONG*,PVOID,UINT);
1277WINSETUPAPI BOOL WINAPI SetupQueueCopyA(HSPFILEQ,PCSTR,PCSTR,PCSTR,PCSTR,PCSTR,PCSTR,PCSTR,DWORD);
1278WINSETUPAPI BOOL WINAPI SetupQueueCopyW(HSPFILEQ,PCWSTR,PCWSTR,PCWSTR,PCWSTR,PCWSTR,PCWSTR,PCWSTR,DWORD);
1279WINSETUPAPI BOOL WINAPI SetupQueueCopyIndirectA(PSP_FILE_COPY_PARAMS_A);
1280WINSETUPAPI BOOL WINAPI SetupQueueCopyIndirectW(PSP_FILE_COPY_PARAMS_W);
1281WINSETUPAPI BOOL WINAPI SetupQueueCopySectionA(HSPFILEQ,PCSTR,HINF,HINF,PCSTR,DWORD);
1282WINSETUPAPI BOOL WINAPI SetupQueueCopySectionW(HSPFILEQ,PCWSTR,HINF,HINF,PCWSTR,DWORD);
1283WINSETUPAPI BOOL WINAPI SetupQueueDefaultCopyA(HSPFILEQ,HINF,PCSTR,PCSTR,PCSTR,DWORD);
1284WINSETUPAPI BOOL WINAPI SetupQueueDefaultCopyW(HSPFILEQ,HINF,PCWSTR,PCWSTR,PCWSTR,DWORD);
1285WINSETUPAPI BOOL WINAPI SetupQueueDeleteA(HSPFILEQ,PCSTR,PCSTR);
1286WINSETUPAPI BOOL WINAPI SetupQueueDeleteW(HSPFILEQ,PCWSTR,PCWSTR);
1287WINSETUPAPI BOOL WINAPI SetupQueueDeleteSectionA(HSPFILEQ,HINF,HINF,PCSTR);
1288WINSETUPAPI BOOL WINAPI SetupQueueDeleteSectionW(HSPFILEQ,HINF,HINF,PCWSTR);
1289WINSETUPAPI BOOL WINAPI SetupQueueRenameA(HSPFILEQ,PCSTR,PCSTR,PCSTR,PCSTR);
1290WINSETUPAPI BOOL WINAPI SetupQueueRenameW(HSPFILEQ,PCWSTR,PCWSTR,PCWSTR,PCWSTR);
1291WINSETUPAPI BOOL WINAPI SetupQueueRenameSectionA(HSPFILEQ,HINF,HINF,PCSTR);
1292WINSETUPAPI BOOL WINAPI SetupQueueRenameSectionW(HSPFILEQ,HINF,HINF,PCWSTR);
1293WINSETUPAPI BOOL WINAPI SetupRemoveFileLogEntryA(HSPFILELOG,PCSTR,PCSTR);
1294WINSETUPAPI BOOL WINAPI SetupRemoveFileLogEntryW(HSPFILELOG,PCWSTR,PCWSTR);
1295WINSETUPAPI BOOL WINAPI SetupRemoveFromDiskSpaceListA(HDSKSPC,PCSTR,UINT,PVOID,UINT);
1296WINSETUPAPI BOOL WINAPI SetupRemoveFromDiskSpaceListW(HDSKSPC,PCWSTR,UINT,PVOID,UINT);
1297WINSETUPAPI BOOL WINAPI SetupRemoveFromSourceListA(DWORD,PCSTR);
1298WINSETUPAPI BOOL WINAPI SetupRemoveFromSourceListW(DWORD,PCWSTR);
1299WINSETUPAPI BOOL WINAPI SetupRemoveInstallSectionFromDiskSpaceListA(HDSKSPC,HINF,HINF,PCSTR,PVOID,UINT);
1300WINSETUPAPI BOOL WINAPI SetupRemoveInstallSectionFromDiskSpaceListW(HDSKSPC,HINF,HINF,PCWSTR,PVOID,UINT);
1301WINSETUPAPI BOOL WINAPI SetupRemoveSectionFromDiskSpaceListA(HDSKSPC,HINF,HINF,PCSTR,UINT,PVOID,UINT);
1302WINSETUPAPI BOOL WINAPI SetupRemoveSectionFromDiskSpaceListW(HDSKSPC,HINF,HINF,PCWSTR,UINT,PVOID,UINT);
1303WINSETUPAPI UINT WINAPI SetupRenameErrorA(HWND,PCSTR,PCSTR,PCSTR,UINT,DWORD);
1304WINSETUPAPI UINT WINAPI SetupRenameErrorW(HWND,PCWSTR,PCWSTR,PCWSTR,UINT,DWORD);
1305WINSETUPAPI BOOL WINAPI SetupScanFileQueueA(HSPFILEQ,DWORD,HWND,PSP_FILE_CALLBACK_A,PVOID,PDWORD);
1306WINSETUPAPI BOOL WINAPI SetupScanFileQueueW(HSPFILEQ,DWORD,HWND,PSP_FILE_CALLBACK_W,PVOID,PDWORD);
1307WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdA(HINF,DWORD,PCSTR);
1308WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdW(HINF,DWORD,PCWSTR);
1309WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdExA(HINF,DWORD,PCSTR,DWORD,DWORD,PVOID);
1310WINSETUPAPI BOOL WINAPI SetupSetDirectoryIdExW(HINF,DWORD,PCWSTR,DWORD,DWORD,PVOID);
1311WINSETUPAPI BOOL WINAPI SetupSetFileQueueAlternatePlatformA(HSPFILEQ,PSP_ALTPLATFORM_INFO,PCSTR);
1312WINSETUPAPI BOOL WINAPI SetupSetFileQueueAlternatePlatformW(HSPFILEQ,PSP_ALTPLATFORM_INFO,PCWSTR);
1313WINSETUPAPI BOOL WINAPI SetupSetPlatformPathOverrideA(PCSTR);
1314WINSETUPAPI BOOL WINAPI SetupSetPlatformPathOverrideW(PCWSTR);
1315WINSETUPAPI BOOL WINAPI SetupSetSourceListA(DWORD,PCSTR*,UINT);
1316WINSETUPAPI BOOL WINAPI SetupSetSourceListW(DWORD,PCWSTR*,UINT);
1317WINSETUPAPI VOID WINAPI SetupTermDefaultQueueCallback(PVOID);
1318WINSETUPAPI BOOL WINAPI SetupTerminateFileLog(HSPFILELOG);
1319
1320/* for backward compatability */
1321#define SetupDiCreateInterfaceDeviceW SetupDiCreateDeviceInterfaceW
1322#define SetupDiCreateInterfaceDeviceRegKeyW SetupDiCreateDeviceInterfaceRegKeyW
1323#define SetupDiOpenInterfaceDeviceW SetupDiOpenDeviceInterfaceW
1324#define SetupDiGetInterfaceDeviceDetailW SetupDiGetDeviceInterfaceDetailW
1325#define SetupDiCreateInterfaceDeviceA SetupDiCreateDeviceInterfaceA
1326#define SetupDiCreateInterfaceDeviceRegKeyA SetupDiCreateDeviceInterfaceRegKeyA
1327#define SetupDiOpenInterfaceDeviceA SetupDiOpenDeviceInterfaceA
1328#define SetupDiGetInterfaceDeviceDetailA SetupDiGetDeviceInterfaceDetailA
1329
1330#ifdef UNICODE
1331#define PSP_FILE_CALLBACK PSP_FILE_CALLBACK_W
1332#define SetupAddInstallSectionToDiskSpaceList SetupAddInstallSectionToDiskSpaceListW
1333#define SetupAddSectionToDiskSpaceList SetupAddSectionToDiskSpaceListW
1334#define SetupAddToDiskSpaceList SetupAddToDiskSpaceListW
1335#define SetupAddToSourceList SetupAddToSourceListW
1336#define SetupAdjustDiskSpaceList SetupAdjustDiskSpaceListW
1337#define SetupBackupError SetupBackupErrorW
1338#define SetupCommitFileQueue SetupCommitFileQueueW
1339#define SetupCopyError SetupCopyErrorW
1340#define SetupCopyOEMInf SetupCopyOEMInfW
1341#define SetupCreateDiskSpaceList SetupCreateDiskSpaceListW
1342#define SetupDecompressOrCopyFile SetupDecompressOrCopyFileW
1343#define SetupDefaultQueueCallback SetupDefaultQueueCallbackW
1344#define SetupDeleteError SetupDeleteErrorW
1345#define SetupDiBuildClassInfoListEx SetupDiBuildClassInfoListExW
1346#define SetupDiClassGuidsFromNameEx SetupDiClassGuidsFromNameExW
1347#define SetupDiClassGuidsFromName SetupDiClassGuidsFromNameW
1348#define SetupDiClassNameFromGuidEx SetupDiClassNameFromGuidExW
1349#define SetupDiClassNameFromGuid SetupDiClassNameFromGuidW
1350#define SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInfoListExW
1351#define SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoW
1352#define SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDeviceInterfaceRegKeyW
1353#define SetupDiCreateInterfaceDeviceRegKey SetupDiCreateDeviceInterfaceRegKeyW
1354#define SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceW
1355#define SetupDiCreateInterfaceDevice SetupDiCreateDeviceInterfaceW
1356#define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyW
1357#define SetupDiEnumDriverInfo SetupDiEnumDriverInfoW
1358#define SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallW
1359#define SetupDiGetClassDescriptionEx SetupDiGetClassDescriptionExW
1360#define SetupDiGetClassDescription SetupDiGetClassDescriptionW
1361#define SetupDiGetClassDevPropertySheets SetupDiGetClassDevPropertySheetsW
1362#define SetupDiGetClassDevsEx SetupDiGetClassDevsExW
1363#define SetupDiGetClassDevs SetupDiGetClassDevsW
1364#define SetupDiGetClassImageListEx SetupDiGetClassImageListExW
1365#define SetupDiGetClassInstallParams SetupDiGetClassInstallParamsW
1366#define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyW
1367#define SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInfoListDetailW
1368#define SetupDiGetDeviceInstallParams SetupDiGetDeviceInstallParamsW
1369#define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdW
1370#define SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfaceDetailW
1371#define SetupDiGetInterfaceDeviceDetail SetupDiGetDeviceInterfaceDetailW
1372#define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyW
1373#define SetupDiGetDriverInfoDetail SetupDiGetDriverInfoDetailW
1374#define SetupDiGetDriverInstallParams SetupDiGetDriverInstallParamsW
1375#define SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileFriendlyNameExW
1376#define SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameW
1377#define SetupDiGetHwProfileListEx SetupDiGetHwProfileListExW
1378#define SetupDiGetINFClass SetupDiGetINFClassW
1379#define SetupDiGetSelectedDriver SetupDiGetSelectedDriverW
1380#define SetupDiInstallClassEx SetupDiInstallClassExW
1381#define SetupDiInstallClass SetupDiInstallClassW
1382#define SetupDiOpenClassRegKeyEx SetupDiOpenClassRegKeyExW
1383#define SetupDiOpenDeviceInfo SetupDiOpenDeviceInfoW
1384#define SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceW
1385#define SetupDiOpenInterfaceDevice SetupDiOpenDeviceInterfaceW
1386#define SetupDiSetClassInstallParams SetupDiSetClassInstallParamsW
1387#define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyW
1388#define SetupDiSetDeviceInstallParams SetupDiSetDeviceInstallParamsW
1389#define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyW
1390#define SetupDiSetDriverInstallParams SetupDiSetDriverInstallParamsW
1391#define SetupDiSetSelectedDriver SetupDiSetSelectedDriverW
1392#define SetupDuplicateDiskSpaceList SetupDuplicateDiskSpaceListW
1393#define SetupFindFirstLine SetupFindFirstLineW
1394#define SetupFindNextMatchLine SetupFindNextMatchLineW
1395#define SetupFreeSourceList SetupFreeSourceListW
1396#define SetupGetBackupInformation SetupGetBackupInformationW
1397#define SetupGetFileCompressionInfo SetupGetFileCompressionInfoW
1398#define SetupGetInfFileList SetupGetInfFileListW
1399#define SetupGetInfInformation SetupGetInfInformationW
1400#define SetupGetLineByIndex SetupGetLineByIndexW
1401#define SetupGetLineCount SetupGetLineCountW
1402#define SetupGetLineText SetupGetLineTextW
1403#define SetupGetMultiSzField SetupGetMultiSzFieldW
1404#define SetupGetSourceFileLocation SetupGetSourceFileLocationW
1405#define SetupGetSourceFileSize SetupGetSourceFileSizeW
1406#define SetupGetSourceInfo SetupGetSourceInfoW
1407#define SetupGetStringField SetupGetStringFieldW
1408#define SetupGetTargetPath SetupGetTargetPathW
1409#define SetupInitializeFileLog SetupInitializeFileLogW
1410#define SetupInstallFileEx SetupInstallFileExW
1411#define SetupInstallFilesFromInfSection SetupInstallFilesFromInfSectionW
1412#define SetupInstallFile SetupInstallFileW
1413#define SetupInstallFromInfSection SetupInstallFromInfSectionW
1414#define SetupInstallServicesFromInfSectionEx SetupInstallServicesFromInfSectionExW
1415#define SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionW
1416#define SetupIterateCabinet SetupIterateCabinetW
1417#define SetupLogError SetupLogErrorW
1418#define SetupLogFile SetupLogFileW
1419#define SetupOpenAppendInfFile SetupOpenAppendInfFileW
1420#define SetupOpenInfFile SetupOpenInfFileW
1421#define SetupPromptForDisk SetupPromptForDiskW
1422#define SetupQueryDrivesInDiskSpaceList SetupQueryDrivesInDiskSpaceListW
1423#define SetupQueryFileLog SetupQueryFileLogW
1424#define SetupQueryInfFileInformation SetupQueryInfFileInformationW
1425#define SetupQueryInfOriginalFileInformation SetupQueryInfOriginalFileInformationW
1426#define SetupQueryInfVersionInformation SetupQueryInfVersionInformationW
1427#define SetupQuerySourceList SetupQuerySourceListW
1428#define SetupQuerySpaceRequiredOnDrive SetupQuerySpaceRequiredOnDriveW
1429#define SetupQueueCopyIndirect SetupQueueCopyIndirectW
1430#define SetupQueueCopySection SetupQueueCopySectionW
1431#define SetupQueueCopy SetupQueueCopyW
1432#define SetupQueueDefaultCopy SetupQueueDefaultCopyW
1433#define SetupQueueDeleteSection SetupQueueDeleteSectionW
1434#define SetupQueueDelete SetupQueueDeleteW
1435#define SetupQueueRenameSection SetupQueueRenameSectionW
1436#define SetupQueueRename SetupQueueRenameW
1437#define SetupRemoveFileLogEntry SetupRemoveFileLogEntryW
1438#define SetupRemoveFromDiskSpaceList SetupRemoveFromDiskSpaceListW
1439#define SetupRemoveFromSourceList SetupRemoveFromSourceListW
1440#define SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveInstallSectionFromDiskSpaceListW
1441#define SetupRemoveSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceListW
1442#define SetupRenameError SetupRenameErrorW
1443#define SetupScanFileQueue SetupScanFileQueueW
1444#define SetupSetDirectoryIdEx SetupSetDirectoryIdExW
1445#define SetupSetDirectoryId SetupSetDirectoryIdW
1446#define SetupSetFileQueueAlternatePlatform SetupSetFileQueueAlternatePlatformW
1447#define SetupSetPlatformPathOverride SetupSetPlatformPathOverrideW
1448#define SetupSetSourceList SetupSetSourceListW
1449#else
1450#define PSP_FILE_CALLBACK PSP_FILE_CALLBACK_A
1451#define SetupAddInstallSectionToDiskSpaceList SetupAddInstallSectionToDiskSpaceListA
1452#define SetupAddSectionToDiskSpaceList SetupAddSectionToDiskSpaceListA
1453#define SetupAddToDiskSpaceList SetupAddToDiskSpaceListA
1454#define SetupAddToSourceList SetupAddToSourceListA
1455#define SetupAdjustDiskSpaceList SetupAdjustDiskSpaceListA
1456#define SetupBackupError SetupBackupErrorA
1457#define SetupCommitFileQueue SetupCommitFileQueueA
1458#define SetupCopyError SetupCopyErrorA
1459#define SetupCopyOEMInf SetupCopyOEMInfA
1460#define SetupCreateDiskSpaceList SetupCreateDiskSpaceListA
1461#define SetupDecompressOrCopyFile SetupDecompressOrCopyFileA
1462#define SetupDefaultQueueCallback SetupDefaultQueueCallbackA
1463#define SetupDeleteError SetupDeleteErrorA
1464#define SetupDiBuildClassInfoListEx SetupDiBuildClassInfoListExA
1465#define SetupDiClassGuidsFromName SetupDiClassGuidsFromNameA
1466#define SetupDiClassGuidsFromNameEx SetupDiClassGuidsFromNameExA
1467#define SetupDiClassNameFromGuid SetupDiClassNameFromGuidA
1468#define SetupDiClassNameFromGuidEx SetupDiClassNameFromGuidExA
1469#define SetupDiCreateDeviceInfo SetupDiCreateDeviceInfoA
1470#define SetupDiCreateDeviceInfoListEx SetupDiCreateDeviceInfoListExA
1471#define SetupDiCreateDeviceInterface SetupDiCreateDeviceInterfaceA
1472#define SetupDiCreateInterfaceDevice SetupDiCreateDeviceInterfaceA
1473#define SetupDiCreateDeviceInterfaceRegKey SetupDiCreateDeviceInterfaceRegKeyA
1474#define SetupDiCreateInterfaceDeviceRegKey SetupDiCreateDeviceInterfaceRegKeyA
1475#define SetupDiCreateDevRegKey SetupDiCreateDevRegKeyA
1476#define SetupDiDeleteInterfaceDeviceData SetupDiDeleteDeviceInterfaceData
1477#define SetupDiEnumDriverInfo SetupDiEnumDriverInfoA
1478#define SetupDiGetActualSectionToInstall SetupDiGetActualSectionToInstallA
1479#define SetupDiGetClassDescription SetupDiGetClassDescriptionA
1480#define SetupDiGetClassDescriptionEx SetupDiGetClassDescriptionExA
1481#define SetupDiGetClassDevPropertySheets SetupDiGetClassDevPropertySheetsA
1482#define SetupDiGetClassDevs SetupDiGetClassDevsA
1483#define SetupDiGetClassDevsEx SetupDiGetClassDevsExA
1484#define SetupDiGetClassImageListEx SetupDiGetClassImageListExA
1485#define SetupDiGetClassInstallParams SetupDiGetClassInstallParamsA
1486#define SetupDiGetClassRegistryProperty SetupDiGetClassRegistryPropertyA
1487#define SetupDiGetDeviceInfoListDetail SetupDiGetDeviceInfoListDetailA
1488#define SetupDiGetDeviceInstallParams SetupDiGetDeviceInstallParamsA
1489#define SetupDiGetDeviceInstanceId SetupDiGetDeviceInstanceIdA
1490#define SetupDiGetDeviceInterfaceDetail SetupDiGetDeviceInterfaceDetailA
1491#define SetupDiGetInterfaceDeviceDetail SetupDiGetDeviceInterfaceDetailA
1492#define SetupDiGetDeviceRegistryProperty SetupDiGetDeviceRegistryPropertyA
1493#define SetupDiGetDriverInfoDetail SetupDiGetDriverInfoDetailA
1494#define SetupDiGetDriverInstallParams SetupDiGetDriverInstallParamsA
1495#define SetupDiGetHwProfileFriendlyName SetupDiGetHwProfileFriendlyNameA
1496#define SetupDiGetHwProfileFriendlyNameEx SetupDiGetHwProfileFriendlyNameExA
1497#define SetupDiGetHwProfileListEx SetupDiGetHwProfileListExA
1498#define SetupDiGetINFClass SetupDiGetINFClassA
1499#define SetupDiGetSelectedDriver SetupDiGetSelectedDriverA
1500#define SetupDiInstallClass SetupDiInstallClassA
1501#define SetupDiInstallClassEx SetupDiInstallClassExA
1502#define SetupDiOpenClassRegKeyEx SetupDiOpenClassRegKeyExA
1503#define SetupDiOpenDeviceInfo SetupDiOpenDeviceInfoA
1504#define SetupDiOpenDeviceInterface SetupDiOpenDeviceInterfaceA
1505#define SetupDiOpenInterfaceDevice SetupDiOpenDeviceInterfaceA
1506#define SetupDiSetClassInstallParams SetupDiSetClassInstallParamsA
1507#define SetupDiSetClassRegistryProperty SetupDiSetClassRegistryPropertyA
1508#define SetupDiSetDeviceInstallParams SetupDiSetDeviceInstallParamsA
1509#define SetupDiSetDeviceRegistryProperty SetupDiSetDeviceRegistryPropertyA
1510#define SetupDiSetDriverInstallParams SetupDiSetDriverInstallParamsA
1511#define SetupDiSetSelectedDriver SetupDiSetSelectedDriverA
1512#define SetupDuplicateDiskSpaceList SetupDuplicateDiskSpaceListA
1513#define SetupFindFirstLine SetupFindFirstLineA
1514#define SetupFindNextMatchLine SetupFindNextMatchLineA
1515#define SetupFreeSourceList SetupFreeSourceListA
1516#define SetupGetBackupInformation SetupGetBackupInformationA
1517#define SetupGetFileCompressionInfo SetupGetFileCompressionInfoA
1518#define SetupGetInfFileList SetupGetInfFileListA
1519#define SetupGetInfInformation SetupGetInfInformationA
1520#define SetupGetLineByIndex SetupGetLineByIndexA
1521#define SetupGetLineCount SetupGetLineCountA
1522#define SetupGetLineText SetupGetLineTextA
1523#define SetupGetMultiSzField SetupGetMultiSzFieldA
1524#define SetupGetSourceFileLocation SetupGetSourceFileLocationA
1525#define SetupGetSourceFileSize SetupGetSourceFileSizeA
1526#define SetupGetSourceInfo SetupGetSourceInfoA
1527#define SetupGetStringField SetupGetStringFieldA
1528#define SetupGetTargetPath SetupGetTargetPathA
1529#define SetupInitializeFileLog SetupInitializeFileLogA
1530#define SetupInstallFile SetupInstallFileA
1531#define SetupInstallFileEx SetupInstallFileExA
1532#define SetupInstallFilesFromInfSection SetupInstallFilesFromInfSectionA
1533#define SetupInstallFromInfSection SetupInstallFromInfSectionA
1534#define SetupInstallServicesFromInfSection SetupInstallServicesFromInfSectionA
1535#define SetupInstallServicesFromInfSectionEx SetupInstallServicesFromInfSectionExA
1536#define SetupIterateCabinet SetupIterateCabinetA
1537#define SetupLogError SetupLogErrorA
1538#define SetupLogFile SetupLogFileA
1539#define SetupOpenAppendInfFile SetupOpenAppendInfFileA
1540#define SetupOpenInfFile SetupOpenInfFileA
1541#define SetupPromptForDisk SetupPromptForDiskA
1542#define SetupQueryDrivesInDiskSpaceList SetupQueryDrivesInDiskSpaceListA
1543#define SetupQueryFileLog SetupQueryFileLogA
1544#define SetupQueryInfFileInformation SetupQueryInfFileInformationA
1545#define SetupQueryInfOriginalFileInformation SetupQueryInfOriginalFileInformationA
1546#define SetupQueryInfVersionInformation SetupQueryInfVersionInformationA
1547#define SetupQuerySourceList SetupQuerySourceListA
1548#define SetupQuerySpaceRequiredOnDrive SetupQuerySpaceRequiredOnDriveA
1549#define SetupQueueCopy SetupQueueCopyA
1550#define SetupQueueCopyIndirect SetupQueueCopyIndirectA
1551#define SetupQueueCopySection SetupQueueCopySectionA
1552#define SetupQueueDefaultCopy SetupQueueDefaultCopyA
1553#define SetupQueueDelete SetupQueueDeleteA
1554#define SetupQueueDeleteSection SetupQueueDeleteSectionA
1555#define SetupQueueRename SetupQueueRenameA
1556#define SetupQueueRenameSection SetupQueueRenameSectionA
1557#define SetupRemoveFileLogEntry SetupRemoveFileLogEntryA
1558#define SetupRemoveFromDiskSpaceList SetupRemoveFromDiskSpaceListA
1559#define SetupRemoveFromSourceList SetupRemoveFromSourceListA
1560#define SetupRemoveInstallSectionFromDiskSpaceList SetupRemoveInstallSectionFromDiskSpaceListA
1561#define SetupRemoveSectionFromDiskSpaceList SetupRemoveSectionFromDiskSpaceListA
1562#define SetupRenameError SetupRenameErrorA
1563#define SetupScanFileQueue SetupScanFileQueueA
1564#define SetupSetDirectoryId SetupSetDirectoryIdA
1565#define SetupSetDirectoryIdEx SetupSetDirectoryIdExA
1566#define SetupSetFileQueueAlternatePlatform SetupSetFileQueueAlternatePlatformA
1567#define SetupSetPlatformPathOverride SetupSetPlatformPathOverrideA
1568#define SetupSetSourceList SetupSetSourceListA
1569#endif /* UNICODE */
1570
1571#endif /* RC_INVOKED */
1572
1573#ifdef __cplusplus
1574}
1575#endif
1576
1577#include <poppack.h>
1578#endif /* _SETUPAPI_H_ */
1579
Note: See TracBrowser for help on using the repository browser.