Artifact cd6d5cae7d4d0ede3ffd2e04529025090cb4df6f:
- File
src/win32/setupapi.d
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
The problem was __gshared. Replacing it with TLS fixed the issue. Remaining problem is that "hack.d"'s CloseHandle hack is not working anymore.
(user: kinaba) [annotate]
-
2015-05-05 06:49:05
- part of checkin
[9b639cf2d6]
on branch trunk
- Working version for update to 2.067.
0000: 2f 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a /***************
0010: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0020: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0030: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
0040: 2a 2a 2a 2a 2a 2a 2a 2a 5c 0d 0a 2a 20 20 20 20 ********\..*
0050: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0060: 20 20 20 20 20 20 20 20 20 20 20 73 65 74 75 70 setup
0070: 61 70 69 2e 64 20 20 20 20 20 20 20 20 20 20 20 api.d
0080: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0090: 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 20 *..*
00a0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
00d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a 0d *.
00e0: 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 .*
00f0: 20 20 20 20 20 20 20 20 20 57 69 6e 64 6f 77 73 Windows
0100: 20 41 50 49 20 68 65 61 64 65 72 20 6d 6f 64 75 API header modu
0110: 6c 65 20 20 20 20 20 20 20 20 20 20 20 20 20 20 le
0120: 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 20 *..*
0130: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0140: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0150: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0160: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0170: 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 20 *..*
0180: 20 20 20 20 20 20 20 20 20 54 72 61 6e 73 6c 61 Transla
0190: 74 65 64 20 66 72 6f 6d 20 4d 69 6e 47 57 20 57 ted from MinGW W
01a0: 69 6e 64 6f 77 73 20 68 65 61 64 65 72 73 20 20 indows headers
01b0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 2a *
01c0: 0d 0a 2a 20 20 20 20 20 20 20 20 20 20 20 20 20 ..*
01d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 62 79 by
01e0: 20 56 6c 61 64 69 6d 69 72 20 56 6c 61 73 6f 76 Vladimir Vlasov
01f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0200: 20 20 20 20 20 20 20 20 20 20 2a 0d 0a 2a 20 20 *..*
0210: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0220: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0230: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0240: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0250: 20 20 20 20 20 2a 0d 0a 2a 20 20 20 20 20 20 20 *..*
0260: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0270: 50 6c 61 63 65 64 20 69 6e 74 6f 20 70 75 62 6c Placed into publ
0280: 69 63 20 64 6f 6d 61 69 6e 20 20 20 20 20 20 20 ic domain
0290: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
02a0: 2a 0d 0a 5c 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a *..\************
02b0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02c0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02d0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a ****************
02e0: 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2a 2f 0d 0a 6d 6f ***********/..mo
02f0: 64 75 6c 65 20 77 69 6e 33 32 2e 73 65 74 75 70 dule win32.setup
0300: 61 70 69 3b 0d 0a 70 72 61 67 6d 61 28 6c 69 62 api;..pragma(lib
0310: 2c 20 22 73 65 74 75 70 61 70 69 22 29 3b 0d 0a , "setupapi");..
0320: 0d 0a 70 72 69 76 61 74 65 20 69 6d 70 6f 72 74 ..private import
0330: 20 77 69 6e 33 32 2e 62 61 73 65 74 79 70 73 2c win32.basetyps,
0340: 20 77 69 6e 33 32 2e 63 6f 6d 6d 63 74 72 6c 2c win32.commctrl,
0350: 20 77 69 6e 33 32 2e 70 72 73 68 74 2c 20 77 69 win32.prsht, wi
0360: 6e 33 32 2e 77 33 32 61 70 69 2c 0d 0a 20 20 77 n32.w32api,.. w
0370: 69 6e 33 32 2e 77 69 6e 72 65 67 2c 20 77 69 6e in32.winreg, win
0380: 33 32 2e 77 69 6e 64 65 66 3b 0d 0a 70 72 69 76 32.windef;..priv
0390: 61 74 65 20 69 6d 70 6f 72 74 20 77 69 6e 33 32 ate import win32
03a0: 2e 77 69 6e 62 61 73 65 3b 20 2f 2f 20 66 6f 72 .winbase; // for
03b0: 20 53 59 53 54 45 4d 54 49 4d 45 0d 0a 0d 0a 2f SYSTEMTIME..../
03c0: 2a 73 74 61 74 69 63 20 69 66 28 5f 57 49 4e 33 *static if(_WIN3
03d0: 32 5f 57 49 4e 4e 54 20 3c 20 5f 57 49 4e 33 32 2_WINNT < _WIN32
03e0: 5f 57 49 4e 44 4f 57 53 29 20 7b 0d 0a 09 63 6f _WINDOWS) {...co
03f0: 6e 73 74 20 55 49 4e 54 20 5f 53 45 54 55 50 41 nst UINT _SETUPA
0400: 50 49 5f 56 45 52 20 3d 20 5f 57 49 4e 33 32 5f PI_VER = _WIN32_
0410: 57 49 4e 4e 54 3b 20 2f 2f 20 53 65 74 75 70 41 WINNT; // SetupA
0420: 50 49 20 76 65 72 73 69 6f 6e 20 66 6f 6c 6c 6f PI version follo
0430: 77 73 20 57 69 6e 64 6f 77 73 20 4e 54 20 76 65 ws Windows NT ve
0440: 72 73 69 6f 6e 0d 0a 7d 20 65 6c 73 65 20 73 74 rsion..} else st
0450: 61 74 69 63 20 69 66 28 5f 57 49 4e 33 32 5f 57 atic if(_WIN32_W
0460: 49 4e 44 4f 57 53 29 20 7b 0d 0a 09 73 74 61 74 INDOWS) {...stat
0470: 69 63 20 69 66 28 5f 57 49 4e 33 32 5f 57 49 4e ic if(_WIN32_WIN
0480: 44 4f 57 53 20 3e 3d 20 30 78 30 34 39 30 29 20 DOWS >= 0x0490)
0490: 7b 0d 0a 09 09 63 6f 6e 73 74 20 55 49 4e 54 20 {....const UINT
04a0: 5f 53 45 54 55 50 41 50 49 5f 56 45 52 20 3d 20 _SETUPAPI_VER =
04b0: 30 78 30 35 30 30 3b 20 20 20 20 20 2f 2f 20 57 0x0500; // W
04c0: 69 6e 4d 45 20 75 73 65 73 20 73 61 6d 65 20 76 inME uses same v
04d0: 65 72 73 69 6f 6e 20 6f 66 20 53 65 74 75 70 41 ersion of SetupA
04e0: 50 49 20 61 73 20 57 69 6e 32 6b 0d 0a 09 7d 20 PI as Win2k...}
04f0: 65 6c 73 65 20 73 74 61 74 69 63 20 69 66 28 5f else static if(_
0500: 57 49 4e 33 32 5f 57 49 4e 44 4f 57 53 20 3e 3d WIN32_WINDOWS >=
0510: 20 30 78 30 34 31 30 29 20 7b 0d 0a 09 09 63 6f 0x0410) {....co
0520: 6e 73 74 20 55 49 4e 54 20 5f 53 45 54 55 50 41 nst UINT _SETUPA
0530: 50 49 5f 56 45 52 20 3d 20 30 78 30 34 31 30 3b PI_VER = 0x0410;
0540: 20 20 20 20 20 2f 2f 20 49 6e 64 69 63 61 74 65 // Indicate
0550: 73 20 76 65 72 73 69 6f 6e 20 6f 66 20 53 65 74 s version of Set
0560: 75 70 41 50 49 20 73 68 69 70 70 65 64 20 77 69 upAPI shipped wi
0570: 74 68 20 57 69 6e 39 38 0d 0a 09 7d 20 65 6c 73 th Win98...} els
0580: 65 20 7b 0d 0a 09 09 63 6f 6e 73 74 20 55 49 4e e {....const UIN
0590: 54 20 5f 53 45 54 55 50 41 50 49 5f 56 45 52 20 T _SETUPAPI_VER
05a0: 3d 20 30 78 30 34 30 30 3b 20 20 20 20 20 2f 2f = 0x0400; //
05b0: 20 45 61 72 6c 69 65 73 74 20 53 65 74 75 70 41 Earliest SetupA
05c0: 50 49 20 76 65 72 73 69 6f 6e 0d 0a 09 7d 0d 0a PI version...}..
05d0: 7d 20 65 6c 73 65 20 7b 0d 0a 09 63 6f 6e 73 74 } else {...const
05e0: 20 55 49 4e 54 20 5f 53 45 54 55 50 41 50 49 5f UINT _SETUPAPI_
05f0: 56 45 52 20 3d 20 30 78 30 35 30 31 3b 0d 0a 7d VER = 0x0501;..}
0600: 0d 0a 0d 0a 76 65 72 73 69 6f 6e 20 28 57 69 6e ....version (Win
0610: 64 6f 77 73 4e 54 6f 6e 6c 79 29 20 7b 0d 0a 09 dowsNTonly) {...
0620: 73 74 61 74 69 63 20 69 66 20 28 5f 57 49 4e 33 static if (_WIN3
0630: 32 5f 57 49 4e 4e 54 20 3e 3d 20 30 78 35 30 30 2_WINNT >= 0x500
0640: 29 20 7b 0d 0a 09 09 63 6f 6e 73 74 20 55 49 4e ) {....const UIN
0650: 54 20 55 53 45 5f 53 50 5f 44 52 56 49 4e 46 4f T USE_SP_DRVINFO
0660: 5f 44 41 54 41 5f 56 31 20 3d 20 30 3b 0d 0a 09 _DATA_V1 = 0;...
0670: 7d 20 65 6c 73 65 20 7b 0d 0a 09 09 63 6f 6e 73 } else {....cons
0680: 74 20 55 49 4e 54 20 55 53 45 5f 53 50 5f 44 52 t UINT USE_SP_DR
0690: 56 49 4e 46 4f 5f 44 41 54 41 5f 56 31 20 3d 20 VINFO_DATA_V1 =
06a0: 31 3b 0d 0a 09 7d 0d 0a 7d 20 65 6c 73 65 20 7b 1;...}..} else {
06b0: 0d 0a 09 63 6f 6e 73 74 20 55 49 4e 54 20 55 53 ...const UINT US
06c0: 45 5f 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 E_SP_DRVINFO_DAT
06d0: 41 5f 56 31 20 3d 20 31 3b 0d 0a 7d 2a 2f 0d 0a A_V1 = 1;..}*/..
06e0: 2f 2b 0d 0a 63 6f 6e 73 74 20 55 49 4e 54 20 5f /+..const UINT _
06f0: 53 45 54 55 50 41 50 49 5f 56 45 52 20 3d 20 30 SETUPAPI_VER = 0
0700: 78 30 34 30 30 3b 20 20 20 20 20 2f 2f 20 45 61 x0400; // Ea
0710: 72 6c 69 65 73 74 20 53 65 74 75 70 41 50 49 20 rliest SetupAPI
0720: 76 65 72 73 69 6f 6e 0d 0a 63 6f 6e 73 74 20 55 version..const U
0730: 49 4e 54 20 55 53 45 5f 53 50 5f 44 52 56 49 4e INT USE_SP_DRVIN
0740: 46 4f 5f 44 41 54 41 5f 56 31 20 3d 20 31 3b 0d FO_DATA_V1 = 1;.
0750: 0a 2b 2f 0d 0a 63 6f 6e 73 74 20 55 49 4e 54 20 .+/..const UINT
0760: 5f 53 45 54 55 50 41 50 49 5f 56 45 52 20 20 20 _SETUPAPI_VER
0770: 20 20 20 20 20 20 20 3d 20 5f 57 49 4e 33 32 5f = _WIN32_
0780: 57 49 4e 4e 54 3b 0d 0a 63 6f 6e 73 74 20 62 6f WINNT;..const bo
0790: 6f 6c 20 55 53 45 5f 53 50 5f 44 52 56 49 4e 46 ol USE_SP_DRVINF
07a0: 4f 5f 44 41 54 41 5f 56 31 20 3d 20 5f 57 49 4e O_DATA_V1 = _WIN
07b0: 33 32 5f 57 49 4e 4e 54 20 3c 20 30 78 35 30 30 32_WINNT < 0x500
07c0: 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 75 69 6e 74 ;....enum : uint
07d0: 20 7b 0d 0a 09 4c 49 4e 45 5f 4c 45 4e 20 20 20 {...LINE_LEN
07e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d =
07f0: 20 32 35 36 2c 0d 0a 09 4d 41 58 5f 49 4e 46 5f 256,...MAX_INF_
0800: 53 54 52 49 4e 47 5f 4c 45 4e 47 54 48 20 20 20 STRING_LENGTH
0810: 20 20 3d 20 34 30 39 36 2c 0d 0a 09 4d 41 58 5f = 4096,...MAX_
0820: 54 49 54 4c 45 5f 4c 45 4e 20 20 20 20 20 20 20 TITLE_LEN
0830: 20 20 20 20 20 20 3d 20 36 30 2c 0d 0a 09 4d 41 = 60,...MA
0840: 58 5f 49 4e 53 54 52 55 43 54 49 4f 4e 5f 4c 45 X_INSTRUCTION_LE
0850: 4e 20 20 20 20 20 20 20 3d 20 32 35 36 2c 0d 0a N = 256,..
0860: 09 4d 41 58 5f 4c 41 42 45 4c 5f 4c 45 4e 20 20 .MAX_LABEL_LEN
0870: 20 20 20 20 20 20 20 20 20 20 20 3d 20 33 30 2c = 30,
0880: 0d 0a 09 4d 41 58 5f 53 45 52 56 49 43 45 5f 4e ...MAX_SERVICE_N
0890: 41 4d 45 5f 4c 45 4e 20 20 20 20 20 20 3d 20 32 AME_LEN = 2
08a0: 35 36 2c 0d 0a 09 4d 41 58 5f 53 55 42 54 49 54 56,...MAX_SUBTIT
08b0: 4c 45 5f 4c 45 4e 20 20 20 20 20 20 20 20 20 20 LE_LEN
08c0: 3d 20 32 35 36 2c 0d 0a 09 53 50 5f 4d 41 58 5f = 256,...SP_MAX_
08d0: 4d 41 43 48 49 4e 45 4e 41 4d 45 5f 4c 45 4e 47 MACHINENAME_LENG
08e0: 54 48 20 3d 20 4d 41 58 5f 50 41 54 48 20 2b 20 TH = MAX_PATH +
08f0: 33 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 3..}....enum : D
0900: 57 4f 52 44 20 7b 0d 0a 09 43 4f 50 59 46 4c 47 WORD {...COPYFLG
0910: 5f 57 41 52 4e 5f 49 46 5f 53 4b 49 50 20 20 20 _WARN_IF_SKIP
0920: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
0930: 30 31 2c 0d 0a 09 43 4f 50 59 46 4c 47 5f 4e 4f 01,...COPYFLG_NO
0940: 53 4b 49 50 20 20 20 20 20 20 20 20 20 20 20 20 SKIP
0950: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c = 0x00000002,
0960: 0d 0a 09 43 4f 50 59 46 4c 47 5f 4e 4f 56 45 52 ...COPYFLG_NOVER
0970: 53 49 4f 4e 43 48 45 43 4b 20 20 20 20 20 20 20 SIONCHECK
0980: 3d 20 30 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 = 0x00000004,...
0990: 43 4f 50 59 46 4c 47 5f 46 4f 52 43 45 5f 46 49 COPYFLG_FORCE_FI
09a0: 4c 45 5f 49 4e 5f 55 53 45 20 20 20 20 3d 20 30 LE_IN_USE = 0
09b0: 78 30 30 30 30 30 30 30 38 2c 0d 0a 09 43 4f 50 x00000008,...COP
09c0: 59 46 4c 47 5f 4e 4f 5f 4f 56 45 52 57 52 49 54 YFLG_NO_OVERWRIT
09d0: 45 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 E = 0x00
09e0: 30 30 30 30 31 30 2c 0d 0a 09 43 4f 50 59 46 4c 000010,...COPYFL
09f0: 47 5f 4e 4f 5f 56 45 52 53 49 4f 4e 5f 44 49 41 G_NO_VERSION_DIA
0a00: 4c 4f 47 20 20 20 20 3d 20 30 78 30 30 30 30 30 LOG = 0x00000
0a10: 30 32 30 2c 0d 0a 09 43 4f 50 59 46 4c 47 5f 4f 020,...COPYFLG_O
0a20: 56 45 52 57 52 49 54 45 5f 4f 4c 44 45 52 5f 4f VERWRITE_OLDER_O
0a30: 4e 4c 59 20 3d 20 30 78 30 30 30 30 30 30 34 30 NLY = 0x00000040
0a40: 2c 0d 0a 09 43 4f 50 59 46 4c 47 5f 52 45 50 4c ,...COPYFLG_REPL
0a50: 41 43 45 4f 4e 4c 59 20 20 20 20 20 20 20 20 20 ACEONLY
0a60: 20 3d 20 30 78 30 30 30 30 30 34 30 30 2c 0d 0a = 0x00000400,..
0a70: 09 43 4f 50 59 46 4c 47 5f 4e 4f 44 45 43 4f 4d .COPYFLG_NODECOM
0a80: 50 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 P =
0a90: 30 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 43 4f 0x00000800,...CO
0aa0: 50 59 46 4c 47 5f 52 45 50 4c 41 43 45 5f 42 4f PYFLG_REPLACE_BO
0ab0: 4f 54 5f 46 49 4c 45 20 20 20 20 3d 20 30 78 30 OT_FILE = 0x0
0ac0: 30 30 30 31 30 30 30 2c 0d 0a 09 43 4f 50 59 46 0001000,...COPYF
0ad0: 4c 47 5f 4e 4f 50 52 55 4e 45 20 20 20 20 20 20 LG_NOPRUNE
0ae0: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
0af0: 32 30 30 30 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 2000..}....enum
0b00: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 45 4c 46 : DWORD {...DELF
0b10: 4c 47 5f 49 4e 5f 55 53 45 20 20 3d 20 30 78 30 LG_IN_USE = 0x0
0b20: 30 30 30 30 30 30 31 2c 0d 0a 09 44 45 4c 46 4c 0000001,...DELFL
0b30: 47 5f 49 4e 5f 55 53 45 31 20 3d 20 30 78 30 30 G_IN_USE1 = 0x00
0b40: 30 31 30 30 30 30 0d 0a 7d 0d 0a 0d 0a 65 6e 75 010000..}....enu
0b50: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 m : DWORD {...DI
0b60: 5f 52 45 4d 4f 56 45 44 45 56 49 43 45 5f 47 4c _REMOVEDEVICE_GL
0b70: 4f 42 41 4c 20 20 20 20 20 20 20 20 20 20 20 20 OBAL
0b80: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d = 0x00000001,.
0b90: 0a 09 44 49 5f 52 45 4d 4f 56 45 44 45 56 49 43 ..DI_REMOVEDEVIC
0ba0: 45 5f 43 4f 4e 46 49 47 53 50 45 43 49 46 49 43 E_CONFIGSPECIFIC
0bb0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
0bc0: 30 32 2c 0d 0a 09 44 49 5f 55 4e 52 45 4d 4f 56 02,...DI_UNREMOV
0bd0: 45 44 45 56 49 43 45 5f 43 4f 4e 46 49 47 53 50 EDEVICE_CONFIGSP
0be0: 45 43 49 46 49 43 20 20 20 20 3d 20 30 78 30 30 ECIFIC = 0x00
0bf0: 30 30 30 30 30 32 2c 0d 0a 09 44 49 5f 53 48 4f 000002,...DI_SHO
0c00: 57 4f 45 4d 20 20 20 20 20 20 20 20 20 20 20 20 WOEM
0c10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
0c20: 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 49 0x00000001,...DI
0c30: 5f 53 48 4f 57 43 4f 4d 50 41 54 20 20 20 20 20 _SHOWCOMPAT
0c40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0c50: 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c 0d = 0x00000002,.
0c60: 0a 09 44 49 5f 53 48 4f 57 43 4c 41 53 53 20 20 ..DI_SHOWCLASS
0c70: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0c80: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
0c90: 30 34 2c 0d 0a 09 44 49 5f 53 48 4f 57 41 4c 4c 04,...DI_SHOWALL
0ca0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0cb0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
0cc0: 30 30 30 30 30 37 2c 0d 0a 09 44 49 5f 4e 4f 56 000007,...DI_NOV
0cd0: 43 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 CP
0ce0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
0cf0: 30 78 30 30 30 30 30 30 30 38 2c 0d 0a 09 44 49 0x00000008,...DI
0d00: 5f 44 49 44 43 4f 4d 50 41 54 20 20 20 20 20 20 _DIDCOMPAT
0d10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0d20: 20 20 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0d = 0x00000010,.
0d30: 0a 09 44 49 5f 44 49 44 43 4c 41 53 53 20 20 20 ..DI_DIDCLASS
0d40: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0d50: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
0d60: 32 30 2c 0d 0a 09 44 49 5f 41 55 54 4f 41 53 53 20,...DI_AUTOASS
0d70: 49 47 4e 52 45 53 20 20 20 20 20 20 20 20 20 20 IGNRES
0d80: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
0d90: 30 30 30 30 34 30 2c 0d 0a 09 44 49 5f 4e 45 45 000040,...DI_NEE
0da0: 44 52 45 53 54 41 52 54 20 20 20 20 20 20 20 20 DRESTART
0db0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
0dc0: 30 78 30 30 30 30 30 30 38 30 2c 0d 0a 09 44 49 0x00000080,...DI
0dd0: 5f 4e 45 45 44 52 45 42 4f 4f 54 20 20 20 20 20 _NEEDREBOOT
0de0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0df0: 20 20 3d 20 30 78 30 30 30 30 30 31 30 30 2c 0d = 0x00000100,.
0e00: 0a 09 44 49 5f 4e 4f 42 52 4f 57 53 45 20 20 20 ..DI_NOBROWSE
0e10: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0e20: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 32 = 0x000002
0e30: 30 30 2c 0d 0a 09 44 49 5f 4d 55 4c 54 4d 46 47 00,...DI_MULTMFG
0e40: 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 S
0e50: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
0e60: 30 30 30 34 30 30 2c 0d 0a 09 44 49 5f 44 49 53 000400,...DI_DIS
0e70: 41 42 4c 45 44 20 20 20 20 20 20 20 20 20 20 20 ABLED
0e80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
0e90: 30 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 44 49 0x00000800,...DI
0ea0: 5f 47 45 4e 45 52 41 4c 50 41 47 45 5f 41 44 44 _GENERALPAGE_ADD
0eb0: 45 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ED
0ec0: 20 20 3d 20 30 78 30 30 30 30 31 30 30 30 2c 0d = 0x00001000,.
0ed0: 0a 09 44 49 5f 52 45 53 4f 55 52 43 45 50 41 47 ..DI_RESOURCEPAG
0ee0: 45 5f 41 44 44 45 44 20 20 20 20 20 20 20 20 20 E_ADDED
0ef0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 32 30 = 0x000020
0f00: 30 30 2c 0d 0a 09 44 49 5f 50 52 4f 50 45 52 54 00,...DI_PROPERT
0f10: 49 45 53 5f 43 48 41 4e 47 45 20 20 20 20 20 20 IES_CHANGE
0f20: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
0f30: 30 30 34 30 30 30 2c 0d 0a 09 44 49 5f 49 4e 46 004000,...DI_INF
0f40: 5f 49 53 5f 53 4f 52 54 45 44 20 20 20 20 20 20 _IS_SORTED
0f50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
0f60: 30 78 30 30 30 30 38 30 30 30 2c 0d 0a 09 44 49 0x00008000,...DI
0f70: 5f 45 4e 55 4d 53 49 4e 47 4c 45 49 4e 46 20 20 _ENUMSINGLEINF
0f80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
0f90: 20 20 3d 20 30 78 30 30 30 31 30 30 30 30 2c 0d = 0x00010000,.
0fa0: 0a 09 44 49 5f 44 4f 4e 4f 54 43 41 4c 4c 43 4f ..DI_DONOTCALLCO
0fb0: 4e 46 49 47 4d 47 20 20 20 20 20 20 20 20 20 20 NFIGMG
0fc0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 30 30 = 0x000200
0fd0: 30 30 2c 0d 0a 09 44 49 5f 49 4e 53 54 41 4c 4c 00,...DI_INSTALL
0fe0: 44 49 53 41 42 4c 45 44 20 20 20 20 20 20 20 20 DISABLED
0ff0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
1000: 30 34 30 30 30 30 2c 0d 0a 09 44 49 5f 43 4f 4d 040000,...DI_COM
1010: 50 41 54 5f 46 52 4f 4d 5f 43 4c 41 53 53 20 20 PAT_FROM_CLASS
1020: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
1030: 30 78 30 30 30 38 30 30 30 30 2c 0d 0a 09 44 49 0x00080000,...DI
1040: 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c 50 41 52 _CLASSINSTALLPAR
1050: 41 4d 53 20 20 20 20 20 20 20 20 20 20 20 20 20 AMS
1060: 20 20 3d 20 30 78 30 30 31 30 30 30 30 30 2c 0d = 0x00100000,.
1070: 0a 09 44 49 5f 4e 4f 44 49 5f 44 45 46 41 55 4c ..DI_NODI_DEFAUL
1080: 54 41 43 54 49 4f 4e 20 20 20 20 20 20 20 20 20 TACTION
1090: 20 20 20 20 20 20 3d 20 30 78 30 30 32 30 30 30 = 0x002000
10a0: 30 30 2c 0d 0a 09 44 49 5f 51 55 49 45 54 49 4e 00,...DI_QUIETIN
10b0: 53 54 41 4c 4c 20 20 20 20 20 20 20 20 20 20 20 STALL
10c0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
10d0: 38 30 30 30 30 30 2c 0d 0a 09 44 49 5f 4e 4f 46 800000,...DI_NOF
10e0: 49 4c 45 43 4f 50 59 20 20 20 20 20 20 20 20 20 ILECOPY
10f0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
1100: 30 78 30 31 30 30 30 30 30 30 2c 0d 0a 09 44 49 0x01000000,...DI
1110: 5f 46 4f 52 43 45 43 4f 50 59 20 20 20 20 20 20 _FORCECOPY
1120: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
1130: 20 20 3d 20 30 78 30 32 30 30 30 30 30 30 2c 0d = 0x02000000,.
1140: 0a 09 44 49 5f 44 52 49 56 45 52 50 41 47 45 5f ..DI_DRIVERPAGE_
1150: 41 44 44 45 44 20 20 20 20 20 20 20 20 20 20 20 ADDED
1160: 20 20 20 20 20 20 3d 20 30 78 30 34 30 30 30 30 = 0x040000
1170: 30 30 2c 0d 0a 09 44 49 5f 55 53 45 43 49 5f 53 00,...DI_USECI_S
1180: 45 4c 45 43 54 53 54 52 49 4e 47 53 20 20 20 20 ELECTSTRINGS
1190: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 38 = 0x08
11a0: 30 30 30 30 30 30 2c 0d 0a 09 44 49 5f 4f 56 45 000000,...DI_OVE
11b0: 52 52 49 44 45 5f 49 4e 46 46 4c 41 47 53 20 20 RRIDE_INFFLAGS
11c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
11d0: 30 78 31 30 30 30 30 30 30 30 2c 0d 0a 09 44 49 0x10000000,...DI
11e0: 5f 50 52 4f 50 53 5f 4e 4f 43 48 41 4e 47 45 55 _PROPS_NOCHANGEU
11f0: 53 41 47 45 20 20 20 20 20 20 20 20 20 20 20 20 SAGE
1200: 20 20 3d 20 30 78 32 30 30 30 30 30 30 30 2c 0d = 0x20000000,.
1210: 0a 09 44 49 5f 4e 4f 53 45 4c 45 43 54 49 43 4f ..DI_NOSELECTICO
1220: 4e 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 NS
1230: 20 20 20 20 20 20 3d 20 30 78 34 30 30 30 30 30 = 0x400000
1240: 30 30 2c 0d 0a 09 44 49 5f 4e 4f 57 52 49 54 45 00,...DI_NOWRITE
1250: 5f 49 44 53 20 20 20 20 20 20 20 20 20 20 20 20 _IDS
1260: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 38 30 = 0x80
1270: 30 30 30 30 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 000000,...DI_FLA
1280: 47 53 45 58 5f 55 53 45 4f 4c 44 49 4e 46 53 45 GSEX_USEOLDINFSE
1290: 41 52 43 48 20 20 20 20 20 20 20 20 20 20 3d 20 ARCH =
12a0: 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 49 0x00000001,...DI
12b0: 5f 46 4c 41 47 53 45 58 5f 41 55 54 4f 53 45 4c _FLAGSEX_AUTOSEL
12c0: 45 43 54 52 41 4e 4b 30 20 20 20 20 20 20 20 20 ECTRANK0
12d0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c 0d = 0x00000002,.
12e0: 0a 09 44 49 5f 46 4c 41 47 53 45 58 5f 43 49 5f ..DI_FLAGSEX_CI_
12f0: 46 41 49 4c 45 44 20 20 20 20 20 20 20 20 20 20 FAILED
1300: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
1310: 30 34 2c 0d 0a 09 44 49 5f 46 4c 41 47 53 45 58 04,...DI_FLAGSEX
1320: 5f 44 49 44 49 4e 46 4f 4c 49 53 54 20 20 20 20 _DIDINFOLIST
1330: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
1340: 30 30 30 30 31 30 2c 0d 0a 09 44 49 5f 46 4c 41 000010,...DI_FLA
1350: 47 53 45 58 5f 44 49 44 43 4f 4d 50 41 54 49 4e GSEX_DIDCOMPATIN
1360: 46 4f 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 FO =
1370: 30 78 30 30 30 30 30 30 32 30 2c 0d 0a 09 44 49 0x00000020,...DI
1380: 5f 46 4c 41 47 53 45 58 5f 46 49 4c 54 45 52 43 _FLAGSEX_FILTERC
1390: 4c 41 53 53 45 53 20 20 20 20 20 20 20 20 20 20 LASSES
13a0: 20 20 3d 20 30 78 30 30 30 30 30 30 34 30 2c 0d = 0x00000040,.
13b0: 0a 09 44 49 5f 46 4c 41 47 53 45 58 5f 53 45 54 ..DI_FLAGSEX_SET
13c0: 46 41 49 4c 45 44 49 4e 53 54 41 4c 4c 20 20 20 FAILEDINSTALL
13d0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
13e0: 38 30 2c 0d 0a 09 44 49 5f 46 4c 41 47 53 45 58 80,...DI_FLAGSEX
13f0: 5f 44 45 56 49 43 45 43 48 41 4e 47 45 20 20 20 _DEVICECHANGE
1400: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
1410: 30 30 30 31 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 000100,...DI_FLA
1420: 47 53 45 58 5f 41 4c 57 41 59 53 57 52 49 54 45 GSEX_ALWAYSWRITE
1430: 49 44 53 20 20 20 20 20 20 20 20 20 20 20 3d 20 IDS =
1440: 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09 44 49 0x00000200,...DI
1450: 5f 46 4c 41 47 53 45 58 5f 50 52 4f 50 43 48 41 _FLAGSEX_PROPCHA
1460: 4e 47 45 5f 50 45 4e 44 49 4e 47 20 20 20 20 20 NGE_PENDING
1470: 20 20 3d 20 30 78 30 30 30 30 30 34 30 30 2c 0d = 0x00000400,.
1480: 0a 09 44 49 5f 46 4c 41 47 53 45 58 5f 41 4c 4c ..DI_FLAGSEX_ALL
1490: 4f 57 45 58 43 4c 55 44 45 44 44 52 56 53 20 20 OWEXCLUDEDDRVS
14a0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 38 = 0x000008
14b0: 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 47 53 45 58 00,...DI_FLAGSEX
14c0: 5f 4e 4f 55 49 4f 4e 51 55 45 52 59 52 45 4d 4f _NOUIONQUERYREMO
14d0: 56 45 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 VE = 0x00
14e0: 30 30 31 30 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 001000,...DI_FLA
14f0: 47 53 45 58 5f 55 53 45 43 4c 41 53 53 46 4f 52 GSEX_USECLASSFOR
1500: 43 4f 4d 50 41 54 20 20 20 20 20 20 20 20 3d 20 COMPAT =
1510: 30 78 30 30 30 30 32 30 30 30 2c 0d 0a 09 44 49 0x00002000,...DI
1520: 5f 46 4c 41 47 53 45 58 5f 4f 4c 44 49 4e 46 5f _FLAGSEX_OLDINF_
1530: 49 4e 5f 43 4c 41 53 53 4c 49 53 54 20 20 20 20 IN_CLASSLIST
1540: 20 20 3d 20 30 78 30 30 30 30 34 30 30 30 2c 0d = 0x00004000,.
1550: 0a 09 44 49 5f 46 4c 41 47 53 45 58 5f 4e 4f 5f ..DI_FLAGSEX_NO_
1560: 44 52 56 52 45 47 5f 4d 4f 44 49 46 59 20 20 20 DRVREG_MODIFY
1570: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 38 30 = 0x000080
1580: 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 47 53 45 58 00,...DI_FLAGSEX
1590: 5f 49 4e 5f 53 59 53 54 45 4d 5f 53 45 54 55 50 _IN_SYSTEM_SETUP
15a0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
15b0: 30 31 30 30 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 010000,...DI_FLA
15c0: 47 53 45 58 5f 49 4e 45 54 5f 44 52 49 56 45 52 GSEX_INET_DRIVER
15d0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
15e0: 30 78 30 30 30 32 30 30 30 30 2c 0d 0a 09 44 49 0x00020000,...DI
15f0: 5f 46 4c 41 47 53 45 58 5f 41 50 50 45 4e 44 44 _FLAGSEX_APPENDD
1600: 52 49 56 45 52 4c 49 53 54 20 20 20 20 20 20 20 RIVERLIST
1610: 20 20 3d 20 30 78 30 30 30 34 30 30 30 30 2c 0d = 0x00040000,.
1620: 0a 09 44 49 5f 46 4c 41 47 53 45 58 5f 50 52 45 ..DI_FLAGSEX_PRE
1630: 49 4e 53 54 41 4c 4c 42 41 43 4b 55 50 20 20 20 INSTALLBACKUP
1640: 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 30 30 = 0x000800
1650: 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 47 53 45 58 00,...DI_FLAGSEX
1660: 5f 42 41 43 4b 55 50 4f 4e 52 45 50 4c 41 43 45 _BACKUPONREPLACE
1670: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
1680: 31 30 30 30 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 100000,...DI_FLA
1690: 47 53 45 58 5f 44 52 49 56 45 52 4c 49 53 54 5f GSEX_DRIVERLIST_
16a0: 46 52 4f 4d 5f 55 52 4c 20 20 20 20 20 20 3d 20 FROM_URL =
16b0: 30 78 30 30 32 30 30 30 30 30 2c 0d 0a 09 44 49 0x00200000,...DI
16c0: 5f 46 4c 41 47 53 45 58 5f 52 45 53 45 52 56 45 _FLAGSEX_RESERVE
16d0: 44 31 20 20 20 20 20 20 20 20 20 20 20 20 20 20 D1
16e0: 20 20 3d 20 30 78 30 30 34 30 30 30 30 30 2c 0d = 0x00400000,.
16f0: 0a 09 44 49 5f 46 4c 41 47 53 45 58 5f 45 58 43 ..DI_FLAGSEX_EXC
1700: 4c 55 44 45 5f 4f 4c 44 5f 49 4e 45 54 5f 44 52 LUDE_OLD_INET_DR
1710: 49 56 45 52 53 20 3d 20 30 78 30 30 38 30 30 30 IVERS = 0x008000
1720: 30 30 2c 0d 0a 09 44 49 5f 46 4c 41 47 53 45 58 00,...DI_FLAGSEX
1730: 5f 50 4f 57 45 52 50 41 47 45 5f 41 44 44 45 44 _POWERPAGE_ADDED
1740: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 31 = 0x01
1750: 30 30 30 30 30 30 0d 0a 7d 0d 0a 0d 0a 65 6e 75 000000..}....enu
1760: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 m : DWORD {...DI
1770: 42 43 49 5f 4e 4f 49 4e 53 54 41 4c 4c 43 4c 41 BCI_NOINSTALLCLA
1780: 53 53 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c SS = 0x00000001,
1790: 0d 0a 09 44 49 42 43 49 5f 4e 4f 44 49 53 50 4c ...DIBCI_NODISPL
17a0: 41 59 43 4c 41 53 53 20 3d 20 30 78 30 30 30 30 AYCLASS = 0x0000
17b0: 30 30 30 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 0002..}....enum
17c0: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 43 44 : DWORD {...DICD
17d0: 5f 47 45 4e 45 52 41 54 45 5f 49 44 20 20 20 20 _GENERATE_ID
17e0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c = 0x00000001,
17f0: 0d 0a 09 44 49 43 44 5f 49 4e 48 45 52 49 54 5f ...DICD_INHERIT_
1800: 43 4c 41 53 53 44 52 56 53 20 3d 20 30 78 30 30 CLASSDRVS = 0x00
1810: 30 30 30 30 30 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75 000002..}....enu
1820: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 m : DWORD {...DI
1830: 43 53 5f 45 4e 41 42 4c 45 20 3d 20 31 2c 0d 0a CS_ENABLE = 1,..
1840: 09 44 49 43 53 5f 44 49 53 41 42 4c 45 2c 0d 0a .DICS_DISABLE,..
1850: 09 44 49 43 53 5f 50 52 4f 50 43 48 41 4e 47 45 .DICS_PROPCHANGE
1860: 2c 0d 0a 09 44 49 43 53 5f 53 54 41 52 54 2c 0d ,...DICS_START,.
1870: 0a 09 44 49 43 53 5f 53 54 4f 50 20 2f 2f 20 3d ..DICS_STOP // =
1880: 20 35 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 5..}....enum :
1890: 44 57 4f 52 44 20 7b 0d 0a 09 44 49 43 53 5f 46 DWORD {...DICS_F
18a0: 4c 41 47 5f 47 4c 4f 42 41 4c 20 20 20 20 20 20 LAG_GLOBAL
18b0: 20 20 20 3d 20 31 2c 0d 0a 09 44 49 43 53 5f 46 = 1,...DICS_F
18c0: 4c 41 47 5f 43 4f 4e 46 49 47 53 50 45 43 49 46 LAG_CONFIGSPECIF
18d0: 49 43 20 3d 20 32 2c 0d 0a 09 44 49 43 53 5f 46 IC = 2,...DICS_F
18e0: 4c 41 47 5f 43 4f 4e 46 49 47 47 45 4e 45 52 41 LAG_CONFIGGENERA
18f0: 4c 20 20 3d 20 34 0d 0a 7d 0d 0a 0d 0a 61 6c 69 L = 4..}....ali
1900: 61 73 20 55 49 4e 54 20 44 49 5f 46 55 4e 43 54 as UINT DI_FUNCT
1910: 49 4f 4e 3b 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 ION;....enum : D
1920: 49 5f 46 55 4e 43 54 49 4f 4e 20 7b 0d 0a 09 44 I_FUNCTION {...D
1930: 49 46 5f 53 45 4c 45 43 54 44 45 56 49 43 45 20 IF_SELECTDEVICE
1940: 3d 20 31 2c 0d 0a 09 44 49 46 5f 49 4e 53 54 41 = 1,...DIF_INSTA
1950: 4c 4c 44 45 56 49 43 45 2c 0d 0a 09 44 49 46 5f LLDEVICE,...DIF_
1960: 41 53 53 49 47 4e 52 45 53 4f 55 52 43 45 53 2c ASSIGNRESOURCES,
1970: 0d 0a 09 44 49 46 5f 50 52 4f 50 45 52 54 49 45 ...DIF_PROPERTIE
1980: 53 2c 0d 0a 09 44 49 46 5f 52 45 4d 4f 56 45 2c S,...DIF_REMOVE,
1990: 0d 0a 09 44 49 46 5f 46 49 52 53 54 54 49 4d 45 ...DIF_FIRSTTIME
19a0: 53 45 54 55 50 2c 0d 0a 09 44 49 46 5f 46 4f 55 SETUP,...DIF_FOU
19b0: 4e 44 44 45 56 49 43 45 2c 0d 0a 09 44 49 46 5f NDDEVICE,...DIF_
19c0: 53 45 4c 45 43 54 43 4c 41 53 53 44 52 49 56 45 SELECTCLASSDRIVE
19d0: 52 53 2c 0d 0a 09 44 49 46 5f 56 41 4c 49 44 41 RS,...DIF_VALIDA
19e0: 54 45 43 4c 41 53 53 44 52 49 56 45 52 53 2c 0d TECLASSDRIVERS,.
19f0: 0a 09 44 49 46 5f 49 4e 53 54 41 4c 4c 43 4c 41 ..DIF_INSTALLCLA
1a00: 53 53 44 52 49 56 45 52 53 2c 0d 0a 09 44 49 46 SSDRIVERS,...DIF
1a10: 5f 43 41 4c 43 44 49 53 4b 53 50 41 43 45 2c 0d _CALCDISKSPACE,.
1a20: 0a 09 44 49 46 5f 44 45 53 54 52 4f 59 50 52 49 ..DIF_DESTROYPRI
1a30: 56 41 54 45 44 41 54 41 2c 0d 0a 09 44 49 46 5f VATEDATA,...DIF_
1a40: 56 41 4c 49 44 41 54 45 44 52 49 56 45 52 2c 0d VALIDATEDRIVER,.
1a50: 0a 09 44 49 46 5f 4d 4f 56 45 44 45 56 49 43 45 ..DIF_MOVEDEVICE
1a60: 2c 0d 0a 09 44 49 46 5f 44 45 54 45 43 54 2c 0d ,...DIF_DETECT,.
1a70: 0a 09 44 49 46 5f 49 4e 53 54 41 4c 4c 57 49 5a ..DIF_INSTALLWIZ
1a80: 41 52 44 2c 0d 0a 09 44 49 46 5f 44 45 53 54 52 ARD,...DIF_DESTR
1a90: 4f 59 57 49 5a 41 52 44 44 41 54 41 2c 0d 0a 09 OYWIZARDDATA,...
1aa0: 44 49 46 5f 50 52 4f 50 45 52 54 59 43 48 41 4e DIF_PROPERTYCHAN
1ab0: 47 45 2c 0d 0a 09 44 49 46 5f 45 4e 41 42 4c 45 GE,...DIF_ENABLE
1ac0: 43 4c 41 53 53 2c 0d 0a 09 44 49 46 5f 44 45 54 CLASS,...DIF_DET
1ad0: 45 43 54 56 45 52 49 46 59 2c 0d 0a 09 44 49 46 ECTVERIFY,...DIF
1ae0: 5f 49 4e 53 54 41 4c 4c 44 45 56 49 43 45 46 49 _INSTALLDEVICEFI
1af0: 4c 45 53 2c 0d 0a 09 44 49 46 5f 55 4e 52 45 4d LES,...DIF_UNREM
1b00: 4f 56 45 2c 0d 0a 09 44 49 46 5f 53 45 4c 45 43 OVE,...DIF_SELEC
1b10: 54 42 45 53 54 43 4f 4d 50 41 54 44 52 56 2c 0d TBESTCOMPATDRV,.
1b20: 0a 09 44 49 46 5f 41 4c 4c 4f 57 5f 49 4e 53 54 ..DIF_ALLOW_INST
1b30: 41 4c 4c 2c 0d 0a 09 44 49 46 5f 52 45 47 49 53 ALL,...DIF_REGIS
1b40: 54 45 52 44 45 56 49 43 45 2c 0d 0a 09 44 49 46 TERDEVICE,...DIF
1b50: 5f 4e 45 57 44 45 56 49 43 45 57 49 5a 41 52 44 _NEWDEVICEWIZARD
1b60: 5f 50 52 45 53 45 4c 45 43 54 2c 0d 0a 09 44 49 _PRESELECT,...DI
1b70: 46 5f 4e 45 57 44 45 56 49 43 45 57 49 5a 41 52 F_NEWDEVICEWIZAR
1b80: 44 5f 53 45 4c 45 43 54 2c 0d 0a 09 44 49 46 5f D_SELECT,...DIF_
1b90: 4e 45 57 44 45 56 49 43 45 57 49 5a 41 52 44 5f NEWDEVICEWIZARD_
1ba0: 50 52 45 41 4e 41 4c 59 5a 45 2c 0d 0a 09 44 49 PREANALYZE,...DI
1bb0: 46 5f 4e 45 57 44 45 56 49 43 45 57 49 5a 41 52 F_NEWDEVICEWIZAR
1bc0: 44 5f 50 4f 53 54 41 4e 41 4c 59 5a 45 2c 0d 0a D_POSTANALYZE,..
1bd0: 09 44 49 46 5f 4e 45 57 44 45 56 49 43 45 57 49 .DIF_NEWDEVICEWI
1be0: 5a 41 52 44 5f 46 49 4e 49 53 48 49 4e 53 54 41 ZARD_FINISHINSTA
1bf0: 4c 4c 2c 0d 0a 09 44 49 46 5f 55 4e 55 53 45 44 LL,...DIF_UNUSED
1c00: 31 2c 0d 0a 09 44 49 46 5f 49 4e 53 54 41 4c 4c 1,...DIF_INSTALL
1c10: 49 4e 54 45 52 46 41 43 45 53 2c 0d 0a 09 44 49 INTERFACES,...DI
1c20: 46 5f 44 45 54 45 43 54 43 41 4e 43 45 4c 2c 0d F_DETECTCANCEL,.
1c30: 0a 09 44 49 46 5f 52 45 47 49 53 54 45 52 5f 43 ..DIF_REGISTER_C
1c40: 4f 49 4e 53 54 41 4c 4c 45 52 53 2c 0d 0a 09 44 OINSTALLERS,...D
1c50: 49 46 5f 41 44 44 50 52 4f 50 45 52 54 59 50 41 IF_ADDPROPERTYPA
1c60: 47 45 5f 41 44 56 41 4e 43 45 44 2c 0d 0a 09 44 GE_ADVANCED,...D
1c70: 49 46 5f 41 44 44 50 52 4f 50 45 52 54 59 50 41 IF_ADDPROPERTYPA
1c80: 47 45 5f 42 41 53 49 43 2c 0d 0a 09 44 49 46 5f GE_BASIC,...DIF_
1c90: 52 45 53 45 52 56 45 44 31 2c 0d 0a 09 44 49 46 RESERVED1,...DIF
1ca0: 5f 54 52 4f 55 42 4c 45 53 48 4f 4f 54 45 52 2c _TROUBLESHOOTER,
1cb0: 0d 0a 09 44 49 46 5f 50 4f 57 45 52 4d 45 53 53 ...DIF_POWERMESS
1cc0: 41 47 45 57 41 4b 45 20 2f 2f 20 3d 20 33 39 0d AGEWAKE // = 39.
1cd0: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f .}....enum : DWO
1ce0: 52 44 20 7b 0d 0a 09 44 49 47 43 46 5f 44 45 46 RD {...DIGCF_DEF
1cf0: 41 55 4c 54 20 20 20 20 20 20 20 20 20 3d 20 30 AULT = 0
1d00: 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 49 47 x00000001,...DIG
1d10: 43 46 5f 50 52 45 53 45 4e 54 20 20 20 20 20 20 CF_PRESENT
1d20: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c = 0x00000002,
1d30: 0d 0a 09 44 49 47 43 46 5f 41 4c 4c 43 4c 41 53 ...DIGCF_ALLCLAS
1d40: 53 45 53 20 20 20 20 20 20 3d 20 30 78 30 30 30 SES = 0x000
1d50: 30 30 30 30 34 2c 0d 0a 09 44 49 47 43 46 5f 50 00004,...DIGCF_P
1d60: 52 4f 46 49 4c 45 20 20 20 20 20 20 20 20 20 3d ROFILE =
1d70: 20 30 78 30 30 30 30 30 30 30 38 2c 0d 0a 09 44 0x00000008,...D
1d80: 49 47 43 46 5f 44 45 56 49 43 45 49 4e 54 45 52 IGCF_DEVICEINTER
1d90: 46 41 43 45 20 3d 20 30 78 30 30 30 30 30 30 31 FACE = 0x0000001
1da0: 30 0d 0a 7d 0d 0a 0d 0a 64 65 70 72 65 63 61 74 0..}....deprecat
1db0: 65 64 20 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 ed enum : DWORD
1dc0: 7b 0d 0a 09 44 49 47 43 46 5f 49 4e 54 45 52 46 {...DIGCF_INTERF
1dd0: 41 43 45 44 45 56 49 43 45 20 3d 20 44 49 47 43 ACEDEVICE = DIGC
1de0: 46 5f 44 45 56 49 43 45 49 4e 54 45 52 46 41 43 F_DEVICEINTERFAC
1df0: 45 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 E..}....enum : D
1e00: 57 4f 52 44 20 7b 0d 0a 09 44 49 47 43 44 50 5f WORD {...DIGCDP_
1e10: 46 4c 41 47 5f 42 41 53 49 43 20 20 20 20 3d 20 FLAG_BASIC =
1e20: 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 49 0x00000001,...DI
1e30: 47 43 44 50 5f 46 4c 41 47 5f 41 44 56 41 4e 43 GCDP_FLAG_ADVANC
1e40: 45 44 20 3d 20 30 78 30 30 30 30 30 30 30 32 0d ED = 0x00000002.
1e50: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f .}....enum : DWO
1e60: 52 44 20 7b 0d 0a 09 44 49 4f 43 52 5f 49 4e 53 RD {...DIOCR_INS
1e70: 54 41 4c 4c 45 52 20 3d 20 30 78 30 30 30 30 30 TALLER = 0x00000
1e80: 30 30 31 2c 0d 0a 09 44 49 4f 43 52 5f 49 4e 54 001,...DIOCR_INT
1e90: 45 52 46 41 43 45 20 3d 20 30 78 30 30 30 30 30 ERFACE = 0x00000
1ea0: 30 30 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 002..}....enum :
1eb0: 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 4f 44 49 DWORD {...DIODI
1ec0: 5f 4e 4f 5f 41 44 44 20 3d 20 30 78 30 30 30 30 _NO_ADD = 0x0000
1ed0: 30 30 30 31 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 0001..}....enum
1ee0: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 4f 44 : DWORD {...DIOD
1ef0: 5f 49 4e 48 45 52 49 54 5f 43 4c 41 53 53 44 52 _INHERIT_CLASSDR
1f00: 56 53 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c VS = 0x00000002,
1f10: 0d 0a 09 44 49 4f 44 5f 43 41 4e 43 45 4c 5f 52 ...DIOD_CANCEL_R
1f20: 45 4d 4f 56 45 20 20 20 20 20 3d 20 30 78 30 30 EMOVE = 0x00
1f30: 30 30 30 30 30 34 0d 0a 7d 0d 0a 0d 0a 65 6e 75 000004..}....enu
1f40: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 49 m : DWORD {...DI
1f50: 52 45 47 5f 44 45 56 20 20 3d 20 30 78 30 30 30 REG_DEV = 0x000
1f60: 30 30 30 30 31 2c 0d 0a 09 44 49 52 45 47 5f 44 00001,...DIREG_D
1f70: 52 56 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 RV = 0x00000002
1f80: 2c 0d 0a 09 44 49 52 45 47 5f 42 4f 54 48 20 3d ,...DIREG_BOTH =
1f90: 20 30 78 30 30 30 30 30 30 30 34 0d 0a 7d 0d 0a 0x00000004..}..
1fa0: 0d 0a 65 6e 75 6d 20 3a 20 69 6e 74 20 7b 0d 0a ..enum : int {..
1fb0: 09 44 49 52 49 44 5f 41 42 53 4f 4c 55 54 45 20 .DIRID_ABSOLUTE
1fc0: 20 20 20 20 20 20 3d 20 2d 31 2c 0d 0a 09 44 49 = -1,...DI
1fd0: 52 49 44 5f 4e 55 4c 4c 20 20 20 20 20 20 20 20 RID_NULL
1fe0: 20 20 20 3d 20 30 2c 0d 0a 09 44 49 52 49 44 5f = 0,...DIRID_
1ff0: 53 52 43 50 41 54 48 20 20 20 20 20 20 20 20 3d SRCPATH =
2000: 20 31 2c 0d 0a 09 44 49 52 49 44 5f 57 49 4e 44 1,...DIRID_WIND
2010: 4f 57 53 20 20 20 20 20 20 20 20 3d 20 31 30 2c OWS = 10,
2020: 0d 0a 09 44 49 52 49 44 5f 53 59 53 54 45 4d 20 ...DIRID_SYSTEM
2030: 20 20 20 20 20 20 20 20 3d 20 31 31 2c 0d 0a 09 = 11,...
2040: 44 49 52 49 44 5f 44 52 49 56 45 52 53 20 20 20 DIRID_DRIVERS
2050: 20 20 20 20 20 3d 20 31 32 2c 0d 0a 09 44 49 52 = 12,...DIR
2060: 49 44 5f 49 4f 53 55 42 53 59 53 20 20 20 20 20 ID_IOSUBSYS
2070: 20 20 3d 20 44 49 52 49 44 5f 44 52 49 56 45 52 = DIRID_DRIVER
2080: 53 2c 0d 0a 09 44 49 52 49 44 5f 49 4e 46 20 20 S,...DIRID_INF
2090: 20 20 20 20 20 20 20 20 20 20 3d 20 31 37 2c 0d = 17,.
20a0: 0a 09 44 49 52 49 44 5f 48 45 4c 50 20 20 20 20 ..DIRID_HELP
20b0: 20 20 20 20 20 20 20 3d 20 31 38 2c 0d 0a 09 44 = 18,...D
20c0: 49 52 49 44 5f 46 4f 4e 54 53 20 20 20 20 20 20 IRID_FONTS
20d0: 20 20 20 20 3d 20 32 30 2c 0d 0a 09 44 49 52 49 = 20,...DIRI
20e0: 44 5f 56 49 45 57 45 52 53 20 20 20 20 20 20 20 D_VIEWERS
20f0: 20 3d 20 32 31 2c 0d 0a 09 44 49 52 49 44 5f 43 = 21,...DIRID_C
2100: 4f 4c 4f 52 20 20 20 20 20 20 20 20 20 20 3d 20 OLOR =
2110: 32 33 2c 0d 0a 09 44 49 52 49 44 5f 41 50 50 53 23,...DIRID_APPS
2120: 20 20 20 20 20 20 20 20 20 20 20 3d 20 32 34 2c = 24,
2130: 0d 0a 09 44 49 52 49 44 5f 53 48 41 52 45 44 20 ...DIRID_SHARED
2140: 20 20 20 20 20 20 20 20 3d 20 32 35 2c 0d 0a 09 = 25,...
2150: 44 49 52 49 44 5f 42 4f 4f 54 20 20 20 20 20 20 DIRID_BOOT
2160: 20 20 20 20 20 3d 20 33 30 2c 0d 0a 09 44 49 52 = 30,...DIR
2170: 49 44 5f 53 59 53 54 45 4d 31 36 20 20 20 20 20 ID_SYSTEM16
2180: 20 20 3d 20 35 30 2c 0d 0a 09 44 49 52 49 44 5f = 50,...DIRID_
2190: 53 50 4f 4f 4c 20 20 20 20 20 20 20 20 20 20 3d SPOOL =
21a0: 20 35 31 2c 0d 0a 09 44 49 52 49 44 5f 53 50 4f 51,...DIRID_SPO
21b0: 4f 4c 44 52 49 56 45 52 53 20 20 20 3d 20 35 32 OLDRIVERS = 52
21c0: 2c 0d 0a 09 44 49 52 49 44 5f 55 53 45 52 50 52 ,...DIRID_USERPR
21d0: 4f 46 49 4c 45 20 20 20 20 3d 20 35 33 2c 0d 0a OFILE = 53,..
21e0: 09 44 49 52 49 44 5f 4c 4f 41 44 45 52 20 20 20 .DIRID_LOADER
21f0: 20 20 20 20 20 20 3d 20 35 34 2c 0d 0a 09 44 49 = 54,...DI
2200: 52 49 44 5f 50 52 49 4e 54 50 52 4f 43 45 53 53 RID_PRINTPROCESS
2210: 4f 52 20 3d 20 35 35 2c 0d 0a 09 44 49 52 49 44 OR = 55,...DIRID
2220: 5f 44 45 46 41 55 4c 54 20 20 20 20 20 20 20 20 _DEFAULT
2230: 3d 20 44 49 52 49 44 5f 53 59 53 54 45 4d 0d 0a = DIRID_SYSTEM..
2240: 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 69 6e 74 20 }....enum : int
2250: 7b 0d 0a 09 44 49 52 49 44 5f 43 4f 4d 4d 4f 4e {...DIRID_COMMON
2260: 5f 53 54 41 52 54 4d 45 4e 55 20 20 20 20 20 20 _STARTMENU
2270: 20 20 3d 20 31 36 34 30 36 2c 0d 0a 09 44 49 52 = 16406,...DIR
2280: 49 44 5f 43 4f 4d 4d 4f 4e 5f 50 52 4f 47 52 41 ID_COMMON_PROGRA
2290: 4d 53 20 20 20 20 20 20 20 20 20 3d 20 31 36 34 MS = 164
22a0: 30 37 2c 0d 0a 09 44 49 52 49 44 5f 43 4f 4d 4d 07,...DIRID_COMM
22b0: 4f 4e 5f 53 54 41 52 54 55 50 20 20 20 20 20 20 ON_STARTUP
22c0: 20 20 20 20 3d 20 31 36 34 30 38 2c 0d 0a 09 44 = 16408,...D
22d0: 49 52 49 44 5f 43 4f 4d 4d 4f 4e 5f 44 45 53 4b IRID_COMMON_DESK
22e0: 54 4f 50 44 49 52 45 43 54 4f 52 59 20 3d 20 31 TOPDIRECTORY = 1
22f0: 36 34 30 39 2c 0d 0a 09 44 49 52 49 44 5f 43 4f 6409,...DIRID_CO
2300: 4d 4d 4f 4e 5f 46 41 56 4f 52 49 54 45 53 20 20 MMON_FAVORITES
2310: 20 20 20 20 20 20 3d 20 31 36 34 31 35 2c 0d 0a = 16415,..
2320: 09 44 49 52 49 44 5f 43 4f 4d 4d 4f 4e 5f 41 50 .DIRID_COMMON_AP
2330: 50 44 41 54 41 20 20 20 20 20 20 20 20 20 20 3d PDATA =
2340: 20 31 36 34 31 39 2c 0d 0a 09 44 49 52 49 44 5f 16419,...DIRID_
2350: 50 52 4f 47 52 41 4d 5f 46 49 4c 45 53 20 20 20 PROGRAM_FILES
2360: 20 20 20 20 20 20 20 20 3d 20 31 36 34 32 32 2c = 16422,
2370: 0d 0a 09 44 49 52 49 44 5f 53 59 53 54 45 4d 5f ...DIRID_SYSTEM_
2380: 58 38 36 20 20 20 20 20 20 20 20 20 20 20 20 20 X86
2390: 20 3d 20 31 36 34 32 35 2c 0d 0a 09 44 49 52 49 = 16425,...DIRI
23a0: 44 5f 50 52 4f 47 52 41 4d 5f 46 49 4c 45 53 5f D_PROGRAM_FILES_
23b0: 58 38 36 20 20 20 20 20 20 20 3d 20 31 36 34 32 X86 = 1642
23c0: 36 2c 0d 0a 09 44 49 52 49 44 5f 50 52 4f 47 52 6,...DIRID_PROGR
23d0: 41 4d 5f 46 49 4c 45 53 5f 43 4f 4d 4d 4f 4e 20 AM_FILES_COMMON
23e0: 20 20 20 3d 20 31 36 34 32 37 2c 0d 0a 09 44 49 = 16427,...DI
23f0: 52 49 44 5f 50 52 4f 47 52 41 4d 5f 46 49 4c 45 RID_PROGRAM_FILE
2400: 53 5f 43 4f 4d 4d 4f 4e 58 38 36 20 3d 20 31 36 S_COMMONX86 = 16
2410: 34 32 38 2c 0d 0a 09 44 49 52 49 44 5f 43 4f 4d 428,...DIRID_COM
2420: 4d 4f 4e 5f 54 45 4d 50 4c 41 54 45 53 20 20 20 MON_TEMPLATES
2430: 20 20 20 20 20 3d 20 31 36 34 32 39 2c 0d 0a 09 = 16429,...
2440: 44 49 52 49 44 5f 43 4f 4d 4d 4f 4e 5f 44 4f 43 DIRID_COMMON_DOC
2450: 55 4d 45 4e 54 53 20 20 20 20 20 20 20 20 3d 20 UMENTS =
2460: 31 36 34 33 30 2c 0d 0a 09 44 49 52 49 44 5f 55 16430,...DIRID_U
2470: 53 45 52 20 20 20 20 20 20 20 20 20 20 20 20 20 SER
2480: 20 20 20 20 20 20 20 3d 20 30 78 38 30 30 30 2c = 0x8000,
2490: 0d 0a 09 44 49 52 49 44 5f 41 42 53 4f 4c 55 54 ...DIRID_ABSOLUT
24a0: 45 5f 31 36 42 49 54 20 20 20 20 20 20 20 20 20 E_16BIT
24b0: 20 3d 20 30 78 66 66 66 66 0d 0a 7d 0d 0a 0d 0a = 0xffff..}....
24c0: 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a enum : DWORD {..
24d0: 09 44 4d 49 5f 4d 41 53 4b 20 20 20 20 3d 20 30 .DMI_MASK = 0
24e0: 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 4d 49 x00000001,...DMI
24f0: 5f 42 4b 43 4f 4c 4f 52 20 3d 20 30 78 30 30 30 _BKCOLOR = 0x000
2500: 30 30 30 30 32 2c 0d 0a 09 44 4d 49 5f 55 53 45 00002,...DMI_USE
2510: 52 45 43 54 20 3d 20 30 78 30 30 30 30 30 30 30 RECT = 0x0000000
2520: 34 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 4..}....enum : D
2530: 57 4f 52 44 20 7b 0d 0a 09 44 4e 46 5f 44 55 50 WORD {...DNF_DUP
2540: 44 45 53 43 20 20 20 20 20 20 20 20 20 20 20 3d DESC =
2550: 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 0x00000001,...D
2560: 4e 46 5f 4f 4c 44 44 52 49 56 45 52 20 20 20 20 NF_OLDDRIVER
2570: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
2580: 32 2c 0d 0a 09 44 4e 46 5f 45 58 43 4c 55 44 45 2,...DNF_EXCLUDE
2590: 46 52 4f 4d 4c 49 53 54 20 20 20 3d 20 30 78 30 FROMLIST = 0x0
25a0: 30 30 30 30 30 30 34 2c 0d 0a 09 44 4e 46 5f 4e 0000004,...DNF_N
25b0: 4f 44 52 49 56 45 52 20 20 20 20 20 20 20 20 20 ODRIVER
25c0: 20 3d 20 30 78 30 30 30 30 30 30 30 38 2c 0d 0a = 0x00000008,..
25d0: 09 44 4e 46 5f 4c 45 47 41 43 59 49 4e 46 20 20 .DNF_LEGACYINF
25e0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 = 0x00000
25f0: 30 31 30 2c 0d 0a 09 44 4e 46 5f 43 4c 41 53 53 010,...DNF_CLASS
2600: 5f 44 52 49 56 45 52 20 20 20 20 20 20 3d 20 30 _DRIVER = 0
2610: 78 30 30 30 30 30 30 32 30 2c 0d 0a 09 44 4e 46 x00000020,...DNF
2620: 5f 43 4f 4d 50 41 54 49 42 4c 45 5f 44 52 49 56 _COMPATIBLE_DRIV
2630: 45 52 20 3d 20 30 78 30 30 30 30 30 30 34 30 2c ER = 0x00000040,
2640: 0d 0a 09 44 4e 46 5f 49 4e 45 54 5f 44 52 49 56 ...DNF_INET_DRIV
2650: 45 52 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 ER = 0x000
2660: 30 30 30 38 30 2c 0d 0a 09 44 4e 46 5f 55 4e 55 00080,...DNF_UNU
2670: 53 45 44 31 20 20 20 20 20 20 20 20 20 20 20 3d SED1 =
2680: 20 30 78 30 30 30 30 30 31 30 30 2c 0d 0a 09 44 0x00000100,...D
2690: 4e 46 5f 49 4e 44 45 58 45 44 5f 44 52 49 56 45 NF_INDEXED_DRIVE
26a0: 52 20 20 20 20 3d 20 30 78 30 30 30 30 30 32 30 R = 0x0000020
26b0: 30 2c 0d 0a 09 44 4e 46 5f 4f 4c 44 5f 49 4e 45 0,...DNF_OLD_INE
26c0: 54 5f 44 52 49 56 45 52 20 20 20 3d 20 30 78 30 T_DRIVER = 0x0
26d0: 30 30 30 30 34 30 30 2c 0d 0a 09 44 4e 46 5f 42 0000400,...DNF_B
26e0: 41 44 5f 44 52 49 56 45 52 20 20 20 20 20 20 20 AD_DRIVER
26f0: 20 3d 20 30 78 30 30 30 30 30 38 30 30 2c 0d 0a = 0x00000800,..
2700: 09 44 4e 46 5f 44 55 50 50 52 4f 56 49 44 45 52 .DNF_DUPPROVIDER
2710: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 31 = 0x00001
2720: 30 30 30 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 000..}....enum :
2730: 20 55 49 4e 54 20 7b 0d 0a 09 44 50 52 4f 4d 50 UINT {...DPROMP
2740: 54 5f 53 55 43 43 45 53 53 2c 0d 0a 09 44 50 52 T_SUCCESS,...DPR
2750: 4f 4d 50 54 5f 43 41 4e 43 45 4c 2c 0d 0a 09 44 OMPT_CANCEL,...D
2760: 50 52 4f 4d 50 54 5f 53 4b 49 50 46 49 4c 45 2c PROMPT_SKIPFILE,
2770: 0d 0a 09 44 50 52 4f 4d 50 54 5f 42 55 46 46 45 ...DPROMPT_BUFFE
2780: 52 54 4f 4f 53 4d 41 4c 4c 2c 0d 0a 09 44 50 52 RTOOSMALL,...DPR
2790: 4f 4d 50 54 5f 4f 55 54 4f 46 4d 45 4d 4f 52 59 OMPT_OUTOFMEMORY
27a0: 20 2f 2f 20 3d 20 34 0d 0a 7d 0d 0a 0d 0a 65 6e // = 4..}....en
27b0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 44 um : DWORD {...D
27c0: 52 49 56 45 52 5f 48 41 52 44 57 41 52 45 49 44 RIVER_HARDWAREID
27d0: 5f 52 41 4e 4b 20 20 20 20 20 20 20 20 20 20 20 _RANK
27e0: 20 20 3d 20 30 78 30 30 30 30 30 46 46 46 2c 0d = 0x00000FFF,.
27f0: 0a 09 44 52 49 56 45 52 5f 43 4f 4d 50 41 54 49 ..DRIVER_COMPATI
2800: 44 5f 52 41 4e 4b 20 20 20 20 20 20 20 20 20 20 D_RANK
2810: 20 20 20 20 20 3d 20 30 78 30 30 30 30 33 46 46 = 0x00003FF
2820: 46 2c 0d 0a 09 44 52 49 56 45 52 5f 55 4e 54 52 F,...DRIVER_UNTR
2830: 55 53 54 45 44 5f 52 41 4e 4b 20 20 20 20 20 20 USTED_RANK
2840: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
2850: 38 30 30 30 2c 0d 0a 09 44 52 49 56 45 52 5f 55 8000,...DRIVER_U
2860: 4e 54 52 55 53 54 45 44 5f 48 41 52 44 57 41 52 NTRUSTED_HARDWAR
2870: 45 49 44 5f 52 41 4e 4b 20 20 20 3d 20 30 78 30 EID_RANK = 0x0
2880: 30 30 30 38 46 46 46 2c 0d 0a 09 44 52 49 56 45 0008FFF,...DRIVE
2890: 52 5f 55 4e 54 52 55 53 54 45 44 5f 43 4f 4d 50 R_UNTRUSTED_COMP
28a0: 41 54 49 44 5f 52 41 4e 4b 20 20 20 20 20 3d 20 ATID_RANK =
28b0: 30 78 30 30 30 30 42 46 46 46 2c 0d 0a 09 44 52 0x0000BFFF,...DR
28c0: 49 56 45 52 5f 57 39 58 5f 53 55 53 50 45 43 54 IVER_W9X_SUSPECT
28d0: 5f 52 41 4e 4b 20 20 20 20 20 20 20 20 20 20 20 _RANK
28e0: 20 3d 20 30 78 30 30 30 30 43 30 30 30 2c 0d 0a = 0x0000C000,..
28f0: 09 44 52 49 56 45 52 5f 57 39 58 5f 53 55 53 50 .DRIVER_W9X_SUSP
2900: 45 43 54 5f 48 41 52 44 57 41 52 45 49 44 5f 52 ECT_HARDWAREID_R
2910: 41 4e 4b 20 3d 20 30 78 30 30 30 30 43 46 46 46 ANK = 0x0000CFFF
2920: 2c 0d 0a 09 44 52 49 56 45 52 5f 57 39 58 5f 53 ,...DRIVER_W9X_S
2930: 55 53 50 45 43 54 5f 43 4f 4d 50 41 54 49 44 5f USPECT_COMPATID_
2940: 52 41 4e 4b 20 20 20 3d 20 30 78 30 30 30 30 46 RANK = 0x0000F
2950: 46 46 46 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a FFF..}....enum :
2960: 20 44 57 4f 52 44 20 7b 0d 0a 09 44 59 4e 41 57 DWORD {...DYNAW
2970: 49 5a 5f 46 4c 41 47 5f 50 41 47 45 53 41 44 44 IZ_FLAG_PAGESADD
2980: 45 44 20 20 20 20 20 20 20 20 20 20 20 20 20 3d ED =
2990: 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 44 0x00000001,...D
29a0: 59 4e 41 57 49 5a 5f 46 4c 41 47 5f 49 4e 53 54 YNAWIZ_FLAG_INST
29b0: 41 4c 4c 44 45 54 5f 4e 45 58 54 20 20 20 20 20 ALLDET_NEXT
29c0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c = 0x00000002,
29d0: 0d 0a 09 44 59 4e 41 57 49 5a 5f 46 4c 41 47 5f ...DYNAWIZ_FLAG_
29e0: 49 4e 53 54 41 4c 4c 44 45 54 5f 50 52 45 56 20 INSTALLDET_PREV
29f0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 = 0x00000
2a00: 30 30 34 2c 0d 0a 09 44 59 4e 41 57 49 5a 5f 46 004,...DYNAWIZ_F
2a10: 4c 41 47 5f 41 4e 41 4c 59 5a 45 5f 48 41 4e 44 LAG_ANALYZE_HAND
2a20: 4c 45 43 4f 4e 46 4c 49 43 54 20 3d 20 30 78 30 LECONFLICT = 0x0
2a30: 30 30 30 30 30 30 38 0d 0a 7d 0d 0a 0d 0a 65 6e 0000008..}....en
2a40: 75 6d 20 3a 20 57 4f 52 44 20 7b 0d 0a 09 45 4e um : WORD {...EN
2a50: 41 42 4c 45 43 4c 41 53 53 5f 51 55 45 52 59 2c ABLECLASS_QUERY,
2a60: 0d 0a 09 45 4e 41 42 4c 45 43 4c 41 53 53 5f 53 ...ENABLECLASS_S
2a70: 55 43 43 45 53 53 2c 0d 0a 09 45 4e 41 42 4c 45 UCCESS,...ENABLE
2a80: 43 4c 41 53 53 5f 46 41 49 4c 55 52 45 20 2f 2f CLASS_FAILURE //
2a90: 20 3d 20 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 = 2..}....enum
2aa0: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 45 52 52 4f : DWORD {...ERRO
2ab0: 52 5f 45 58 50 45 43 54 45 44 5f 53 45 43 54 49 R_EXPECTED_SECTI
2ac0: 4f 4e 5f 4e 41 4d 45 20 20 20 20 20 20 20 3d 20 ON_NAME =
2ad0: 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f APPLICATION_ERRO
2ae0: 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 R_MASK | ERROR_S
2af0: 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 EVERITY_ERROR |
2b00: 30 2c 0d 0a 09 45 52 52 4f 52 5f 42 41 44 5f 53 0,...ERROR_BAD_S
2b10: 45 43 54 49 4f 4e 5f 4e 41 4d 45 5f 4c 49 4e 45 ECTION_NAME_LINE
2b20: 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 = APPLICA
2b30: 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 TION_ERROR_MASK
2b40: 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 | ERROR_SEVERITY
2b50: 5f 45 52 52 4f 52 20 7c 20 31 2c 0d 0a 09 45 52 _ERROR | 1,...ER
2b60: 52 4f 52 5f 53 45 43 54 49 4f 4e 5f 4e 41 4d 45 ROR_SECTION_NAME
2b70: 5f 54 4f 4f 5f 4c 4f 4e 47 20 20 20 20 20 20 20 _TOO_LONG
2b80: 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 = APPLICATION_ER
2b90: 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 ROR_MASK | ERROR
2ba0: 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 _SEVERITY_ERROR
2bb0: 7c 20 32 2c 0d 0a 09 45 52 52 4f 52 5f 47 45 4e | 2,...ERROR_GEN
2bc0: 45 52 41 4c 5f 53 59 4e 54 41 58 20 20 20 20 20 ERAL_SYNTAX
2bd0: 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 = APPLI
2be0: 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 CATION_ERROR_MAS
2bf0: 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 K | ERROR_SEVERI
2c00: 54 59 5f 45 52 52 4f 52 20 7c 20 33 2c 0d 0a 09 TY_ERROR | 3,...
2c10: 45 52 52 4f 52 5f 57 52 4f 4e 47 5f 49 4e 46 5f ERROR_WRONG_INF_
2c20: 53 54 59 4c 45 20 20 20 20 20 20 20 20 20 20 20 STYLE
2c30: 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f = APPLICATION_
2c40: 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 ERROR_MASK | ERR
2c50: 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f OR_SEVERITY_ERRO
2c60: 52 20 7c 20 30 78 31 30 30 2c 0d 0a 09 45 52 52 R | 0x100,...ERR
2c70: 4f 52 5f 4e 4f 54 5f 49 4e 53 54 41 4c 4c 45 44 OR_NOT_INSTALLED
2c80: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d =
2c90: 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 APPLICATION_ERR
2ca0: 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f OR_MASK | ERROR_
2cb0: 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c SEVERITY_ERROR |
2cc0: 20 30 78 31 30 30 30 2c 0d 0a 09 45 52 52 4f 52 0x1000,...ERROR
2cd0: 5f 53 45 43 54 49 4f 4e 5f 4e 4f 54 5f 46 4f 55 _SECTION_NOT_FOU
2ce0: 4e 44 20 20 20 20 20 20 20 20 20 20 20 3d 20 41 ND = A
2cf0: 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 PPLICATION_ERROR
2d00: 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 _MASK | ERROR_SE
2d10: 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 VERITY_ERROR | 0
2d20: 78 31 30 31 2c 0d 0a 09 45 52 52 4f 52 5f 4c 49 x101,...ERROR_LI
2d30: 4e 45 5f 4e 4f 54 5f 46 4f 55 4e 44 20 20 20 20 NE_NOT_FOUND
2d40: 20 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c = APPL
2d50: 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 ICATION_ERROR_MA
2d60: 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 SK | ERROR_SEVER
2d70: 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 31 30 ITY_ERROR | 0x10
2d80: 32 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 42 41 2,...ERROR_NO_BA
2d90: 43 4b 55 50 20 20 20 20 20 20 20 20 20 20 20 20 CKUP
2da0: 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 = APPLICA
2db0: 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 TION_ERROR_MASK
2dc0: 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 | ERROR_SEVERITY
2dd0: 5f 45 52 52 4f 52 20 7c 20 30 78 31 30 33 2c 0d _ERROR | 0x103,.
2de0: 0a 09 45 52 52 4f 52 5f 4e 4f 5f 41 53 53 4f 43 ..ERROR_NO_ASSOC
2df0: 49 41 54 45 44 5f 43 4c 41 53 53 20 20 20 20 20 IATED_CLASS
2e00: 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f = APPLICATIO
2e10: 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 N_ERROR_MASK | E
2e20: 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 RROR_SEVERITY_ER
2e30: 52 4f 52 20 7c 20 30 78 32 30 30 2c 0d 0a 09 45 ROR | 0x200,...E
2e40: 52 52 4f 52 5f 43 4c 41 53 53 5f 4d 49 53 4d 41 RROR_CLASS_MISMA
2e50: 54 43 48 20 20 20 20 20 20 20 20 20 20 20 20 20 TCH
2e60: 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 = APPLICATION_E
2e70: 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f RROR_MASK | ERRO
2e80: 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 R_SEVERITY_ERROR
2e90: 20 7c 20 30 78 32 30 31 2c 0d 0a 09 45 52 52 4f | 0x201,...ERRO
2ea0: 52 5f 44 55 50 4c 49 43 41 54 45 5f 46 4f 55 4e R_DUPLICATE_FOUN
2eb0: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 D =
2ec0: 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f APPLICATION_ERRO
2ed0: 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 R_MASK | ERROR_S
2ee0: 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 EVERITY_ERROR |
2ef0: 30 78 32 30 32 2c 0d 0a 09 45 52 52 4f 52 5f 4e 0x202,...ERROR_N
2f00: 4f 5f 44 52 49 56 45 52 5f 53 45 4c 45 43 54 45 O_DRIVER_SELECTE
2f10: 44 20 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 D = APP
2f20: 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d LICATION_ERROR_M
2f30: 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 ASK | ERROR_SEVE
2f40: 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 RITY_ERROR | 0x2
2f50: 30 33 2c 0d 0a 09 45 52 52 4f 52 5f 4b 45 59 5f 03,...ERROR_KEY_
2f60: 44 4f 45 53 5f 4e 4f 54 5f 45 58 49 53 54 20 20 DOES_NOT_EXIST
2f70: 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 = APPLIC
2f80: 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b ATION_ERROR_MASK
2f90: 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 | ERROR_SEVERIT
2fa0: 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 30 34 2c Y_ERROR | 0x204,
2fb0: 0d 0a 09 45 52 52 4f 52 5f 49 4e 56 41 4c 49 44 ...ERROR_INVALID
2fc0: 5f 44 45 56 49 4e 53 54 5f 4e 41 4d 45 20 20 20 _DEVINST_NAME
2fd0: 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 = APPLICATI
2fe0: 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 ON_ERROR_MASK |
2ff0: 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 ERROR_SEVERITY_E
3000: 52 52 4f 52 20 7c 20 30 78 32 30 35 2c 0d 0a 09 RROR | 0x205,...
3010: 45 52 52 4f 52 5f 49 4e 56 41 4c 49 44 5f 43 4c ERROR_INVALID_CL
3020: 41 53 53 20 20 20 20 20 20 20 20 20 20 20 20 20 ASS
3030: 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f = APPLICATION_
3040: 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 ERROR_MASK | ERR
3050: 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f OR_SEVERITY_ERRO
3060: 52 20 7c 20 30 78 32 30 36 2c 0d 0a 09 45 52 52 R | 0x206,...ERR
3070: 4f 52 5f 44 45 56 49 4e 53 54 5f 41 4c 52 45 41 OR_DEVINST_ALREA
3080: 44 59 5f 45 58 49 53 54 53 20 20 20 20 20 20 3d DY_EXISTS =
3090: 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 APPLICATION_ERR
30a0: 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f OR_MASK | ERROR_
30b0: 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c SEVERITY_ERROR |
30c0: 20 30 78 32 30 37 2c 0d 0a 09 45 52 52 4f 52 5f 0x207,...ERROR_
30d0: 44 45 56 49 4e 46 4f 5f 4e 4f 54 5f 52 45 47 49 DEVINFO_NOT_REGI
30e0: 53 54 45 52 45 44 20 20 20 20 20 20 3d 20 41 50 STERED = AP
30f0: 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f PLICATION_ERROR_
3100: 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 MASK | ERROR_SEV
3110: 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 ERITY_ERROR | 0x
3120: 32 30 38 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 56 208,...ERROR_INV
3130: 41 4c 49 44 5f 52 45 47 5f 50 52 4f 50 45 52 54 ALID_REG_PROPERT
3140: 59 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 Y = APPLI
3150: 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 CATION_ERROR_MAS
3160: 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 K | ERROR_SEVERI
3170: 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 30 39 TY_ERROR | 0x209
3180: 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 49 4e 46 ,...ERROR_NO_INF
3190: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
31a0: 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 = APPLICAT
31b0: 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c ION_ERROR_MASK |
31c0: 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f ERROR_SEVERITY_
31d0: 45 52 52 4f 52 20 7c 20 30 78 32 30 41 2c 0d 0a ERROR | 0x20A,..
31e0: 09 45 52 52 4f 52 5f 4e 4f 5f 53 55 43 48 5f 44 .ERROR_NO_SUCH_D
31f0: 45 56 49 4e 53 54 20 20 20 20 20 20 20 20 20 20 EVINST
3200: 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e = APPLICATION
3210: 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 _ERROR_MASK | ER
3220: 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 ROR_SEVERITY_ERR
3230: 4f 52 20 7c 20 30 78 32 30 42 2c 0d 0a 09 45 52 OR | 0x20B,...ER
3240: 52 4f 52 5f 43 41 4e 54 5f 4c 4f 41 44 5f 43 4c ROR_CANT_LOAD_CL
3250: 41 53 53 5f 49 43 4f 4e 20 20 20 20 20 20 20 20 ASS_ICON
3260: 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 = APPLICATION_ER
3270: 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 ROR_MASK | ERROR
3280: 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 _SEVERITY_ERROR
3290: 7c 20 30 78 32 30 43 2c 0d 0a 09 45 52 52 4f 52 | 0x20C,...ERROR
32a0: 5f 49 4e 56 41 4c 49 44 5f 43 4c 41 53 53 5f 49 _INVALID_CLASS_I
32b0: 4e 53 54 41 4c 4c 45 52 20 20 20 20 20 3d 20 41 NSTALLER = A
32c0: 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 PPLICATION_ERROR
32d0: 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 _MASK | ERROR_SE
32e0: 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 VERITY_ERROR | 0
32f0: 78 32 30 44 2c 0d 0a 09 45 52 52 4f 52 5f 44 49 x20D,...ERROR_DI
3300: 5f 44 4f 5f 44 45 46 41 55 4c 54 20 20 20 20 20 _DO_DEFAULT
3310: 20 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c = APPL
3320: 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 ICATION_ERROR_MA
3330: 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 SK | ERROR_SEVER
3340: 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 30 ITY_ERROR | 0x20
3350: 45 2c 0d 0a 09 45 52 52 4f 52 5f 44 49 5f 4e 4f E,...ERROR_DI_NO
3360: 46 49 4c 45 43 4f 50 59 20 20 20 20 20 20 20 20 FILECOPY
3370: 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 = APPLICA
3380: 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 TION_ERROR_MASK
3390: 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 | ERROR_SEVERITY
33a0: 5f 45 52 52 4f 52 20 7c 20 30 78 32 30 46 2c 0d _ERROR | 0x20F,.
33b0: 0a 09 45 52 52 4f 52 5f 49 4e 56 41 4c 49 44 5f ..ERROR_INVALID_
33c0: 48 57 50 52 4f 46 49 4c 45 20 20 20 20 20 20 20 HWPROFILE
33d0: 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f = APPLICATIO
33e0: 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 N_ERROR_MASK | E
33f0: 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 RROR_SEVERITY_ER
3400: 52 4f 52 20 7c 20 30 78 32 31 30 2c 0d 0a 09 45 ROR | 0x210,...E
3410: 52 52 4f 52 5f 4e 4f 5f 44 45 56 49 43 45 5f 53 RROR_NO_DEVICE_S
3420: 45 4c 45 43 54 45 44 20 20 20 20 20 20 20 20 20 ELECTED
3430: 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 = APPLICATION_E
3440: 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f RROR_MASK | ERRO
3450: 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 R_SEVERITY_ERROR
3460: 20 7c 20 30 78 32 31 31 2c 0d 0a 09 45 52 52 4f | 0x211,...ERRO
3470: 52 5f 44 45 56 49 4e 46 4f 5f 4c 49 53 54 5f 4c R_DEVINFO_LIST_L
3480: 4f 43 4b 45 44 20 20 20 20 20 20 20 20 20 3d 20 OCKED =
3490: 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f APPLICATION_ERRO
34a0: 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 R_MASK | ERROR_S
34b0: 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 EVERITY_ERROR |
34c0: 30 78 32 31 32 2c 0d 0a 09 45 52 52 4f 52 5f 44 0x212,...ERROR_D
34d0: 45 56 49 4e 46 4f 5f 44 41 54 41 5f 4c 4f 43 4b EVINFO_DATA_LOCK
34e0: 45 44 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 ED = APP
34f0: 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d LICATION_ERROR_M
3500: 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 ASK | ERROR_SEVE
3510: 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 RITY_ERROR | 0x2
3520: 31 33 2c 0d 0a 09 45 52 52 4f 52 5f 44 49 5f 42 13,...ERROR_DI_B
3530: 41 44 5f 50 41 54 48 20 20 20 20 20 20 20 20 20 AD_PATH
3540: 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 = APPLIC
3550: 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b ATION_ERROR_MASK
3560: 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 | ERROR_SEVERIT
3570: 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 31 34 2c Y_ERROR | 0x214,
3580: 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 43 4c 41 53 ...ERROR_NO_CLAS
3590: 53 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 20 SINSTALL_PARAMS
35a0: 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 = APPLICATI
35b0: 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 ON_ERROR_MASK |
35c0: 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 ERROR_SEVERITY_E
35d0: 52 52 4f 52 20 7c 20 30 78 32 31 35 2c 0d 0a 09 RROR | 0x215,...
35e0: 45 52 52 4f 52 5f 46 49 4c 45 51 55 45 55 45 5f ERROR_FILEQUEUE_
35f0: 4c 4f 43 4b 45 44 20 20 20 20 20 20 20 20 20 20 LOCKED
3600: 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f = APPLICATION_
3610: 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 ERROR_MASK | ERR
3620: 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f OR_SEVERITY_ERRO
3630: 52 20 7c 20 30 78 32 31 36 2c 0d 0a 09 45 52 52 R | 0x216,...ERR
3640: 4f 52 5f 42 41 44 5f 53 45 52 56 49 43 45 5f 49 OR_BAD_SERVICE_I
3650: 4e 53 54 41 4c 4c 53 45 43 54 20 20 20 20 20 3d NSTALLSECT =
3660: 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 APPLICATION_ERR
3670: 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f OR_MASK | ERROR_
3680: 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c SEVERITY_ERROR |
3690: 20 30 78 32 31 37 2c 0d 0a 09 45 52 52 4f 52 5f 0x217,...ERROR_
36a0: 4e 4f 5f 43 4c 41 53 53 5f 44 52 49 56 45 52 5f NO_CLASS_DRIVER_
36b0: 4c 49 53 54 20 20 20 20 20 20 20 20 3d 20 41 50 LIST = AP
36c0: 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f PLICATION_ERROR_
36d0: 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 MASK | ERROR_SEV
36e0: 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 ERITY_ERROR | 0x
36f0: 32 31 38 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 218,...ERROR_NO_
3700: 41 53 53 4f 43 49 41 54 45 44 5f 53 45 52 56 49 ASSOCIATED_SERVI
3710: 43 45 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 CE = APPLI
3720: 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 CATION_ERROR_MAS
3730: 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 K | ERROR_SEVERI
3740: 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 31 39 TY_ERROR | 0x219
3750: 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 44 45 46 ,...ERROR_NO_DEF
3760: 41 55 4c 54 5f 44 45 56 49 43 45 5f 49 4e 54 45 AULT_DEVICE_INTE
3770: 52 46 41 43 45 20 3d 20 41 50 50 4c 49 43 41 54 RFACE = APPLICAT
3780: 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c ION_ERROR_MASK |
3790: 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f ERROR_SEVERITY_
37a0: 45 52 52 4f 52 20 7c 20 30 78 32 31 41 2c 0d 0a ERROR | 0x21A,..
37b0: 09 45 52 52 4f 52 5f 44 45 56 49 43 45 5f 49 4e .ERROR_DEVICE_IN
37c0: 54 45 52 46 41 43 45 5f 41 43 54 49 56 45 20 20 TERFACE_ACTIVE
37d0: 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e = APPLICATION
37e0: 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 _ERROR_MASK | ER
37f0: 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 ROR_SEVERITY_ERR
3800: 4f 52 20 7c 20 30 78 32 31 42 2c 0d 0a 09 45 52 OR | 0x21B,...ER
3810: 52 4f 52 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 ROR_DEVICE_INTER
3820: 46 41 43 45 5f 52 45 4d 4f 56 45 44 20 20 20 20 FACE_REMOVED
3830: 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 = APPLICATION_ER
3840: 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 ROR_MASK | ERROR
3850: 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 _SEVERITY_ERROR
3860: 7c 20 30 78 32 31 43 2c 0d 0a 09 45 52 52 4f 52 | 0x21C,...ERROR
3870: 5f 42 41 44 5f 49 4e 54 45 52 46 41 43 45 5f 49 _BAD_INTERFACE_I
3880: 4e 53 54 41 4c 4c 53 45 43 54 20 20 20 3d 20 41 NSTALLSECT = A
3890: 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 PPLICATION_ERROR
38a0: 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 _MASK | ERROR_SE
38b0: 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 VERITY_ERROR | 0
38c0: 78 32 31 44 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f x21D,...ERROR_NO
38d0: 5f 53 55 43 48 5f 49 4e 54 45 52 46 41 43 45 5f _SUCH_INTERFACE_
38e0: 43 4c 41 53 53 20 20 20 20 20 3d 20 41 50 50 4c CLASS = APPL
38f0: 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 ICATION_ERROR_MA
3900: 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 SK | ERROR_SEVER
3910: 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 31 ITY_ERROR | 0x21
3920: 45 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 56 41 4c E,...ERROR_INVAL
3930: 49 44 5f 52 45 46 45 52 45 4e 43 45 5f 53 54 52 ID_REFERENCE_STR
3940: 49 4e 47 20 20 20 20 3d 20 41 50 50 4c 49 43 41 ING = APPLICA
3950: 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 TION_ERROR_MASK
3960: 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 | ERROR_SEVERITY
3970: 5f 45 52 52 4f 52 20 7c 20 30 78 32 31 46 2c 0d _ERROR | 0x21F,.
3980: 0a 09 45 52 52 4f 52 5f 49 4e 56 41 4c 49 44 5f ..ERROR_INVALID_
3990: 4d 41 43 48 49 4e 45 4e 41 4d 45 20 20 20 20 20 MACHINENAME
39a0: 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f = APPLICATIO
39b0: 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 N_ERROR_MASK | E
39c0: 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 RROR_SEVERITY_ER
39d0: 52 4f 52 20 7c 20 30 78 32 32 30 2c 0d 0a 09 45 ROR | 0x220,...E
39e0: 52 52 4f 52 5f 52 45 4d 4f 54 45 5f 43 4f 4d 4d RROR_REMOTE_COMM
39f0: 5f 46 41 49 4c 55 52 45 20 20 20 20 20 20 20 20 _FAILURE
3a00: 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 = APPLICATION_E
3a10: 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f RROR_MASK | ERRO
3a20: 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 R_SEVERITY_ERROR
3a30: 20 7c 20 30 78 32 32 31 2c 0d 0a 09 45 52 52 4f | 0x221,...ERRO
3a40: 52 5f 4d 41 43 48 49 4e 45 5f 55 4e 41 56 41 49 R_MACHINE_UNAVAI
3a50: 4c 41 42 4c 45 20 20 20 20 20 20 20 20 20 3d 20 LABLE =
3a60: 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f APPLICATION_ERRO
3a70: 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 R_MASK | ERROR_S
3a80: 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 EVERITY_ERROR |
3a90: 30 78 32 32 32 2c 0d 0a 09 45 52 52 4f 52 5f 4e 0x222,...ERROR_N
3aa0: 4f 5f 43 4f 4e 46 49 47 4d 47 52 5f 53 45 52 56 O_CONFIGMGR_SERV
3ab0: 49 43 45 53 20 20 20 20 20 20 20 3d 20 41 50 50 ICES = APP
3ac0: 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d LICATION_ERROR_M
3ad0: 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 ASK | ERROR_SEVE
3ae0: 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 RITY_ERROR | 0x2
3af0: 32 33 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 56 41 23,...ERROR_INVA
3b00: 4c 49 44 5f 50 52 4f 50 50 41 47 45 5f 50 52 4f LID_PROPPAGE_PRO
3b10: 56 49 44 45 52 20 20 20 3d 20 41 50 50 4c 49 43 VIDER = APPLIC
3b20: 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b ATION_ERROR_MASK
3b30: 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 | ERROR_SEVERIT
3b40: 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 32 34 2c Y_ERROR | 0x224,
3b50: 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 53 55 43 48 ...ERROR_NO_SUCH
3b60: 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 43 _DEVICE_INTERFAC
3b70: 45 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 E = APPLICATI
3b80: 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 ON_ERROR_MASK |
3b90: 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 ERROR_SEVERITY_E
3ba0: 52 52 4f 52 20 7c 20 30 78 32 32 35 2c 0d 0a 09 RROR | 0x225,...
3bb0: 45 52 52 4f 52 5f 44 49 5f 50 4f 53 54 50 52 4f ERROR_DI_POSTPRO
3bc0: 43 45 53 53 49 4e 47 5f 52 45 51 55 49 52 45 44 CESSING_REQUIRED
3bd0: 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f = APPLICATION_
3be0: 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 ERROR_MASK | ERR
3bf0: 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f OR_SEVERITY_ERRO
3c00: 52 20 7c 20 30 78 32 32 36 2c 0d 0a 09 45 52 52 R | 0x226,...ERR
3c10: 4f 52 5f 49 4e 56 41 4c 49 44 5f 43 4f 49 4e 53 OR_INVALID_COINS
3c20: 54 41 4c 4c 45 52 20 20 20 20 20 20 20 20 20 3d TALLER =
3c30: 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 APPLICATION_ERR
3c40: 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f OR_MASK | ERROR_
3c50: 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c SEVERITY_ERROR |
3c60: 20 30 78 32 32 37 2c 0d 0a 09 45 52 52 4f 52 5f 0x227,...ERROR_
3c70: 4e 4f 5f 43 4f 4d 50 41 54 5f 44 52 49 56 45 52 NO_COMPAT_DRIVER
3c80: 53 20 20 20 20 20 20 20 20 20 20 20 3d 20 41 50 S = AP
3c90: 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f PLICATION_ERROR_
3ca0: 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 MASK | ERROR_SEV
3cb0: 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 ERITY_ERROR | 0x
3cc0: 32 32 38 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 228,...ERROR_NO_
3cd0: 44 45 56 49 43 45 5f 49 43 4f 4e 20 20 20 20 20 DEVICE_ICON
3ce0: 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c 49 = APPLI
3cf0: 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 CATION_ERROR_MAS
3d00: 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 K | ERROR_SEVERI
3d10: 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 32 39 TY_ERROR | 0x229
3d20: 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 56 41 4c 49 ,...ERROR_INVALI
3d30: 44 5f 49 4e 46 5f 4c 4f 47 43 4f 4e 46 49 47 20 D_INF_LOGCONFIG
3d40: 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 54 = APPLICAT
3d50: 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c ION_ERROR_MASK |
3d60: 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f ERROR_SEVERITY_
3d70: 45 52 52 4f 52 20 7c 20 30 78 32 32 41 2c 0d 0a ERROR | 0x22A,..
3d80: 09 45 52 52 4f 52 5f 44 49 5f 44 4f 4e 54 5f 49 .ERROR_DI_DONT_I
3d90: 4e 53 54 41 4c 4c 20 20 20 20 20 20 20 20 20 20 NSTALL
3da0: 20 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e = APPLICATION
3db0: 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 _ERROR_MASK | ER
3dc0: 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 ROR_SEVERITY_ERR
3dd0: 4f 52 20 7c 20 30 78 32 32 42 2c 0d 0a 09 45 52 OR | 0x22B,...ER
3de0: 52 4f 52 5f 49 4e 56 41 4c 49 44 5f 46 49 4c 54 ROR_INVALID_FILT
3df0: 45 52 5f 44 52 49 56 45 52 20 20 20 20 20 20 20 ER_DRIVER
3e00: 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 = APPLICATION_ER
3e10: 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 ROR_MASK | ERROR
3e20: 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 _SEVERITY_ERROR
3e30: 7c 20 30 78 32 32 43 2c 0d 0a 09 45 52 52 4f 52 | 0x22C,...ERROR
3e40: 5f 4e 4f 4e 5f 57 49 4e 44 4f 57 53 5f 4e 54 5f _NON_WINDOWS_NT_
3e50: 44 52 49 56 45 52 20 20 20 20 20 20 20 3d 20 41 DRIVER = A
3e60: 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 PPLICATION_ERROR
3e70: 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 _MASK | ERROR_SE
3e80: 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 VERITY_ERROR | 0
3e90: 78 32 32 44 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f x22D,...ERROR_NO
3ea0: 4e 5f 57 49 4e 44 4f 57 53 5f 44 52 49 56 45 52 N_WINDOWS_DRIVER
3eb0: 20 20 20 20 20 20 20 20 20 20 3d 20 41 50 50 4c = APPL
3ec0: 49 43 41 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 ICATION_ERROR_MA
3ed0: 53 4b 20 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 SK | ERROR_SEVER
3ee0: 49 54 59 5f 45 52 52 4f 52 20 7c 20 30 78 32 32 ITY_ERROR | 0x22
3ef0: 45 2c 0d 0a 09 45 52 52 4f 52 5f 4e 4f 5f 43 41 E,...ERROR_NO_CA
3f00: 54 41 4c 4f 47 5f 46 4f 52 5f 4f 45 4d 5f 49 4e TALOG_FOR_OEM_IN
3f10: 46 20 20 20 20 20 20 3d 20 41 50 50 4c 49 43 41 F = APPLICA
3f20: 54 49 4f 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 TION_ERROR_MASK
3f30: 7c 20 45 52 52 4f 52 5f 53 45 56 45 52 49 54 59 | ERROR_SEVERITY
3f40: 5f 45 52 52 4f 52 20 7c 20 30 78 32 32 46 2c 0d _ERROR | 0x22F,.
3f50: 0a 09 45 52 52 4f 52 5f 44 45 56 49 4e 53 54 41 ..ERROR_DEVINSTA
3f60: 4c 4c 5f 51 55 45 55 45 5f 4e 4f 4e 4e 41 54 49 LL_QUEUE_NONNATI
3f70: 56 45 20 20 3d 20 41 50 50 4c 49 43 41 54 49 4f VE = APPLICATIO
3f80: 4e 5f 45 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 N_ERROR_MASK | E
3f90: 52 52 4f 52 5f 53 45 56 45 52 49 54 59 5f 45 52 RROR_SEVERITY_ER
3fa0: 52 4f 52 20 7c 20 30 78 32 33 30 2c 0d 0a 09 45 ROR | 0x230,...E
3fb0: 52 52 4f 52 5f 4e 4f 54 5f 44 49 53 41 42 4c 45 RROR_NOT_DISABLE
3fc0: 41 42 4c 45 20 20 20 20 20 20 20 20 20 20 20 20 ABLE
3fd0: 20 3d 20 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 = APPLICATION_E
3fe0: 52 52 4f 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f RROR_MASK | ERRO
3ff0: 52 5f 53 45 56 45 52 49 54 59 5f 45 52 52 4f 52 R_SEVERITY_ERROR
4000: 20 7c 20 30 78 32 33 31 2c 0d 0a 09 45 52 52 4f | 0x231,...ERRO
4010: 52 5f 43 41 4e 54 5f 52 45 4d 4f 56 45 5f 44 45 R_CANT_REMOVE_DE
4020: 56 49 4e 53 54 20 20 20 20 20 20 20 20 20 3d 20 VINST =
4030: 41 50 50 4c 49 43 41 54 49 4f 4e 5f 45 52 52 4f APPLICATION_ERRO
4040: 52 5f 4d 41 53 4b 20 7c 20 45 52 52 4f 52 5f 53 R_MASK | ERROR_S
4050: 45 56 45 52 49 54 59 5f 45 52 52 4f 52 20 7c 20 EVERITY_ERROR |
4060: 30 78 32 33 32 0d 0a 7d 0d 0a 0d 0a 64 65 70 72 0x232..}....depr
4070: 65 63 61 74 65 64 20 65 6e 75 6d 20 3a 20 44 57 ecated enum : DW
4080: 4f 52 44 20 7b 0d 0a 09 45 52 52 4f 52 5f 4e 4f ORD {...ERROR_NO
4090: 5f 44 45 46 41 55 4c 54 5f 49 4e 54 45 52 46 41 _DEFAULT_INTERFA
40a0: 43 45 5f 44 45 56 49 43 45 20 3d 20 45 52 52 4f CE_DEVICE = ERRO
40b0: 52 5f 4e 4f 5f 44 45 46 41 55 4c 54 5f 44 45 56 R_NO_DEFAULT_DEV
40c0: 49 43 45 5f 49 4e 54 45 52 46 41 43 45 2c 0d 0a ICE_INTERFACE,..
40d0: 09 45 52 52 4f 52 5f 49 4e 54 45 52 46 41 43 45 .ERROR_INTERFACE
40e0: 5f 44 45 56 49 43 45 5f 41 43 54 49 56 45 20 20 _DEVICE_ACTIVE
40f0: 20 20 20 3d 20 45 52 52 4f 52 5f 44 45 56 49 43 = ERROR_DEVIC
4100: 45 5f 49 4e 54 45 52 46 41 43 45 5f 41 43 54 49 E_INTERFACE_ACTI
4110: 56 45 2c 0d 0a 09 45 52 52 4f 52 5f 49 4e 54 45 VE,...ERROR_INTE
4120: 52 46 41 43 45 5f 44 45 56 49 43 45 5f 52 45 4d RFACE_DEVICE_REM
4130: 4f 56 45 44 20 20 20 20 3d 20 45 52 52 4f 52 5f OVED = ERROR_
4140: 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 43 45 DEVICE_INTERFACE
4150: 5f 52 45 4d 4f 56 45 44 2c 0d 0a 09 45 52 52 4f _REMOVED,...ERRO
4160: 52 5f 4e 4f 5f 53 55 43 48 5f 49 4e 54 45 52 46 R_NO_SUCH_INTERF
4170: 41 43 45 5f 44 45 56 49 43 45 20 20 20 20 3d 20 ACE_DEVICE =
4180: 45 52 52 4f 52 5f 4e 4f 5f 53 55 43 48 5f 44 45 ERROR_NO_SUCH_DE
4190: 56 49 43 45 5f 49 4e 54 45 52 46 41 43 45 2c 0d VICE_INTERFACE,.
41a0: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 55 49 4e .}....enum : UIN
41b0: 54 20 7b 0d 0a 09 46 49 4c 45 4f 50 5f 43 4f 50 T {...FILEOP_COP
41c0: 59 2c 0d 0a 09 46 49 4c 45 4f 50 5f 52 45 4e 41 Y,...FILEOP_RENA
41d0: 4d 45 2c 0d 0a 09 46 49 4c 45 4f 50 5f 44 45 4c ME,...FILEOP_DEL
41e0: 45 54 45 2c 0d 0a 09 46 49 4c 45 4f 50 5f 42 41 ETE,...FILEOP_BA
41f0: 43 4b 55 50 2c 0d 0a 09 46 49 4c 45 4f 50 5f 4e CKUP,...FILEOP_N
4200: 45 57 50 41 54 48 2c 20 2f 2f 20 3d 20 34 0d 0a EWPATH, // = 4..
4210: 09 46 49 4c 45 4f 50 5f 41 42 4f 52 54 20 3d 20 .FILEOP_ABORT =
4220: 30 2c 0d 0a 09 46 49 4c 45 4f 50 5f 44 4f 49 54 0,...FILEOP_DOIT
4230: 2c 0d 0a 09 46 49 4c 45 4f 50 5f 53 4b 49 50 2c ,...FILEOP_SKIP,
4240: 20 2f 2f 20 3d 20 32 0d 0a 09 46 49 4c 45 4f 50 // = 2...FILEOP
4250: 5f 52 45 54 52 59 20 3d 20 46 49 4c 45 4f 50 5f _RETRY = FILEOP_
4260: 44 4f 49 54 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 DOIT..}....enum
4270: 3a 20 55 49 4e 54 20 7b 0d 0a 09 46 49 4c 45 5f : UINT {...FILE_
4280: 43 4f 4d 50 52 45 53 53 49 4f 4e 5f 4e 4f 4e 45 COMPRESSION_NONE
4290: 2c 0d 0a 09 46 49 4c 45 5f 43 4f 4d 50 52 45 53 ,...FILE_COMPRES
42a0: 53 49 4f 4e 5f 57 49 4e 4c 5a 41 2c 0d 0a 09 46 SION_WINLZA,...F
42b0: 49 4c 45 5f 43 4f 4d 50 52 45 53 53 49 4f 4e 5f ILE_COMPRESSION_
42c0: 4d 53 5a 49 50 2c 0d 0a 09 46 49 4c 45 5f 43 4f MSZIP,...FILE_CO
42d0: 4d 50 52 45 53 53 49 4f 4e 5f 4e 54 43 41 42 20 MPRESSION_NTCAB
42e0: 2f 2f 20 3d 20 33 0d 0a 7d 0d 0a 0d 0a 65 6e 75 // = 3..}....enu
42f0: 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 46 4c m : DWORD {...FL
4300: 47 5f 41 44 44 52 45 47 5f 54 59 50 45 5f 53 5a G_ADDREG_TYPE_SZ
4310: 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 = 0x0000
4320: 30 30 30 30 2c 0d 0a 09 46 4c 47 5f 41 44 44 52 0000,...FLG_ADDR
4330: 45 47 5f 42 49 4e 56 41 4c 55 45 54 59 50 45 20 EG_BINVALUETYPE
4340: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d = 0x00000001,.
4350: 0a 09 46 4c 47 5f 41 44 44 52 45 47 5f 4e 4f 43 ..FLG_ADDREG_NOC
4360: 4c 4f 42 42 45 52 20 20 20 20 20 20 3d 20 30 78 LOBBER = 0x
4370: 30 30 30 30 30 30 30 32 2c 0d 0a 09 46 4c 47 5f 00000002,...FLG_
4380: 41 44 44 52 45 47 5f 44 45 4c 56 41 4c 20 20 20 ADDREG_DELVAL
4390: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
43a0: 30 34 2c 0d 0a 09 46 4c 47 5f 41 44 44 52 45 47 04,...FLG_ADDREG
43b0: 5f 41 50 50 45 4e 44 20 20 20 20 20 20 20 20 20 _APPEND
43c0: 3d 20 30 78 30 30 30 30 30 30 30 38 2c 0d 0a 09 = 0x00000008,...
43d0: 46 4c 47 5f 41 44 44 52 45 47 5f 4b 45 59 4f 4e FLG_ADDREG_KEYON
43e0: 4c 59 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 LY = 0x00
43f0: 30 30 30 30 31 30 2c 0d 0a 09 46 4c 47 5f 41 44 000010,...FLG_AD
4400: 44 52 45 47 5f 4f 56 45 52 57 52 49 54 45 4f 4e DREG_OVERWRITEON
4410: 4c 59 20 20 3d 20 30 78 30 30 30 30 30 30 32 30 LY = 0x00000020
4420: 2c 0d 0a 09 46 4c 47 5f 41 44 44 52 45 47 5f 54 ,...FLG_ADDREG_T
4430: 59 50 45 5f 4d 55 4c 54 49 5f 53 5a 20 20 3d 20 YPE_MULTI_SZ =
4440: 30 78 30 30 30 31 30 30 30 30 2c 0d 0a 09 46 4c 0x00010000,...FL
4450: 47 5f 41 44 44 52 45 47 5f 54 59 50 45 5f 45 58 G_ADDREG_TYPE_EX
4460: 50 41 4e 44 5f 53 5a 20 3d 20 30 78 30 30 30 32 PAND_SZ = 0x0002
4470: 30 30 30 30 2c 0d 0a 09 46 4c 47 5f 41 44 44 52 0000,...FLG_ADDR
4480: 45 47 5f 54 59 50 45 5f 42 49 4e 41 52 59 20 20 EG_TYPE_BINARY
4490: 20 20 3d 20 30 78 30 30 30 30 30 30 30 30 20 7c = 0x00000000 |
44a0: 20 46 4c 47 5f 41 44 44 52 45 47 5f 42 49 4e 56 FLG_ADDREG_BINV
44b0: 41 4c 55 45 54 59 50 45 2c 0d 0a 09 46 4c 47 5f ALUETYPE,...FLG_
44c0: 41 44 44 52 45 47 5f 54 59 50 45 5f 44 57 4f 52 ADDREG_TYPE_DWOR
44d0: 44 20 20 20 20 20 3d 20 30 78 30 30 30 31 30 30 D = 0x000100
44e0: 30 30 20 7c 20 46 4c 47 5f 41 44 44 52 45 47 5f 00 | FLG_ADDREG_
44f0: 42 49 4e 56 41 4c 55 45 54 59 50 45 2c 0d 0a 09 BINVALUETYPE,...
4500: 46 4c 47 5f 41 44 44 52 45 47 5f 54 59 50 45 5f FLG_ADDREG_TYPE_
4510: 4e 4f 4e 45 20 20 20 20 20 20 3d 20 30 78 30 30 NONE = 0x00
4520: 30 32 30 30 30 30 20 7c 20 46 4c 47 5f 41 44 44 020000 | FLG_ADD
4530: 52 45 47 5f 42 49 4e 56 41 4c 55 45 54 59 50 45 REG_BINVALUETYPE
4540: 2c 0d 0a 09 46 4c 47 5f 41 44 44 52 45 47 5f 54 ,...FLG_ADDREG_T
4550: 59 50 45 5f 4d 41 53 4b 20 20 20 20 20 20 3d 20 YPE_MASK =
4560: 30 78 46 46 46 46 30 30 30 30 20 7c 20 46 4c 47 0xFFFF0000 | FLG
4570: 5f 41 44 44 52 45 47 5f 42 49 4e 56 41 4c 55 45 _ADDREG_BINVALUE
4580: 54 59 50 45 0d 0a 7d 0d 0a 0d 0a 73 74 61 74 69 TYPE..}....stati
4590: 63 20 69 66 28 5f 53 45 54 55 50 41 50 49 5f 56 c if(_SETUPAPI_V
45a0: 45 52 20 3e 3d 20 30 78 30 35 30 31 29 20 7b 0d ER >= 0x0501) {.
45b0: 0a 09 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
45c0: 0d 0a 09 09 46 4c 47 5f 41 44 44 52 45 47 5f 36 ....FLG_ADDREG_6
45d0: 34 42 49 54 4b 45 59 20 20 20 20 20 20 20 3d 20 4BITKEY =
45e0: 30 78 30 30 30 30 31 30 30 30 2c 0d 0a 09 09 46 0x00001000,....F
45f0: 4c 47 5f 41 44 44 52 45 47 5f 4b 45 59 4f 4e 4c LG_ADDREG_KEYONL
4600: 59 5f 43 4f 4d 4d 4f 4e 20 3d 20 30 78 30 30 30 Y_COMMON = 0x000
4610: 30 32 30 30 30 2c 0d 0a 09 09 46 4c 47 5f 41 44 02000,....FLG_AD
4620: 44 52 45 47 5f 33 32 42 49 54 4b 45 59 20 20 20 DREG_32BITKEY
4630: 20 20 20 20 3d 20 30 78 30 30 30 30 34 30 30 30 = 0x00004000
4640: 2c 0d 0a 09 09 46 4c 47 5f 41 44 44 52 45 47 5f ,....FLG_ADDREG_
4650: 44 45 4c 52 45 47 5f 42 49 54 20 20 20 20 20 3d DELREG_BIT =
4660: 20 30 78 30 30 30 30 38 30 30 30 0d 0a 09 7d 0d 0x00008000...}.
4670: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f .}....enum : DWO
4680: 52 44 20 7b 0d 0a 09 46 4c 47 5f 44 45 4c 52 45 RD {...FLG_DELRE
4690: 47 5f 56 41 4c 55 45 20 3d 20 30 78 30 30 30 30 G_VALUE = 0x0000
46a0: 30 30 30 30 0d 0a 7d 0d 0a 0d 0a 73 74 61 74 69 0000..}....stati
46b0: 63 20 69 66 28 5f 53 45 54 55 50 41 50 49 5f 56 c if(_SETUPAPI_V
46c0: 45 52 20 3e 3d 20 30 78 30 35 30 31 29 20 7b 0d ER >= 0x0501) {.
46d0: 0a 09 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
46e0: 0d 0a 09 09 46 4c 47 5f 44 45 4c 52 45 47 5f 54 ....FLG_DELREG_T
46f0: 59 50 45 5f 4d 41 53 4b 20 20 20 20 20 20 20 20 YPE_MASK
4700: 20 20 3d 20 46 4c 47 5f 41 44 44 52 45 47 5f 54 = FLG_ADDREG_T
4710: 59 50 45 5f 4d 41 53 4b 2c 0d 0a 09 09 46 4c 47 YPE_MASK,....FLG
4720: 5f 44 45 4c 52 45 47 5f 54 59 50 45 5f 53 5a 20 _DELREG_TYPE_SZ
4730: 20 20 20 20 20 20 20 20 20 20 20 3d 20 46 4c 47 = FLG
4740: 5f 41 44 44 52 45 47 5f 54 59 50 45 5f 53 5a 2c _ADDREG_TYPE_SZ,
4750: 0d 0a 09 09 46 4c 47 5f 44 45 4c 52 45 47 5f 54 ....FLG_DELREG_T
4760: 59 50 45 5f 4d 55 4c 54 49 5f 53 5a 20 20 20 20 YPE_MULTI_SZ
4770: 20 20 3d 20 46 4c 47 5f 41 44 44 52 45 47 5f 54 = FLG_ADDREG_T
4780: 59 50 45 5f 4d 55 4c 54 49 5f 53 5a 2c 0d 0a 09 YPE_MULTI_SZ,...
4790: 09 46 4c 47 5f 44 45 4c 52 45 47 5f 54 59 50 45 .FLG_DELREG_TYPE
47a0: 5f 45 58 50 41 4e 44 5f 53 5a 20 20 20 20 20 3d _EXPAND_SZ =
47b0: 20 46 4c 47 5f 41 44 44 52 45 47 5f 54 59 50 45 FLG_ADDREG_TYPE
47c0: 5f 45 58 50 41 4e 44 5f 53 5a 2c 0d 0a 09 09 46 _EXPAND_SZ,....F
47d0: 4c 47 5f 44 45 4c 52 45 47 5f 54 59 50 45 5f 42 LG_DELREG_TYPE_B
47e0: 49 4e 41 52 59 20 20 20 20 20 20 20 20 3d 20 46 INARY = F
47f0: 4c 47 5f 41 44 44 52 45 47 5f 54 59 50 45 5f 42 LG_ADDREG_TYPE_B
4800: 49 4e 41 52 59 2c 0d 0a 09 09 46 4c 47 5f 44 45 INARY,....FLG_DE
4810: 4c 52 45 47 5f 54 59 50 45 5f 44 57 4f 52 44 20 LREG_TYPE_DWORD
4820: 20 20 20 20 20 20 20 20 3d 20 46 4c 47 5f 41 44 = FLG_AD
4830: 44 52 45 47 5f 54 59 50 45 5f 44 57 4f 52 44 2c DREG_TYPE_DWORD,
4840: 0d 0a 09 09 46 4c 47 5f 44 45 4c 52 45 47 5f 54 ....FLG_DELREG_T
4850: 59 50 45 5f 4e 4f 4e 45 20 20 20 20 20 20 20 20 YPE_NONE
4860: 20 20 3d 20 46 4c 47 5f 41 44 44 52 45 47 5f 54 = FLG_ADDREG_T
4870: 59 50 45 5f 4e 4f 4e 45 2c 0d 0a 09 09 46 4c 47 YPE_NONE,....FLG
4880: 5f 44 45 4c 52 45 47 5f 36 34 42 49 54 4b 45 59 _DELREG_64BITKEY
4890: 20 20 20 20 20 20 20 20 20 20 20 3d 20 46 4c 47 = FLG
48a0: 5f 41 44 44 52 45 47 5f 36 34 42 49 54 4b 45 59 _ADDREG_64BITKEY
48b0: 2c 0d 0a 09 09 46 4c 47 5f 44 45 4c 52 45 47 5f ,....FLG_DELREG_
48c0: 4b 45 59 4f 4e 4c 59 5f 43 4f 4d 4d 4f 4e 20 20 KEYONLY_COMMON
48d0: 20 20 20 3d 20 46 4c 47 5f 41 44 44 52 45 47 5f = FLG_ADDREG_
48e0: 4b 45 59 4f 4e 4c 59 5f 43 4f 4d 4d 4f 4e 2c 0d KEYONLY_COMMON,.
48f0: 0a 09 09 46 4c 47 5f 44 45 4c 52 45 47 5f 33 32 ...FLG_DELREG_32
4900: 42 49 54 4b 45 59 20 20 20 20 20 20 20 20 20 20 BITKEY
4910: 20 3d 20 46 4c 47 5f 41 44 44 52 45 47 5f 33 32 = FLG_ADDREG_32
4920: 42 49 54 4b 45 59 2c 0d 0a 09 09 46 4c 47 5f 44 BITKEY,....FLG_D
4930: 45 4c 52 45 47 5f 4f 50 45 52 41 54 49 4f 4e 5f ELREG_OPERATION_
4940: 4d 41 53 4b 20 20 20 20 20 3d 20 30 78 30 30 30 MASK = 0x000
4950: 30 30 30 46 45 2c 0d 0a 09 09 46 4c 47 5f 44 45 000FE,....FLG_DE
4960: 4c 52 45 47 5f 4d 55 4c 54 49 5f 53 5a 5f 44 45 LREG_MULTI_SZ_DE
4970: 4c 53 54 52 49 4e 47 20 3d 20 30 78 30 30 30 30 LSTRING = 0x0000
4980: 30 30 30 32 20 7c 20 46 4c 47 5f 44 45 4c 52 45 0002 | FLG_DELRE
4990: 47 5f 54 59 50 45 5f 4d 55 4c 54 49 5f 53 5a 20 G_TYPE_MULTI_SZ
49a0: 7c 20 46 4c 47 5f 41 44 44 52 45 47 5f 44 45 4c | FLG_ADDREG_DEL
49b0: 52 45 47 5f 42 49 54 0d 0a 09 7d 0d 0a 7d 0d 0a REG_BIT...}..}..
49c0: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
49d0: 0d 0a 09 46 4c 47 5f 42 49 54 52 45 47 5f 43 4c ...FLG_BITREG_CL
49e0: 45 41 52 42 49 54 53 20 3d 20 30 78 30 30 30 30 EARBITS = 0x0000
49f0: 30 30 30 30 2c 0d 0a 09 46 4c 47 5f 42 49 54 52 0000,...FLG_BITR
4a00: 45 47 5f 53 45 54 42 49 54 53 20 20 20 3d 20 30 EG_SETBITS = 0
4a10: 78 30 30 30 30 30 30 30 31 0d 0a 7d 0d 0a 0d 0a x00000001..}....
4a20: 73 74 61 74 69 63 20 69 66 28 5f 53 45 54 55 50 static if(_SETUP
4a30: 41 50 49 5f 56 45 52 20 3e 3d 20 30 78 30 35 30 API_VER >= 0x050
4a40: 31 29 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 44 57 1) {...enum : DW
4a50: 4f 52 44 20 7b 0d 0a 09 09 46 4c 47 5f 42 49 54 ORD {....FLG_BIT
4a60: 52 45 47 5f 36 34 42 49 54 4b 45 59 20 3d 20 30 REG_64BITKEY = 0
4a70: 78 30 30 30 30 31 30 30 30 2c 0d 0a 09 09 46 4c x00001000,....FL
4a80: 47 5f 42 49 54 52 45 47 5f 33 32 42 49 54 4b 45 G_BITREG_32BITKE
4a90: 59 20 3d 20 30 78 30 30 30 30 34 30 30 30 0d 0a Y = 0x00004000..
4aa0: 09 7d 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 .}..}....enum :
4ab0: 44 57 4f 52 44 20 7b 0d 0a 09 46 4c 47 5f 50 52 DWORD {...FLG_PR
4ac0: 4f 46 49 54 45 4d 5f 43 55 52 52 45 4e 54 55 53 OFITEM_CURRENTUS
4ad0: 45 52 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c ER = 0x00000001,
4ae0: 0d 0a 09 46 4c 47 5f 50 52 4f 46 49 54 45 4d 5f ...FLG_PROFITEM_
4af0: 44 45 4c 45 54 45 20 20 20 20 20 20 3d 20 30 78 DELETE = 0x
4b00: 30 30 30 30 30 30 30 32 2c 0d 0a 09 46 4c 47 5f 00000002,...FLG_
4b10: 50 52 4f 46 49 54 45 4d 5f 47 52 4f 55 50 20 20 PROFITEM_GROUP
4b20: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
4b30: 34 2c 0d 0a 09 46 4c 47 5f 50 52 4f 46 49 54 45 4,...FLG_PROFITE
4b40: 4d 5f 43 53 49 44 4c 20 20 20 20 20 20 20 3d 20 M_CSIDL =
4b50: 30 78 30 30 30 30 30 30 30 38 0d 0a 7d 0d 0a 0d 0x00000008..}...
4b60: 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d .enum : DWORD {.
4b70: 0a 09 46 4c 47 5f 52 45 47 53 56 52 5f 44 4c 4c ..FLG_REGSVR_DLL
4b80: 52 45 47 49 53 54 45 52 20 3d 20 30 78 30 30 30 REGISTER = 0x000
4b90: 30 30 30 30 31 2c 0d 0a 09 46 4c 47 5f 52 45 47 00001,...FLG_REG
4ba0: 53 56 52 5f 44 4c 4c 49 4e 53 54 41 4c 4c 20 20 SVR_DLLINSTALL
4bb0: 3d 20 30 78 30 30 30 30 30 30 30 32 0d 0a 7d 0d = 0x00000002..}.
4bc0: 0a 0d 0a 65 6e 75 6d 20 7b 0d 0a 09 49 44 44 5f ...enum {...IDD_
4bd0: 44 59 4e 41 57 49 5a 5f 46 49 52 53 54 50 41 47 DYNAWIZ_FIRSTPAG
4be0: 45 20 3d 20 31 30 30 30 30 2c 0d 0a 09 49 44 44 E = 10000,...IDD
4bf0: 5f 44 59 4e 41 57 49 5a 5f 53 45 4c 45 43 54 5f _DYNAWIZ_SELECT_
4c00: 50 52 45 56 50 41 47 45 2c 0d 0a 09 49 44 44 5f PREVPAGE,...IDD_
4c10: 44 59 4e 41 57 49 5a 5f 53 45 4c 45 43 54 5f 4e DYNAWIZ_SELECT_N
4c20: 45 58 54 50 41 47 45 2c 0d 0a 09 49 44 44 5f 44 EXTPAGE,...IDD_D
4c30: 59 4e 41 57 49 5a 5f 41 4e 41 4c 59 5a 45 5f 50 YNAWIZ_ANALYZE_P
4c40: 52 45 56 50 41 47 45 2c 0d 0a 09 49 44 44 5f 44 REVPAGE,...IDD_D
4c50: 59 4e 41 57 49 5a 5f 41 4e 41 4c 59 5a 45 5f 4e YNAWIZ_ANALYZE_N
4c60: 45 58 54 50 41 47 45 2c 20 2f 2f 20 3d 20 31 30 EXTPAGE, // = 10
4c70: 30 34 0d 0a 09 49 44 44 5f 44 59 4e 41 57 49 5a 04...IDD_DYNAWIZ
4c80: 5f 49 4e 53 54 41 4c 4c 44 45 54 45 43 54 45 44 _INSTALLDETECTED
4c90: 5f 50 52 45 56 50 41 47 45 20 3d 20 31 30 30 30 _PREVPAGE = 1000
4ca0: 36 2c 0d 0a 09 49 44 44 5f 44 59 4e 41 57 49 5a 6,...IDD_DYNAWIZ
4cb0: 5f 49 4e 53 54 41 4c 4c 44 45 54 45 43 54 45 44 _INSTALLDETECTED
4cc0: 5f 4e 45 58 54 50 41 47 45 2c 0d 0a 09 49 44 44 _NEXTPAGE,...IDD
4cd0: 5f 44 59 4e 41 57 49 5a 5f 49 4e 53 54 41 4c 4c _DYNAWIZ_INSTALL
4ce0: 44 45 54 45 43 54 45 44 5f 4e 4f 44 45 56 53 2c DETECTED_NODEVS,
4cf0: 0d 0a 09 49 44 44 5f 44 59 4e 41 57 49 5a 5f 53 ...IDD_DYNAWIZ_S
4d00: 45 4c 45 43 54 44 45 56 5f 50 41 47 45 2c 0d 0a ELECTDEV_PAGE,..
4d10: 09 49 44 44 5f 44 59 4e 41 57 49 5a 5f 41 4e 41 .IDD_DYNAWIZ_ANA
4d20: 4c 59 5a 45 44 45 56 5f 50 41 47 45 2c 0d 0a 09 LYZEDEV_PAGE,...
4d30: 49 44 44 5f 44 59 4e 41 57 49 5a 5f 49 4e 53 54 IDD_DYNAWIZ_INST
4d40: 41 4c 4c 44 45 54 45 43 54 45 44 44 45 56 53 5f ALLDETECTEDDEVS_
4d50: 50 41 47 45 2c 0d 0a 09 49 44 44 5f 44 59 4e 41 PAGE,...IDD_DYNA
4d60: 57 49 5a 5f 53 45 4c 45 43 54 43 4c 41 53 53 5f WIZ_SELECTCLASS_
4d70: 50 41 47 45 2c 20 2f 2f 20 3d 20 31 30 30 31 32 PAGE, // = 10012
4d80: 0d 0a 09 4d 49 4e 5f 49 44 44 5f 44 59 4e 41 57 ...MIN_IDD_DYNAW
4d90: 49 5a 5f 52 45 53 4f 55 52 43 45 5f 49 44 20 3d IZ_RESOURCE_ID =
4da0: 20 31 30 30 30 30 2c 0d 0a 09 4d 41 58 5f 49 44 10000,...MAX_ID
4db0: 44 5f 44 59 4e 41 57 49 5a 5f 52 45 53 4f 55 52 D_DYNAWIZ_RESOUR
4dc0: 43 45 5f 49 44 20 3d 20 31 31 30 30 30 0d 0a 7d CE_ID = 11000..}
4dd0: 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 ....enum : DWORD
4de0: 20 7b 0d 0a 09 49 44 46 5f 4e 4f 42 52 4f 57 53 {...IDF_NOBROWS
4df0: 45 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 E = 0x000000
4e00: 30 31 2c 0d 0a 09 49 44 46 5f 4e 4f 53 4b 49 50 01,...IDF_NOSKIP
4e10: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 = 0x00000
4e20: 30 30 32 2c 0d 0a 09 49 44 46 5f 4e 4f 44 45 54 002,...IDF_NODET
4e30: 41 49 4c 53 20 20 20 20 3d 20 30 78 30 30 30 30 AILS = 0x0000
4e40: 30 30 30 34 2c 0d 0a 09 49 44 46 5f 4e 4f 43 4f 0004,...IDF_NOCO
4e50: 4d 50 52 45 53 53 45 44 20 3d 20 30 78 30 30 30 MPRESSED = 0x000
4e60: 30 30 30 30 38 2c 0d 0a 09 49 44 46 5f 43 48 45 00008,...IDF_CHE
4e70: 43 4b 46 49 52 53 54 20 20 20 3d 20 30 78 30 30 CKFIRST = 0x00
4e80: 30 30 30 31 30 30 2c 0d 0a 09 49 44 46 5f 4e 4f 000100,...IDF_NO
4e90: 42 45 45 50 20 20 20 20 20 20 20 3d 20 30 78 30 BEEP = 0x0
4ea0: 30 30 30 30 32 30 30 2c 0d 0a 09 49 44 46 5f 4e 0000200,...IDF_N
4eb0: 4f 46 4f 52 45 47 52 4f 55 4e 44 20 3d 20 30 78 OFOREGROUND = 0x
4ec0: 30 30 30 30 30 34 30 30 2c 0d 0a 09 49 44 46 5f 00000400,...IDF_
4ed0: 57 41 52 4e 49 46 53 4b 49 50 20 20 20 3d 20 30 WARNIFSKIP = 0
4ee0: 78 30 30 30 30 30 38 30 30 0d 0a 7d 0d 0a 0d 0a x00000800..}....
4ef0: 73 74 61 74 69 63 20 69 66 28 5f 53 45 54 55 50 static if(_SETUP
4f00: 41 50 49 5f 56 45 52 20 3e 3d 20 30 78 30 35 30 API_VER >= 0x050
4f10: 31 29 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 44 57 1) {...enum : DW
4f20: 4f 52 44 20 7b 0d 0a 09 09 49 44 46 5f 4e 4f 52 ORD {....IDF_NOR
4f30: 45 4d 4f 56 41 42 4c 45 4d 45 44 49 41 50 52 4f EMOVABLEMEDIAPRO
4f40: 4d 50 54 20 3d 20 30 78 30 30 30 30 31 30 30 30 MPT = 0x00001000
4f50: 2c 0d 0a 09 09 49 44 46 5f 55 53 45 44 49 53 4b ,....IDF_USEDISK
4f60: 4e 41 4d 45 41 53 50 52 4f 4d 50 54 20 20 20 20 NAMEASPROMPT
4f70: 3d 20 30 78 30 30 30 30 32 30 30 30 2c 0d 0a 09 = 0x00002000,...
4f80: 09 49 44 46 5f 4f 45 4d 44 49 53 4b 20 20 20 20 .IDF_OEMDISK
4f90: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 = 0x
4fa0: 38 30 30 30 30 30 30 30 0d 0a 09 7d 0d 0a 7d 0d 80000000...}..}.
4fb0: 0a 0d 0a 65 6e 75 6d 20 7b 0d 0a 09 49 44 49 5f ...enum {...IDI_
4fc0: 52 45 53 4f 55 52 43 45 46 49 52 53 54 20 20 20 RESOURCEFIRST
4fd0: 20 20 20 20 20 20 20 3d 20 31 35 39 2c 0d 0a 09 = 159,...
4fe0: 49 44 49 5f 52 45 53 4f 55 52 43 45 20 20 20 20 IDI_RESOURCE
4ff0: 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 35 39 = 159
5000: 2c 0d 0a 09 49 44 49 5f 52 45 53 4f 55 52 43 45 ,...IDI_RESOURCE
5010: 4c 41 53 54 20 20 20 20 20 20 20 20 20 20 20 3d LAST =
5020: 20 31 36 31 2c 0d 0a 09 49 44 49 5f 52 45 53 4f 161,...IDI_RESO
5030: 55 52 43 45 4f 56 45 52 4c 41 59 46 49 52 53 54 URCEOVERLAYFIRST
5040: 20 20 20 3d 20 31 36 31 2c 0d 0a 09 49 44 49 5f = 161,...IDI_
5050: 52 45 53 4f 55 52 43 45 4f 56 45 52 4c 41 59 4c RESOURCEOVERLAYL
5060: 41 53 54 20 20 20 20 3d 20 31 36 31 2c 0d 0a 09 AST = 161,...
5070: 49 44 49 5f 43 4f 4e 46 4c 49 43 54 20 20 20 20 IDI_CONFLICT
5080: 20 20 20 20 20 20 20 20 20 20 20 3d 20 31 36 31 = 161
5090: 2c 0d 0a 09 49 44 49 5f 50 52 4f 42 4c 45 4d 5f ,...IDI_PROBLEM_
50a0: 4f 56 4c 20 20 20 20 20 20 20 20 20 20 20 20 3d OVL =
50b0: 20 35 30 30 2c 0d 0a 09 49 44 49 5f 44 49 53 41 500,...IDI_DISA
50c0: 42 4c 45 44 5f 4f 56 4c 20 20 20 20 20 20 20 20 BLED_OVL
50d0: 20 20 20 3d 20 35 30 31 2c 0d 0a 09 49 44 49 5f = 501,...IDI_
50e0: 46 4f 52 43 45 44 5f 4f 56 4c 20 20 20 20 20 20 FORCED_OVL
50f0: 20 20 20 20 20 20 20 3d 20 35 30 32 2c 0d 0a 09 = 502,...
5100: 49 44 49 5f 43 4c 41 53 53 49 43 4f 4e 5f 4f 56 IDI_CLASSICON_OV
5110: 45 52 4c 41 59 46 49 52 53 54 20 3d 20 35 30 30 ERLAYFIRST = 500
5120: 2c 0d 0a 09 49 44 49 5f 43 4c 41 53 53 49 43 4f ,...IDI_CLASSICO
5130: 4e 5f 4f 56 45 52 4c 41 59 4c 41 53 54 20 20 3d N_OVERLAYLAST =
5140: 20 35 30 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 502..}....enum
5150: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 49 4e 46 5f : DWORD {...INF_
5160: 53 54 59 4c 45 5f 4e 4f 4e 45 20 20 20 20 20 20 STYLE_NONE
5170: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 30 = 0x00000000
5180: 2c 0d 0a 09 49 4e 46 5f 53 54 59 4c 45 5f 4f 4c ,...INF_STYLE_OL
5190: 44 4e 54 20 20 20 20 20 20 20 20 20 3d 20 30 78 DNT = 0x
51a0: 30 30 30 30 30 30 30 31 2c 0d 0a 09 49 4e 46 5f 00000001,...INF_
51b0: 53 54 59 4c 45 5f 57 49 4e 34 20 20 20 20 20 20 STYLE_WIN4
51c0: 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 = 0x00000002
51d0: 2c 0d 0a 09 49 4e 46 5f 53 54 59 4c 45 5f 43 41 ,...INF_STYLE_CA
51e0: 43 48 45 5f 45 4e 41 42 4c 45 20 20 3d 20 30 78 CHE_ENABLE = 0x
51f0: 30 30 30 30 30 30 31 30 2c 0d 0a 09 49 4e 46 5f 00000010,...INF_
5200: 53 54 59 4c 45 5f 43 41 43 48 45 5f 44 49 53 41 STYLE_CACHE_DISA
5210: 42 4c 45 20 3d 20 30 78 30 30 30 30 30 30 32 30 BLE = 0x00000020
5220: 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 ..}....enum : DW
5230: 4f 52 44 20 7b 0d 0a 09 49 4e 46 49 4e 46 4f 5f ORD {...INFINFO_
5240: 49 4e 46 5f 53 50 45 43 5f 49 53 5f 48 49 4e 46 INF_SPEC_IS_HINF
5250: 20 3d 20 31 2c 0d 0a 09 49 4e 46 49 4e 46 4f 5f = 1,...INFINFO_
5260: 49 4e 46 5f 4e 41 4d 45 5f 49 53 5f 41 42 53 4f INF_NAME_IS_ABSO
5270: 4c 55 54 45 2c 0d 0a 09 49 4e 46 49 4e 46 4f 5f LUTE,...INFINFO_
5280: 44 45 46 41 55 4c 54 5f 53 45 41 52 43 48 2c 0d DEFAULT_SEARCH,.
5290: 0a 09 49 4e 46 49 4e 46 4f 5f 52 45 56 45 52 53 ..INFINFO_REVERS
52a0: 45 5f 44 45 46 41 55 4c 54 5f 53 45 41 52 43 48 E_DEFAULT_SEARCH
52b0: 2c 0d 0a 09 49 4e 46 49 4e 46 4f 5f 49 4e 46 5f ,...INFINFO_INF_
52c0: 50 41 54 48 5f 4c 49 53 54 5f 53 45 41 52 43 48 PATH_LIST_SEARCH
52d0: 20 2f 2f 20 3d 20 35 0d 0a 7d 0d 0a 0d 0a 61 6c // = 5..}....al
52e0: 69 61 73 20 44 57 4f 52 44 20 4c 6f 67 53 65 76 ias DWORD LogSev
52f0: 65 72 69 74 79 3b 0d 0a 65 6e 75 6d 20 3a 20 4c erity;..enum : L
5300: 6f 67 53 65 76 65 72 69 74 79 20 7b 0d 0a 09 4c ogSeverity {...L
5310: 6f 67 53 65 76 49 6e 66 6f 72 6d 61 74 69 6f 6e ogSevInformation
5320: 2c 0d 0a 09 4c 6f 67 53 65 76 57 61 72 6e 69 6e ,...LogSevWarnin
5330: 67 2c 0d 0a 09 4c 6f 67 53 65 76 45 72 72 6f 72 g,...LogSevError
5340: 2c 0d 0a 09 4c 6f 67 53 65 76 46 61 74 61 6c 45 ,...LogSevFatalE
5350: 72 72 6f 72 2c 0d 0a 09 4c 6f 67 53 65 76 4d 61 rror,...LogSevMa
5360: 78 69 6d 75 6d 20 2f 2f 20 3d 20 34 0d 0a 7d 0d ximum // = 4..}.
5370: 0a 0d 0a 63 6f 6e 73 74 20 4d 41 58 5f 49 4e 53 ...const MAX_INS
5380: 54 41 4c 4c 57 49 5a 41 52 44 5f 44 59 4e 41 50 TALLWIZARD_DYNAP
5390: 41 47 45 53 20 3d 20 32 30 3b 0d 0a 0d 0a 65 6e AGES = 20;....en
53a0: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 4e um : DWORD {...N
53b0: 44 57 5f 49 4e 53 54 41 4c 4c 46 4c 41 47 5f 44 DW_INSTALLFLAG_D
53c0: 49 44 46 41 43 54 44 45 46 53 20 20 20 20 20 20 IDFACTDEFS
53d0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d = 0x00000001,.
53e0: 0a 09 4e 44 57 5f 49 4e 53 54 41 4c 4c 46 4c 41 ..NDW_INSTALLFLA
53f0: 47 5f 48 41 52 44 57 41 52 45 41 4c 4c 52 45 41 G_HARDWAREALLREA
5400: 44 59 49 4e 20 3d 20 30 78 30 30 30 30 30 30 30 DYIN = 0x0000000
5410: 32 2c 0d 0a 09 4e 44 57 5f 49 4e 53 54 41 4c 4c 2,...NDW_INSTALL
5420: 46 4c 41 47 5f 4e 45 45 44 53 48 55 54 44 4f 57 FLAG_NEEDSHUTDOW
5430: 4e 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 N = 0x0000
5440: 30 32 30 30 2c 0d 0a 09 4e 44 57 5f 49 4e 53 54 0200,...NDW_INST
5450: 41 4c 4c 46 4c 41 47 5f 45 58 50 52 45 53 53 49 ALLFLAG_EXPRESSI
5460: 4e 54 52 4f 20 20 20 20 20 20 20 3d 20 30 78 30 NTRO = 0x0
5470: 30 30 30 30 34 30 30 2c 0d 0a 09 4e 44 57 5f 49 0000400,...NDW_I
5480: 4e 53 54 41 4c 4c 46 4c 41 47 5f 53 4b 49 50 49 NSTALLFLAG_SKIPI
5490: 53 44 45 56 49 4e 53 54 41 4c 4c 45 44 20 3d 20 SDEVINSTALLED =
54a0: 30 78 30 30 30 30 30 38 30 30 2c 0d 0a 09 4e 44 0x00000800,...ND
54b0: 57 5f 49 4e 53 54 41 4c 4c 46 4c 41 47 5f 4e 4f W_INSTALLFLAG_NO
54c0: 44 45 54 45 43 54 45 44 44 45 56 53 20 20 20 20 DETECTEDDEVS
54d0: 20 3d 20 30 78 30 30 30 30 31 30 30 30 2c 0d 0a = 0x00001000,..
54e0: 09 4e 44 57 5f 49 4e 53 54 41 4c 4c 46 4c 41 47 .NDW_INSTALLFLAG
54f0: 5f 49 4e 53 54 41 4c 4c 53 50 45 43 49 46 49 43 _INSTALLSPECIFIC
5500: 20 20 20 20 3d 20 30 78 30 30 30 30 32 30 30 30 = 0x00002000
5510: 2c 0d 0a 09 4e 44 57 5f 49 4e 53 54 41 4c 4c 46 ,...NDW_INSTALLF
5520: 4c 41 47 5f 53 4b 49 50 43 4c 41 53 53 4c 49 53 LAG_SKIPCLASSLIS
5530: 54 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 34 T = 0x00004
5540: 30 30 30 2c 0d 0a 09 4e 44 57 5f 49 4e 53 54 41 000,...NDW_INSTA
5550: 4c 4c 46 4c 41 47 5f 43 49 5f 50 49 43 4b 45 44 LLFLAG_CI_PICKED
5560: 5f 4f 45 4d 20 20 20 20 20 20 3d 20 30 78 30 30 _OEM = 0x00
5570: 30 30 38 30 30 30 2c 0d 0a 09 4e 44 57 5f 49 4e 008000,...NDW_IN
5580: 53 54 41 4c 4c 46 4c 41 47 5f 50 43 4d 43 49 41 STALLFLAG_PCMCIA
5590: 4d 4f 44 45 20 20 20 20 20 20 20 20 20 3d 20 30 MODE = 0
55a0: 78 30 30 30 31 30 30 30 30 2c 0d 0a 09 4e 44 57 x00010000,...NDW
55b0: 5f 49 4e 53 54 41 4c 4c 46 4c 41 47 5f 50 43 4d _INSTALLFLAG_PCM
55c0: 43 49 41 44 45 56 49 43 45 20 20 20 20 20 20 20 CIADEVICE
55d0: 3d 20 30 78 30 30 30 32 30 30 30 30 2c 0d 0a 09 = 0x00020000,...
55e0: 4e 44 57 5f 49 4e 53 54 41 4c 4c 46 4c 41 47 5f NDW_INSTALLFLAG_
55f0: 55 53 45 52 43 41 4e 43 45 4c 20 20 20 20 20 20 USERCANCEL
5600: 20 20 20 3d 20 30 78 30 30 30 34 30 30 30 30 2c = 0x00040000,
5610: 0d 0a 09 4e 44 57 5f 49 4e 53 54 41 4c 4c 46 4c ...NDW_INSTALLFL
5620: 41 47 5f 4b 4e 4f 57 4e 43 4c 41 53 53 20 20 20 AG_KNOWNCLASS
5630: 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 30 30 = 0x000800
5640: 30 30 2c 0d 0a 09 4e 44 57 5f 49 4e 53 54 41 4c 00,...NDW_INSTAL
5650: 4c 46 4c 41 47 5f 4e 45 45 44 52 45 53 54 41 52 LFLAG_NEEDRESTAR
5660: 54 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 T = 0x000
5670: 30 30 30 38 30 2c 0d 0a 09 4e 44 57 5f 49 4e 53 00080,...NDW_INS
5680: 54 41 4c 4c 46 4c 41 47 5f 4e 45 45 44 52 45 42 TALLFLAG_NEEDREB
5690: 4f 4f 54 20 20 20 20 20 20 20 20 20 3d 20 30 78 OOT = 0x
56a0: 30 30 30 30 30 31 30 30 0d 0a 7d 0d 0a 0d 0a 65 00000100..}....e
56b0: 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 num : DWORD {...
56c0: 53 45 54 44 49 52 49 44 5f 4e 4f 54 5f 46 55 4c SETDIRID_NOT_FUL
56d0: 4c 5f 50 41 54 48 20 3d 20 30 78 30 30 30 30 30 L_PATH = 0x00000
56e0: 30 30 31 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 001..}....enum :
56f0: 20 44 57 4f 52 44 20 7b 0d 0a 09 53 50 5f 43 4f DWORD {...SP_CO
5700: 50 59 5f 44 45 4c 45 54 45 53 4f 55 52 43 45 20 PY_DELETESOURCE
5710: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 = 0x00000
5720: 30 31 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 52 45 01,...SP_COPY_RE
5730: 50 4c 41 43 45 4f 4e 4c 59 20 20 20 20 20 20 20 PLACEONLY
5740: 20 20 3d 20 30 78 30 30 30 30 30 30 32 2c 0d 0a = 0x0000002,..
5750: 09 53 50 5f 43 4f 50 59 5f 4e 45 57 45 52 20 20 .SP_COPY_NEWER
5760: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 = 0
5770: 78 30 30 30 30 30 30 34 2c 0d 0a 09 53 50 5f 43 x0000004,...SP_C
5780: 4f 50 59 5f 4e 45 57 45 52 5f 4f 52 5f 53 41 4d OPY_NEWER_OR_SAM
5790: 45 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 E = 0x0000
57a0: 30 30 34 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 4e 004,...SP_COPY_N
57b0: 4f 4f 56 45 52 57 52 49 54 45 20 20 20 20 20 20 OOVERWRITE
57c0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 38 2c 0d = 0x0000008,.
57d0: 0a 09 53 50 5f 43 4f 50 59 5f 4e 4f 44 45 43 4f ..SP_COPY_NODECO
57e0: 4d 50 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 MP =
57f0: 30 78 30 30 30 30 30 31 30 2c 0d 0a 09 53 50 5f 0x0000010,...SP_
5800: 43 4f 50 59 5f 4c 41 4e 47 55 41 47 45 41 57 41 COPY_LANGUAGEAWA
5810: 52 45 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 RE = 0x000
5820: 30 30 32 30 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 0020,...SP_COPY_
5830: 53 4f 55 52 43 45 5f 41 42 53 4f 4c 55 54 45 20 SOURCE_ABSOLUTE
5840: 20 20 20 20 3d 20 30 78 30 30 30 30 30 34 30 2c = 0x0000040,
5850: 0d 0a 09 53 50 5f 43 4f 50 59 5f 53 4f 55 52 43 ...SP_COPY_SOURC
5860: 45 50 41 54 48 5f 41 42 53 4f 4c 55 54 45 20 3d EPATH_ABSOLUTE =
5870: 20 30 78 30 30 30 30 30 38 30 2c 0d 0a 09 53 50 0x0000080,...SP
5880: 5f 43 4f 50 59 5f 49 4e 5f 55 53 45 5f 4e 45 45 _COPY_IN_USE_NEE
5890: 44 53 5f 52 45 42 4f 4f 54 20 3d 20 30 78 30 30 DS_REBOOT = 0x00
58a0: 30 30 31 30 30 2c 0d 0a 09 53 50 5f 43 4f 50 59 00100,...SP_COPY
58b0: 5f 46 4f 52 43 45 5f 49 4e 5f 55 53 45 20 20 20 _FORCE_IN_USE
58c0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 32 30 30 = 0x0000200
58d0: 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 4e 4f 53 4b ,...SP_COPY_NOSK
58e0: 49 50 20 20 20 20 20 20 20 20 20 20 20 20 20 20 IP
58f0: 3d 20 30 78 30 30 30 30 34 30 30 2c 0d 0a 09 53 = 0x0000400,...S
5900: 50 5f 46 4c 41 47 5f 43 41 42 49 4e 45 54 43 4f P_FLAG_CABINETCO
5910: 4e 54 49 4e 55 41 54 49 4f 4e 20 3d 20 30 78 30 NTINUATION = 0x0
5920: 30 30 30 38 30 30 2c 0d 0a 09 53 50 5f 43 4f 50 000800,...SP_COP
5930: 59 5f 46 4f 52 43 45 5f 4e 4f 4f 56 45 52 57 52 Y_FORCE_NOOVERWR
5940: 49 54 45 20 20 20 3d 20 30 78 30 30 30 31 30 30 ITE = 0x000100
5950: 30 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 46 4f 52 0,...SP_COPY_FOR
5960: 43 45 5f 4e 45 57 45 52 20 20 20 20 20 20 20 20 CE_NEWER
5970: 20 3d 20 30 78 30 30 30 32 30 30 30 2c 0d 0a 09 = 0x0002000,...
5980: 53 50 5f 43 4f 50 59 5f 57 41 52 4e 49 46 53 4b SP_COPY_WARNIFSK
5990: 49 50 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 IP = 0x
59a0: 30 30 30 34 30 30 30 2c 0d 0a 09 53 50 5f 43 4f 0004000,...SP_CO
59b0: 50 59 5f 4e 4f 42 52 4f 57 53 45 20 20 20 20 20 PY_NOBROWSE
59c0: 20 20 20 20 20 20 20 3d 20 30 78 30 30 30 38 30 = 0x00080
59d0: 30 30 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 4e 45 00,...SP_COPY_NE
59e0: 57 45 52 5f 4f 4e 4c 59 20 20 20 20 20 20 20 20 WER_ONLY
59f0: 20 20 3d 20 30 78 30 30 31 30 30 30 30 2c 0d 0a = 0x0010000,..
5a00: 09 53 50 5f 43 4f 50 59 5f 53 4f 55 52 43 45 5f .SP_COPY_SOURCE_
5a10: 53 49 53 5f 4d 41 53 54 45 52 20 20 20 3d 20 30 SIS_MASTER = 0
5a20: 78 30 30 32 30 30 30 30 2c 0d 0a 09 53 50 5f 43 x0020000,...SP_C
5a30: 4f 50 59 5f 4f 45 4d 49 4e 46 5f 43 41 54 41 4c OPY_OEMINF_CATAL
5a40: 4f 47 5f 4f 4e 4c 59 20 3d 20 30 78 30 30 34 30 OG_ONLY = 0x0040
5a50: 30 30 30 2c 0d 0a 09 53 50 5f 43 4f 50 59 5f 52 000,...SP_COPY_R
5a60: 45 50 4c 41 43 45 5f 42 4f 4f 54 5f 46 49 4c 45 EPLACE_BOOT_FILE
5a70: 20 20 20 3d 20 30 78 30 30 38 30 30 30 30 2c 0d = 0x0080000,.
5a80: 0a 09 53 50 5f 43 4f 50 59 5f 4e 4f 50 52 55 4e ..SP_COPY_NOPRUN
5a90: 45 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 E =
5aa0: 30 78 30 31 30 30 30 30 30 0d 0a 7d 0d 0a 0d 0a 0x0100000..}....
5ab0: 73 74 61 74 69 63 20 69 66 28 5f 53 45 54 55 50 static if(_SETUP
5ac0: 41 50 49 5f 56 45 52 20 3e 3d 20 30 78 30 35 30 API_VER >= 0x050
5ad0: 31 29 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 44 57 1) {...enum : DW
5ae0: 4f 52 44 20 7b 0d 0a 09 09 53 50 5f 43 4f 50 59 ORD {....SP_COPY
5af0: 5f 4f 45 4d 5f 46 36 5f 49 4e 46 20 3d 20 30 78 _OEM_F6_INF = 0x
5b00: 30 32 30 30 30 30 30 0d 0a 09 7d 0d 0a 7d 0d 0a 0200000...}..}..
5b10: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
5b20: 0d 0a 09 53 50 43 52 50 5f 53 45 43 55 52 49 54 ...SPCRP_SECURIT
5b30: 59 20 3d 20 32 33 2c 0d 0a 09 53 50 43 52 50 5f Y = 23,...SPCRP_
5b40: 53 45 43 55 52 49 54 59 5f 53 44 53 2c 0d 0a 09 SECURITY_SDS,...
5b50: 53 50 43 52 50 5f 44 45 56 54 59 50 45 2c 0d 0a SPCRP_DEVTYPE,..
5b60: 09 53 50 43 52 50 5f 45 58 43 4c 55 53 49 56 45 .SPCRP_EXCLUSIVE
5b70: 2c 0d 0a 09 53 50 43 52 50 5f 43 48 41 52 41 43 ,...SPCRP_CHARAC
5b80: 54 45 52 49 53 54 49 43 53 2c 0d 0a 09 53 50 43 TERISTICS,...SPC
5b90: 52 50 5f 4d 41 58 49 4d 55 4d 5f 50 52 4f 50 45 RP_MAXIMUM_PROPE
5ba0: 52 54 59 20 2f 2f 20 3d 20 32 38 0d 0a 7d 0d 0a RTY // = 28..}..
5bb0: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
5bc0: 0d 0a 09 53 50 44 49 54 5f 4e 4f 44 52 49 56 45 ...SPDIT_NODRIVE
5bd0: 52 2c 0d 0a 09 53 50 44 49 54 5f 43 4c 41 53 53 R,...SPDIT_CLASS
5be0: 44 52 49 56 45 52 2c 0d 0a 09 53 50 44 49 54 5f DRIVER,...SPDIT_
5bf0: 43 4f 4d 50 41 54 44 52 49 56 45 52 20 2f 2f 20 COMPATDRIVER //
5c00: 3d 20 32 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a = 2..}....enum :
5c10: 20 44 57 4f 52 44 20 7b 0d 0a 09 53 50 44 52 50 DWORD {...SPDRP
5c20: 5f 44 45 56 49 43 45 44 45 53 43 2c 0d 0a 09 53 _DEVICEDESC,...S
5c30: 50 44 52 50 5f 48 41 52 44 57 41 52 45 49 44 2c PDRP_HARDWAREID,
5c40: 0d 0a 09 53 50 44 52 50 5f 43 4f 4d 50 41 54 49 ...SPDRP_COMPATI
5c50: 42 4c 45 49 44 53 2c 0d 0a 09 53 50 44 52 50 5f BLEIDS,...SPDRP_
5c60: 55 4e 55 53 45 44 30 2c 0d 0a 09 53 50 44 52 50 UNUSED0,...SPDRP
5c70: 5f 53 45 52 56 49 43 45 2c 0d 0a 09 53 50 44 52 _SERVICE,...SPDR
5c80: 50 5f 55 4e 55 53 45 44 31 2c 0d 0a 09 53 50 44 P_UNUSED1,...SPD
5c90: 52 50 5f 55 4e 55 53 45 44 32 2c 0d 0a 09 53 50 RP_UNUSED2,...SP
5ca0: 44 52 50 5f 43 4c 41 53 53 2c 0d 0a 09 53 50 44 DRP_CLASS,...SPD
5cb0: 52 50 5f 43 4c 41 53 53 47 55 49 44 2c 0d 0a 09 RP_CLASSGUID,...
5cc0: 53 50 44 52 50 5f 44 52 49 56 45 52 2c 0d 0a 09 SPDRP_DRIVER,...
5cd0: 53 50 44 52 50 5f 43 4f 4e 46 49 47 46 4c 41 47 SPDRP_CONFIGFLAG
5ce0: 53 2c 0d 0a 09 53 50 44 52 50 5f 4d 46 47 2c 0d S,...SPDRP_MFG,.
5cf0: 0a 09 53 50 44 52 50 5f 46 52 49 45 4e 44 4c 59 ..SPDRP_FRIENDLY
5d00: 4e 41 4d 45 2c 0d 0a 09 53 50 44 52 50 5f 4c 4f NAME,...SPDRP_LO
5d10: 43 41 54 49 4f 4e 5f 49 4e 46 4f 52 4d 41 54 49 CATION_INFORMATI
5d20: 4f 4e 2c 0d 0a 09 53 50 44 52 50 5f 50 48 59 53 ON,...SPDRP_PHYS
5d30: 49 43 41 4c 5f 44 45 56 49 43 45 5f 4f 42 4a 45 ICAL_DEVICE_OBJE
5d40: 43 54 5f 4e 41 4d 45 2c 0d 0a 09 53 50 44 52 50 CT_NAME,...SPDRP
5d50: 5f 43 41 50 41 42 49 4c 49 54 49 45 53 2c 0d 0a _CAPABILITIES,..
5d60: 09 53 50 44 52 50 5f 55 49 5f 4e 55 4d 42 45 52 .SPDRP_UI_NUMBER
5d70: 2c 0d 0a 09 53 50 44 52 50 5f 55 50 50 45 52 46 ,...SPDRP_UPPERF
5d80: 49 4c 54 45 52 53 2c 0d 0a 09 53 50 44 52 50 5f ILTERS,...SPDRP_
5d90: 4c 4f 57 45 52 46 49 4c 54 45 52 53 2c 0d 0a 09 LOWERFILTERS,...
5da0: 53 50 44 52 50 5f 42 55 53 54 59 50 45 47 55 49 SPDRP_BUSTYPEGUI
5db0: 44 2c 0d 0a 09 53 50 44 52 50 5f 4c 45 47 41 43 D,...SPDRP_LEGAC
5dc0: 59 42 55 53 54 59 50 45 2c 0d 0a 09 53 50 44 52 YBUSTYPE,...SPDR
5dd0: 50 5f 42 55 53 4e 55 4d 42 45 52 2c 0d 0a 09 53 P_BUSNUMBER,...S
5de0: 50 44 52 50 5f 45 4e 55 4d 45 52 41 54 4f 52 5f PDRP_ENUMERATOR_
5df0: 4e 41 4d 45 2c 0d 0a 09 53 50 44 52 50 5f 53 45 NAME,...SPDRP_SE
5e00: 43 55 52 49 54 59 2c 0d 0a 09 53 50 44 52 50 5f CURITY,...SPDRP_
5e10: 53 45 43 55 52 49 54 59 5f 53 44 53 2c 0d 0a 09 SECURITY_SDS,...
5e20: 53 50 44 52 50 5f 44 45 56 54 59 50 45 2c 0d 0a SPDRP_DEVTYPE,..
5e30: 09 53 50 44 52 50 5f 45 58 43 4c 55 53 49 56 45 .SPDRP_EXCLUSIVE
5e40: 2c 0d 0a 09 53 50 44 52 50 5f 43 48 41 52 41 43 ,...SPDRP_CHARAC
5e50: 54 45 52 49 53 54 49 43 53 2c 0d 0a 09 53 50 44 TERISTICS,...SPD
5e60: 52 50 5f 41 44 44 52 45 53 53 2c 20 2f 2f 20 3d RP_ADDRESS, // =
5e70: 20 32 38 0d 0a 09 53 50 44 52 50 5f 55 49 5f 4e 28...SPDRP_UI_N
5e80: 55 4d 42 45 52 5f 44 45 53 43 5f 46 4f 52 4d 41 UMBER_DESC_FORMA
5e90: 54 20 3d 20 33 30 2c 0d 0a 09 53 50 44 52 50 5f T = 30,...SPDRP_
5ea0: 4d 41 58 49 4d 55 4d 5f 50 52 4f 50 45 52 54 59 MAXIMUM_PROPERTY
5eb0: 20 20 20 20 20 20 3d 20 33 31 0d 0a 7d 0d 0a 0d = 31..}...
5ec0: 0a 65 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0d 0a .enum : UINT {..
5ed0: 09 53 50 44 53 4c 5f 49 47 4e 4f 52 45 5f 44 49 .SPDSL_IGNORE_DI
5ee0: 53 4b 20 3d 20 31 2c 0d 0a 09 53 50 44 53 4c 5f SK = 1,...SPDSL_
5ef0: 44 49 53 41 4c 4c 4f 57 5f 4e 45 47 41 54 49 56 DISALLOW_NEGATIV
5f00: 45 5f 41 44 4a 55 53 54 0d 0a 7d 0d 0a 0d 0a 65 E_ADJUST..}....e
5f10: 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0d 0a 09 53 num : UINT {...S
5f20: 50 46 49 4c 45 4e 4f 54 49 46 59 5f 53 54 41 52 PFILENOTIFY_STAR
5f30: 54 51 55 45 55 45 20 3d 20 31 2c 0d 0a 09 53 50 TQUEUE = 1,...SP
5f40: 46 49 4c 45 4e 4f 54 49 46 59 5f 45 4e 44 51 55 FILENOTIFY_ENDQU
5f50: 45 55 45 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 EUE,...SPFILENOT
5f60: 49 46 59 5f 53 54 41 52 54 53 55 42 51 55 45 55 IFY_STARTSUBQUEU
5f70: 45 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 E,...SPFILENOTIF
5f80: 59 5f 45 4e 44 53 55 42 51 55 45 55 45 2c 0d 0a Y_ENDSUBQUEUE,..
5f90: 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f 53 54 .SPFILENOTIFY_ST
5fa0: 41 52 54 44 45 4c 45 54 45 2c 0d 0a 09 53 50 46 ARTDELETE,...SPF
5fb0: 49 4c 45 4e 4f 54 49 46 59 5f 45 4e 44 44 45 4c ILENOTIFY_ENDDEL
5fc0: 45 54 45 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 ETE,...SPFILENOT
5fd0: 49 46 59 5f 44 45 4c 45 54 45 45 52 52 4f 52 2c IFY_DELETEERROR,
5fe0: 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f ...SPFILENOTIFY_
5ff0: 53 54 41 52 54 52 45 4e 41 4d 45 2c 0d 0a 09 53 STARTRENAME,...S
6000: 50 46 49 4c 45 4e 4f 54 49 46 59 5f 45 4e 44 52 PFILENOTIFY_ENDR
6010: 45 4e 41 4d 45 2c 0d 0a 09 53 50 46 49 4c 45 4e ENAME,...SPFILEN
6020: 4f 54 49 46 59 5f 52 45 4e 41 4d 45 45 52 52 4f OTIFY_RENAMEERRO
6030: 52 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 R,...SPFILENOTIF
6040: 59 5f 53 54 41 52 54 43 4f 50 59 2c 0d 0a 09 53 Y_STARTCOPY,...S
6050: 50 46 49 4c 45 4e 4f 54 49 46 59 5f 45 4e 44 43 PFILENOTIFY_ENDC
6060: 4f 50 59 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 OPY,...SPFILENOT
6070: 49 46 59 5f 43 4f 50 59 45 52 52 4f 52 2c 0d 0a IFY_COPYERROR,..
6080: 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f 4e 45 .SPFILENOTIFY_NE
6090: 45 44 4d 45 44 49 41 2c 0d 0a 09 53 50 46 49 4c EDMEDIA,...SPFIL
60a0: 45 4e 4f 54 49 46 59 5f 51 55 45 55 45 53 43 41 ENOTIFY_QUEUESCA
60b0: 4e 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 N,...SPFILENOTIF
60c0: 59 5f 43 41 42 49 4e 45 54 49 4e 46 4f 2c 0d 0a Y_CABINETINFO,..
60d0: 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f 46 49 .SPFILENOTIFY_FI
60e0: 4c 45 49 4e 43 41 42 49 4e 45 54 2c 0d 0a 09 53 LEINCABINET,...S
60f0: 50 46 49 4c 45 4e 4f 54 49 46 59 5f 4e 45 45 44 PFILENOTIFY_NEED
6100: 4e 45 57 43 41 42 49 4e 45 54 2c 0d 0a 09 53 50 NEWCABINET,...SP
6110: 46 49 4c 45 4e 4f 54 49 46 59 5f 46 49 4c 45 45 FILENOTIFY_FILEE
6120: 58 54 52 41 43 54 45 44 2c 0d 0a 09 53 50 46 49 XTRACTED,...SPFI
6130: 4c 45 4e 4f 54 49 46 59 5f 46 49 4c 45 4f 50 44 LENOTIFY_FILEOPD
6140: 45 4c 41 59 45 44 2c 0d 0a 09 53 50 46 49 4c 45 ELAYED,...SPFILE
6150: 4e 4f 54 49 46 59 5f 53 54 41 52 54 42 41 43 4b NOTIFY_STARTBACK
6160: 55 50 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 UP,...SPFILENOTI
6170: 46 59 5f 42 41 43 4b 55 50 45 52 52 4f 52 2c 0d FY_BACKUPERROR,.
6180: 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f 45 ..SPFILENOTIFY_E
6190: 4e 44 42 41 43 4b 55 50 2c 0d 0a 09 53 50 46 49 NDBACKUP,...SPFI
61a0: 4c 45 4e 4f 54 49 46 59 5f 51 55 45 55 45 53 43 LENOTIFY_QUEUESC
61b0: 41 4e 5f 45 58 2c 0d 0a 09 53 50 46 49 4c 45 4e AN_EX,...SPFILEN
61c0: 4f 54 49 46 59 5f 53 54 41 52 54 52 45 47 49 53 OTIFY_STARTREGIS
61d0: 54 52 41 54 49 4f 4e 2c 20 2f 2f 20 3d 20 32 35 TRATION, // = 25
61e0: 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f ...SPFILENOTIFY_
61f0: 45 4e 44 52 45 47 49 53 54 52 41 54 49 4f 4e 20 ENDREGISTRATION
6200: 3d 20 33 32 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f = 32,...SPFILENO
6210: 54 49 46 59 5f 4c 41 4e 47 4d 49 53 4d 41 54 43 TIFY_LANGMISMATC
6220: 48 20 20 20 20 3d 20 30 78 30 30 30 31 30 30 30 H = 0x0001000
6230: 30 2c 0d 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 0,...SPFILENOTIF
6240: 59 5f 54 41 52 47 45 54 45 58 49 53 54 53 20 20 Y_TARGETEXISTS
6250: 20 20 3d 20 30 78 30 30 30 32 30 30 30 30 2c 0d = 0x00020000,.
6260: 0a 09 53 50 46 49 4c 45 4e 4f 54 49 46 59 5f 54 ..SPFILENOTIFY_T
6270: 41 52 47 45 54 4e 45 57 45 52 20 20 20 20 20 3d ARGETNEWER =
6280: 20 30 78 30 30 30 34 30 30 30 30 0d 0a 7d 0d 0a 0x00040000..}..
6290: 0d 0a 73 74 61 74 69 63 20 69 66 28 5f 53 45 54 ..static if(_SET
62a0: 55 50 41 50 49 5f 56 45 52 20 3e 3d 20 30 78 30 UPAPI_VER >= 0x0
62b0: 35 30 31 29 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 501) {...enum :
62c0: 55 49 4e 54 20 7b 0d 0a 09 09 53 50 46 49 4c 45 UINT {....SPFILE
62d0: 4e 4f 54 49 46 59 5f 51 55 45 55 45 53 43 41 4e NOTIFY_QUEUESCAN
62e0: 5f 53 49 47 4e 45 52 49 4e 46 4f 20 3d 20 30 78 _SIGNERINFO = 0x
62f0: 30 30 30 30 30 30 34 30 0d 0a 09 7d 0d 0a 7d 0d 00000040...}..}.
6300: 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 ...enum : DWORD
6310: 7b 0d 0a 09 53 50 46 49 4c 45 4c 4f 47 5f 53 59 {...SPFILELOG_SY
6320: 53 54 45 4d 4c 4f 47 20 3d 20 30 78 30 30 30 30 STEMLOG = 0x0000
6330: 30 30 30 31 2c 0d 0a 09 53 50 46 49 4c 45 4c 4f 0001,...SPFILELO
6340: 47 5f 4f 45 4d 46 49 4c 45 20 20 20 3d 20 30 78 G_OEMFILE = 0x
6350: 30 30 30 30 30 30 30 31 2c 0d 0a 09 53 50 46 49 00000001,...SPFI
6360: 4c 45 4c 4f 47 5f 46 4f 52 43 45 4e 45 57 20 20 LELOG_FORCENEW
6370: 3d 20 30 78 30 30 30 30 30 30 30 32 2c 0d 0a 09 = 0x00000002,...
6380: 53 50 46 49 4c 45 4c 4f 47 5f 51 55 45 52 59 4f SPFILELOG_QUERYO
6390: 4e 4c 59 20 3d 20 30 78 30 30 30 30 30 30 30 34 NLY = 0x00000004
63a0: 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 49 4e ..}....enum : IN
63b0: 54 20 7b 0d 0a 09 53 50 46 49 4c 45 51 5f 46 49 T {...SPFILEQ_FI
63c0: 4c 45 5f 49 4e 5f 55 53 45 20 20 20 20 20 20 20 LE_IN_USE
63d0: 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d 0a = 0x00000001,..
63e0: 09 53 50 46 49 4c 45 51 5f 52 45 42 4f 4f 54 5f .SPFILEQ_REBOOT_
63f0: 52 45 43 4f 4d 4d 45 4e 44 45 44 20 3d 20 30 78 RECOMMENDED = 0x
6400: 30 30 30 30 30 30 30 32 2c 0d 0a 09 53 50 46 49 00000002,...SPFI
6410: 4c 45 51 5f 52 45 42 4f 4f 54 5f 49 4e 5f 50 52 LEQ_REBOOT_IN_PR
6420: 4f 47 52 45 53 53 20 3d 20 30 78 30 30 30 30 30 OGRESS = 0x00000
6430: 30 30 34 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 004..}....enum :
6440: 20 44 57 4f 52 44 20 7b 0d 0a 09 53 50 49 4e 54 DWORD {...SPINT
6450: 5f 41 43 54 49 56 45 20 20 3d 20 30 78 30 30 30 _ACTIVE = 0x000
6460: 30 30 30 30 31 2c 0d 0a 09 53 50 49 4e 54 5f 44 00001,...SPINT_D
6470: 45 46 41 55 4c 54 20 3d 20 30 78 30 30 30 30 30 EFAULT = 0x00000
6480: 30 30 32 2c 0d 0a 09 53 50 49 4e 54 5f 52 45 4d 002,...SPINT_REM
6490: 4f 56 45 44 20 3d 20 30 78 30 30 30 30 30 30 30 OVED = 0x0000000
64a0: 34 0d 0a 7d 0d 0a 0d 0a 64 65 70 72 65 63 61 74 4..}....deprecat
64b0: 65 64 20 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 ed enum : DWORD
64c0: 7b 0d 0a 09 53 50 49 44 5f 41 43 54 49 56 45 20 {...SPID_ACTIVE
64d0: 20 3d 20 53 50 49 4e 54 5f 41 43 54 49 56 45 2c = SPINT_ACTIVE,
64e0: 0d 0a 09 53 50 49 44 5f 44 45 46 41 55 4c 54 20 ...SPID_DEFAULT
64f0: 3d 20 53 50 49 4e 54 5f 44 45 46 41 55 4c 54 2c = SPINT_DEFAULT,
6500: 0d 0a 09 53 50 49 44 5f 52 45 4d 4f 56 45 44 20 ...SPID_REMOVED
6510: 3d 20 53 50 49 4e 54 5f 52 45 4d 4f 56 45 44 0d = SPINT_REMOVED.
6520: 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 55 49 4e .}....enum : UIN
6530: 54 20 7b 0d 0a 09 53 50 49 4e 53 54 5f 4c 4f 47 T {...SPINST_LOG
6540: 43 4f 4e 46 49 47 20 20 20 20 20 20 20 20 20 20 CONFIG
6550: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6560: 30 31 2c 0d 0a 09 53 50 49 4e 53 54 5f 49 4e 49 01,...SPINST_INI
6570: 46 49 4c 45 53 20 20 20 20 20 20 20 20 20 20 20 FILES
6580: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6590: 30 32 2c 0d 0a 09 53 50 49 4e 53 54 5f 52 45 47 02,...SPINST_REG
65a0: 49 53 54 52 59 20 20 20 20 20 20 20 20 20 20 20 ISTRY
65b0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
65c0: 30 34 2c 0d 0a 09 53 50 49 4e 53 54 5f 49 4e 49 04,...SPINST_INI
65d0: 32 52 45 47 20 20 20 20 20 20 20 20 20 20 20 20 2REG
65e0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
65f0: 30 38 2c 0d 0a 09 53 50 49 4e 53 54 5f 46 49 4c 08,...SPINST_FIL
6600: 45 53 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ES
6610: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6620: 31 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 42 49 54 10,...SPINST_BIT
6630: 52 45 47 20 20 20 20 20 20 20 20 20 20 20 20 20 REG
6640: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6650: 32 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 52 45 47 20,...SPINST_REG
6660: 53 56 52 20 20 20 20 20 20 20 20 20 20 20 20 20 SVR
6670: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6680: 34 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 55 4e 52 40,...SPINST_UNR
6690: 45 47 53 56 52 20 20 20 20 20 20 20 20 20 20 20 EGSVR
66a0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
66b0: 38 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 50 52 4f 80,...SPINST_PRO
66c0: 46 49 4c 45 49 54 45 4d 53 20 20 20 20 20 20 20 FILEITEMS
66d0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 31 = 0x000001
66e0: 30 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 53 49 4e 00,...SPINST_SIN
66f0: 47 4c 45 53 45 43 54 49 4f 4e 20 20 20 20 20 20 GLESECTION
6700: 20 20 20 20 20 20 3d 20 30 78 30 30 30 31 30 30 = 0x000100
6710: 30 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 4c 4f 47 00,...SPINST_LOG
6720: 43 4f 4e 46 49 47 5f 49 53 5f 46 4f 52 43 45 44 CONFIG_IS_FORCED
6730: 20 20 20 20 20 20 3d 20 30 78 30 30 30 32 30 30 = 0x000200
6740: 30 30 2c 0d 0a 09 53 50 49 4e 53 54 5f 4c 4f 47 00,...SPINST_LOG
6750: 43 4f 4e 46 49 47 53 5f 41 52 45 5f 4f 56 45 52 CONFIGS_ARE_OVER
6760: 52 49 44 45 53 20 3d 20 30 78 30 30 30 34 30 30 RIDES = 0x000400
6770: 30 30 0d 0a 7d 0d 0a 0d 0a 73 74 61 74 69 63 20 00..}....static
6780: 69 66 28 5f 53 45 54 55 50 41 50 49 5f 56 45 52 if(_SETUPAPI_VER
6790: 20 3e 3d 20 30 78 30 35 30 31 29 20 7b 0d 0a 09 >= 0x0501) {...
67a0: 65 6e 75 6d 20 3a 20 55 49 4e 54 20 7b 0d 0a 09 enum : UINT {...
67b0: 09 53 50 49 4e 53 54 5f 43 4f 50 59 49 4e 46 20 .SPINST_COPYINF
67c0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 =
67d0: 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09 09 53 0x00000200,....S
67e0: 50 49 4e 53 54 5f 41 4c 4c 20 20 20 20 20 20 20 PINST_ALL
67f0: 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 = 0x
6800: 30 30 30 30 30 33 66 66 2c 0d 0a 09 09 53 50 49 000003ff,....SPI
6810: 4e 53 54 5f 52 45 47 49 53 54 45 52 43 41 4c 4c NST_REGISTERCALL
6820: 42 41 43 4b 41 57 41 52 45 20 3d 20 30 78 30 30 BACKAWARE = 0x00
6830: 30 38 30 30 30 30 0d 0a 09 7d 0d 0a 7d 20 65 6c 080000...}..} el
6840: 73 65 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 55 49 se {...enum : UI
6850: 4e 54 20 7b 0d 0a 09 09 53 50 49 4e 53 54 5f 41 NT {....SPINST_A
6860: 4c 4c 20 3d 20 30 78 30 30 30 30 30 31 66 66 0d LL = 0x000001ff.
6870: 0a 09 7d 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a ..}..}....enum :
6880: 20 44 57 4f 52 44 20 7b 0d 0a 09 53 50 4f 53 54 DWORD {...SPOST
6890: 5f 4e 4f 4e 45 2c 0d 0a 09 53 50 4f 53 54 5f 50 _NONE,...SPOST_P
68a0: 41 54 48 2c 0d 0a 09 53 50 4f 53 54 5f 55 52 4c ATH,...SPOST_URL
68b0: 2c 0d 0a 09 53 50 4f 53 54 5f 4d 41 58 20 2f 2f ,...SPOST_MAX //
68c0: 20 3d 20 33 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 = 3..}....enum
68d0: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 53 50 50 53 : DWORD {...SPPS
68e0: 52 5f 53 45 4c 45 43 54 5f 44 45 56 49 43 45 5f R_SELECT_DEVICE_
68f0: 52 45 53 4f 55 52 43 45 53 20 3d 20 31 2c 0d 0a RESOURCES = 1,..
6900: 09 53 50 50 53 52 5f 45 4e 55 4d 5f 42 41 53 49 .SPPSR_ENUM_BASI
6910: 43 5f 44 45 56 49 43 45 5f 50 52 4f 50 45 52 54 C_DEVICE_PROPERT
6920: 49 45 53 2c 0d 0a 09 53 50 50 53 52 5f 45 4e 55 IES,...SPPSR_ENU
6930: 4d 5f 41 44 56 5f 44 45 56 49 43 45 5f 50 52 4f M_ADV_DEVICE_PRO
6940: 50 45 52 54 49 45 53 0d 0a 7d 0d 0a 0d 0a 65 6e PERTIES..}....en
6950: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 53 um : DWORD {...S
6960: 50 51 5f 53 43 41 4e 5f 46 49 4c 45 5f 50 52 45 PQ_SCAN_FILE_PRE
6970: 53 45 4e 43 45 20 20 20 20 3d 20 30 78 30 30 30 SENCE = 0x000
6980: 30 30 30 30 31 2c 0d 0a 09 53 50 51 5f 53 43 41 00001,...SPQ_SCA
6990: 4e 5f 46 49 4c 45 5f 56 41 4c 49 44 49 54 59 20 N_FILE_VALIDITY
69a0: 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 32 2c = 0x00000002,
69b0: 0d 0a 09 53 50 51 5f 53 43 41 4e 5f 55 53 45 5f ...SPQ_SCAN_USE_
69c0: 43 41 4c 4c 42 41 43 4b 20 20 20 20 20 3d 20 30 CALLBACK = 0
69d0: 78 30 30 30 30 30 30 30 34 2c 0d 0a 09 53 50 51 x00000004,...SPQ
69e0: 5f 53 43 41 4e 5f 55 53 45 5f 43 41 4c 4c 42 41 _SCAN_USE_CALLBA
69f0: 43 4b 45 58 20 20 20 3d 20 30 78 30 30 30 30 30 CKEX = 0x00000
6a00: 30 30 38 2c 0d 0a 09 53 50 51 5f 53 43 41 4e 5f 008,...SPQ_SCAN_
6a10: 49 4e 46 4f 52 4d 5f 55 53 45 52 20 20 20 20 20 INFORM_USER
6a20: 20 3d 20 30 78 30 30 30 30 30 30 31 30 2c 0d 0a = 0x00000010,..
6a30: 09 53 50 51 5f 53 43 41 4e 5f 50 52 55 4e 45 5f .SPQ_SCAN_PRUNE_
6a40: 43 4f 50 59 5f 51 55 45 55 45 20 3d 20 30 78 30 COPY_QUEUE = 0x0
6a50: 30 30 30 30 30 32 30 0d 0a 7d 0d 0a 0d 0a 73 74 0000020..}....st
6a60: 61 74 69 63 20 69 66 28 5f 53 45 54 55 50 41 50 atic if(_SETUPAP
6a70: 49 5f 56 45 52 20 3e 3d 20 30 78 30 35 30 31 29 I_VER >= 0x0501)
6a80: 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 44 57 4f 52 {...enum : DWOR
6a90: 44 20 7b 0d 0a 09 09 53 50 51 5f 53 43 41 4e 5f D {....SPQ_SCAN_
6aa0: 55 53 45 5f 43 41 4c 4c 42 41 43 4b 5f 53 49 47 USE_CALLBACK_SIG
6ab0: 4e 45 52 49 4e 46 4f 20 3d 20 30 78 30 30 30 30 NERINFO = 0x0000
6ac0: 30 30 34 30 2c 0d 0a 09 09 53 50 51 5f 53 43 41 0040,....SPQ_SCA
6ad0: 4e 5f 50 52 55 4e 45 5f 44 45 4c 52 45 4e 20 20 N_PRUNE_DELREN
6ae0: 20 20 20 20 20 20 20 20 20 20 3d 20 30 78 30 30 = 0x00
6af0: 30 30 30 30 38 30 0d 0a 09 7d 0d 0a 7d 0d 0a 0d 000080...}..}...
6b00: 0a 65 6e 75 6d 20 3a 20 55 49 4e 54 5f 50 54 52 .enum : UINT_PTR
6b10: 20 7b 0d 0a 09 53 50 51 5f 44 45 4c 41 59 45 44 {...SPQ_DELAYED
6b20: 5f 43 4f 50 59 20 3d 20 30 78 30 30 30 30 30 30 _COPY = 0x000000
6b30: 30 31 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 01..}....enum :
6b40: 44 57 4f 52 44 20 7b 0d 0a 09 53 50 52 44 49 5f DWORD {...SPRDI_
6b50: 46 49 4e 44 5f 44 55 50 53 20 3d 20 30 78 30 30 FIND_DUPS = 0x00
6b60: 30 30 30 30 30 31 2c 0d 0a 7d 0d 0a 0d 0a 65 6e 000001,..}....en
6b70: 75 6d 20 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 53 um : DWORD {...S
6b80: 50 53 56 43 49 4e 53 54 5f 54 41 47 54 4f 46 52 PSVCINST_TAGTOFR
6b90: 4f 4e 54 20 20 20 20 20 20 20 20 20 20 20 20 20 ONT
6ba0: 20 20 3d 20 30 78 30 30 30 30 30 30 30 31 2c 0d = 0x00000001,.
6bb0: 0a 09 53 50 53 56 43 49 4e 53 54 5f 41 53 53 4f ..SPSVCINST_ASSO
6bc0: 43 53 45 52 56 49 43 45 20 20 20 20 20 20 20 20 CSERVICE
6bd0: 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 30 = 0x0000000
6be0: 32 2c 0d 0a 09 53 50 53 56 43 49 4e 53 54 5f 44 2,...SPSVCINST_D
6bf0: 45 4c 45 54 45 45 56 45 4e 54 4c 4f 47 45 4e 54 ELETEEVENTLOGENT
6c00: 52 59 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 RY = 0x0000
6c10: 30 30 30 34 2c 0d 0a 09 53 50 53 56 43 49 4e 53 0004,...SPSVCINS
6c20: 54 5f 4e 4f 43 4c 4f 42 42 45 52 5f 44 49 53 50 T_NOCLOBBER_DISP
6c30: 4c 41 59 4e 41 4d 45 20 20 20 20 3d 20 30 78 30 LAYNAME = 0x0
6c40: 30 30 30 30 30 30 38 2c 0d 0a 09 53 50 53 56 43 0000008,...SPSVC
6c50: 49 4e 53 54 5f 4e 4f 43 4c 4f 42 42 45 52 5f 53 INST_NOCLOBBER_S
6c60: 54 41 52 54 54 59 50 45 20 20 20 20 20 20 3d 20 TARTTYPE =
6c70: 30 78 30 30 30 30 30 30 31 30 2c 0d 0a 09 53 50 0x00000010,...SP
6c80: 53 56 43 49 4e 53 54 5f 4e 4f 43 4c 4f 42 42 45 SVCINST_NOCLOBBE
6c90: 52 5f 45 52 52 4f 52 43 4f 4e 54 52 4f 4c 20 20 R_ERRORCONTROL
6ca0: 20 3d 20 30 78 30 30 30 30 30 30 32 30 2c 0d 0a = 0x00000020,..
6cb0: 09 53 50 53 56 43 49 4e 53 54 5f 4e 4f 43 4c 4f .SPSVCINST_NOCLO
6cc0: 42 42 45 52 5f 4c 4f 41 44 4f 52 44 45 52 47 52 BBER_LOADORDERGR
6cd0: 4f 55 50 20 3d 20 30 78 30 30 30 30 30 30 34 30 OUP = 0x00000040
6ce0: 2c 0d 0a 09 53 50 53 56 43 49 4e 53 54 5f 4e 4f ,...SPSVCINST_NO
6cf0: 43 4c 4f 42 42 45 52 5f 44 45 50 45 4e 44 45 4e CLOBBER_DEPENDEN
6d00: 43 49 45 53 20 20 20 3d 20 30 78 30 30 30 30 30 CIES = 0x00000
6d10: 30 38 30 2c 0d 0a 09 53 50 53 56 43 49 4e 53 54 080,...SPSVCINST
6d20: 5f 4e 4f 43 4c 4f 42 42 45 52 5f 44 45 53 43 52 _NOCLOBBER_DESCR
6d30: 49 50 54 49 4f 4e 20 20 20 20 3d 20 30 78 30 30 IPTION = 0x00
6d40: 30 30 30 31 30 30 2c 0d 0a 09 53 50 53 56 43 49 000100,...SPSVCI
6d50: 4e 53 54 5f 53 54 4f 50 53 45 52 56 49 43 45 20 NST_STOPSERVICE
6d60: 20 20 20 20 20 20 20 20 20 20 20 20 20 3d 20 30 = 0
6d70: 78 30 30 30 30 30 32 30 30 0d 0a 7d 0d 0a 0d 0a x00000200..}....
6d80: 73 74 61 74 69 63 20 69 66 28 5f 53 45 54 55 50 static if(_SETUP
6d90: 41 50 49 5f 56 45 52 20 3e 3d 20 30 78 30 35 30 API_VER >= 0x050
6da0: 31 29 20 7b 0d 0a 09 65 6e 75 6d 20 3a 20 44 57 1) {...enum : DW
6db0: 4f 52 44 20 7b 0d 0a 09 09 53 50 53 56 43 49 4e ORD {....SPSVCIN
6dc0: 53 54 5f 43 4c 4f 42 42 45 52 5f 53 45 43 55 52 ST_CLOBBER_SECUR
6dd0: 49 54 59 20 3d 20 30 78 30 30 30 30 30 34 30 30 ITY = 0x00000400
6de0: 0d 0a 09 7d 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 20 ...}..}....enum
6df0: 3a 20 44 57 4f 52 44 20 7b 0d 0a 09 53 50 57 50 : DWORD {...SPWP
6e00: 54 5f 53 45 4c 45 43 54 44 45 56 49 43 45 20 3d T_SELECTDEVICE =
6e10: 20 30 78 30 30 30 30 30 30 30 31 0d 0a 7d 0d 0a 0x00000001..}..
6e20: 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 44 20 7b ..enum : DWORD {
6e30: 0d 0a 09 53 50 57 50 5f 55 53 45 5f 44 45 56 49 ...SPWP_USE_DEVI
6e40: 4e 46 4f 5f 44 41 54 41 20 3d 20 30 78 30 30 30 NFO_DATA = 0x000
6e50: 30 30 30 30 31 0d 0a 7d 0d 0a 0d 0a 65 6e 75 6d 00001..}....enum
6e60: 20 3a 20 55 49 4e 54 20 7b 0d 0a 09 53 52 43 49 : UINT {...SRCI
6e70: 4e 46 4f 5f 50 41 54 48 20 3d 20 31 2c 0d 0a 09 NFO_PATH = 1,...
6e80: 53 52 43 49 4e 46 4f 5f 54 41 47 46 49 4c 45 2c SRCINFO_TAGFILE,
6e90: 0d 0a 09 53 52 43 49 4e 46 4f 5f 44 45 53 43 52 ...SRCINFO_DESCR
6ea0: 49 50 54 49 4f 4e 2c 0d 0a 09 53 52 43 49 4e 46 IPTION,...SRCINF
6eb0: 4f 5f 46 4c 41 47 53 20 2f 2f 20 3d 20 34 0d 0a O_FLAGS // = 4..
6ec0: 7d 0d 0a 0d 0a 65 6e 75 6d 20 3a 20 44 57 4f 52 }....enum : DWOR
6ed0: 44 20 7b 0d 0a 09 53 52 43 4c 49 53 54 5f 54 45 D {...SRCLIST_TE
6ee0: 4d 50 4f 52 41 52 59 20 20 20 20 20 20 20 3d 20 MPORARY =
6ef0: 30 78 30 30 30 30 30 30 30 31 2c 0d 0a 09 53 52 0x00000001,...SR
6f00: 43 4c 49 53 54 5f 4e 4f 42 52 4f 57 53 45 20 20 CLIST_NOBROWSE
6f10: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6f20: 30 32 2c 0d 0a 09 53 52 43 4c 49 53 54 5f 53 59 02,...SRCLIST_SY
6f30: 53 54 45 4d 20 20 20 20 20 20 20 20 20 20 3d 20 STEM =
6f40: 30 78 30 30 30 30 30 30 31 30 2c 0d 0a 09 53 52 0x00000010,...SR
6f50: 43 4c 49 53 54 5f 55 53 45 52 20 20 20 20 20 20 CLIST_USER
6f60: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 30 = 0x000000
6f70: 32 30 2c 0d 0a 09 53 52 43 4c 49 53 54 5f 53 59 20,...SRCLIST_SY
6f80: 53 49 46 41 44 4d 49 4e 20 20 20 20 20 20 3d 20 SIFADMIN =
6f90: 30 78 30 30 30 30 30 30 34 30 2c 0d 0a 09 53 52 0x00000040,...SR
6fa0: 43 4c 49 53 54 5f 53 55 42 44 49 52 53 20 20 20 CLIST_SUBDIRS
6fb0: 20 20 20 20 20 20 3d 20 30 78 30 30 30 30 30 31 = 0x000001
6fc0: 30 30 2c 0d 0a 09 53 52 43 4c 49 53 54 5f 41 50 00,...SRCLIST_AP
6fd0: 50 45 4e 44 20 20 20 20 20 20 20 20 20 20 3d 20 PEND =
6fe0: 30 78 30 30 30 30 30 32 30 30 2c 0d 0a 09 53 52 0x00000200,...SR
6ff0: 43 4c 49 53 54 5f 4e 4f 53 54 52 49 50 50 4c 41 CLIST_NOSTRIPPLA
7000: 54 46 4f 52 4d 20 3d 20 30 78 30 30 30 30 30 34 TFORM = 0x000004
7010: 30 30 0d 0a 7d 0d 0a 0d 0a 61 6c 69 61 73 20 50 00..}....alias P
7020: 56 4f 49 44 20 48 49 4e 46 3b 0d 0a 61 6c 69 61 VOID HINF;..alia
7030: 73 20 50 56 4f 49 44 20 48 44 53 4b 53 50 43 3b s PVOID HDSKSPC;
7040: 0d 0a 6d 69 78 69 6e 20 44 45 43 4c 41 52 45 5f ..mixin DECLARE_
7050: 48 41 4e 44 4c 45 21 28 22 48 44 45 56 49 4e 46 HANDLE!("HDEVINF
7060: 4f 22 29 3b 0d 0a 61 6c 69 61 73 20 50 56 4f 49 O");..alias PVOI
7070: 44 20 48 53 50 46 49 4c 45 51 3b 0d 0a 61 6c 69 D HSPFILEQ;..ali
7080: 61 73 20 50 56 4f 49 44 20 48 53 50 46 49 4c 45 as PVOID HSPFILE
7090: 4c 4f 47 3b 0d 0a 0d 0a 65 6e 75 6d 20 53 65 74 LOG;....enum Set
70a0: 75 70 46 69 6c 65 4c 6f 67 49 6e 66 6f 20 7b 0d upFileLogInfo {.
70b0: 0a 09 53 65 74 75 70 46 69 6c 65 4c 6f 67 53 6f ..SetupFileLogSo
70c0: 75 72 63 65 46 69 6c 65 6e 61 6d 65 2c 0d 0a 09 urceFilename,...
70d0: 53 65 74 75 70 46 69 6c 65 4c 6f 67 43 68 65 63 SetupFileLogChec
70e0: 6b 73 75 6d 2c 0d 0a 09 53 65 74 75 70 46 69 6c ksum,...SetupFil
70f0: 65 4c 6f 67 44 69 73 6b 54 61 67 66 69 6c 65 2c eLogDiskTagfile,
7100: 0d 0a 09 53 65 74 75 70 46 69 6c 65 4c 6f 67 44 ...SetupFileLogD
7110: 69 73 6b 44 65 73 63 72 69 70 74 69 6f 6e 2c 0d iskDescription,.
7120: 0a 09 53 65 74 75 70 46 69 6c 65 4c 6f 67 4f 74 ..SetupFileLogOt
7130: 68 65 72 49 6e 66 6f 2c 0d 0a 09 53 65 74 75 70 herInfo,...Setup
7140: 46 69 6c 65 4c 6f 67 4d 61 78 0d 0a 7d 0d 0a 0d FileLogMax..}...
7150: 0a 61 6c 69 67 6e 28 31 29 3a 0d 0a 0d 0a 73 74 .align(1):....st
7160: 72 75 63 74 20 49 4e 46 43 4f 4e 54 45 58 54 20 ruct INFCONTEXT
7170: 7b 0d 0a 09 50 56 4f 49 44 20 49 6e 66 3b 0d 0a {...PVOID Inf;..
7180: 09 50 56 4f 49 44 20 43 75 72 72 65 6e 74 49 6e .PVOID CurrentIn
7190: 66 3b 0d 0a 09 55 49 4e 54 20 20 53 65 63 74 69 f;...UINT Secti
71a0: 6f 6e 3b 0d 0a 09 55 49 4e 54 20 20 4c 69 6e 65 on;...UINT Line
71b0: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 49 4e 46 43 ;..}..alias INFC
71c0: 4f 4e 54 45 58 54 2a 20 50 49 4e 46 43 4f 4e 54 ONTEXT* PINFCONT
71d0: 45 58 54 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 EXT;....struct S
71e0: 50 5f 49 4e 46 5f 49 4e 46 4f 52 4d 41 54 49 4f P_INF_INFORMATIO
71f0: 4e 20 7b 0d 0a 09 44 57 4f 52 44 20 49 6e 66 53 N {...DWORD InfS
7200: 74 79 6c 65 3b 0d 0a 09 44 57 4f 52 44 20 49 6e tyle;...DWORD In
7210: 66 43 6f 75 6e 74 3b 0d 0a 09 42 59 54 45 5b 31 fCount;...BYTE[1
7220: 5d 20 5f 56 65 72 73 69 6f 6e 44 61 74 61 3b 0d ] _VersionData;.
7230: 0a 09 42 59 54 45 2a 20 56 65 72 73 69 6f 6e 44 ..BYTE* VersionD
7240: 61 74 61 28 29 20 7b 20 72 65 74 75 72 6e 20 5f ata() { return _
7250: 56 65 72 73 69 6f 6e 44 61 74 61 2e 70 74 72 3b VersionData.ptr;
7260: 20 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f }..}..alias SP_
7270: 49 4e 46 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2a INF_INFORMATION*
7280: 20 50 53 50 5f 49 4e 46 5f 49 4e 46 4f 52 4d 41 PSP_INF_INFORMA
7290: 54 49 4f 4e 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 TION;....struct
72a0: 53 50 5f 41 4c 54 50 4c 41 54 46 4f 52 4d 5f 49 SP_ALTPLATFORM_I
72b0: 4e 46 4f 20 7b 0d 0a 09 44 57 4f 52 44 20 63 62 NFO {...DWORD cb
72c0: 53 69 7a 65 20 3d 20 53 50 5f 41 4c 54 50 4c 41 Size = SP_ALTPLA
72d0: 54 46 4f 52 4d 5f 49 4e 46 4f 2e 73 69 7a 65 6f TFORM_INFO.sizeo
72e0: 66 3b 0d 0a 09 44 57 4f 52 44 20 50 6c 61 74 66 f;...DWORD Platf
72f0: 6f 72 6d 3b 0d 0a 09 44 57 4f 52 44 20 4d 61 6a orm;...DWORD Maj
7300: 6f 72 56 65 72 73 69 6f 6e 3b 0d 0a 09 44 57 4f orVersion;...DWO
7310: 52 44 20 4d 69 6e 6f 72 56 65 72 73 69 6f 6e 3b RD MinorVersion;
7320: 0d 0a 09 57 4f 52 44 20 20 50 72 6f 63 65 73 73 ...WORD Process
7330: 6f 72 41 72 63 68 69 74 65 63 74 75 72 65 3b 0d orArchitecture;.
7340: 0a 09 57 4f 52 44 20 20 52 65 73 65 72 76 65 64 ..WORD Reserved
7350: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 41 ;..}..alias SP_A
7360: 4c 54 50 4c 41 54 46 4f 52 4d 5f 49 4e 46 4f 2a LTPLATFORM_INFO*
7370: 20 50 53 50 5f 41 4c 54 50 4c 41 54 46 4f 52 4d PSP_ALTPLATFORM
7380: 5f 49 4e 46 4f 3b 0d 0a 0d 0a 73 74 72 75 63 74 _INFO;....struct
7390: 20 53 50 5f 4f 52 49 47 49 4e 41 4c 5f 46 49 4c SP_ORIGINAL_FIL
73a0: 45 5f 49 4e 46 4f 5f 41 20 7b 0d 0a 09 44 57 4f E_INFO_A {...DWO
73b0: 52 44 20 63 62 53 69 7a 65 20 3d 20 53 50 5f 4f RD cbSize = SP_O
73c0: 52 49 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 4e 46 RIGINAL_FILE_INF
73d0: 4f 5f 41 2e 73 69 7a 65 6f 66 3b 0d 0a 09 43 48 O_A.sizeof;...CH
73e0: 41 52 5b 4d 41 58 5f 50 41 54 48 5d 20 4f 72 69 AR[MAX_PATH] Ori
73f0: 67 69 6e 61 6c 49 6e 66 4e 61 6d 65 3b 0d 0a 09 ginalInfName;...
7400: 43 48 41 52 5b 4d 41 58 5f 50 41 54 48 5d 20 4f CHAR[MAX_PATH] O
7410: 72 69 67 69 6e 61 6c 43 61 74 61 6c 6f 67 4e 61 riginalCatalogNa
7420: 6d 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 me;..}..alias SP
7430: 5f 4f 52 49 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 _ORIGINAL_FILE_I
7440: 4e 46 4f 5f 41 2a 20 50 53 50 5f 4f 52 49 47 49 NFO_A* PSP_ORIGI
7450: 4e 41 4c 5f 46 49 4c 45 5f 49 4e 46 4f 5f 41 3b NAL_FILE_INFO_A;
7460: 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 4f 52 ....struct SP_OR
7470: 49 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 4e 46 4f IGINAL_FILE_INFO
7480: 5f 57 20 7b 0d 0a 09 44 57 4f 52 44 20 63 62 53 _W {...DWORD cbS
7490: 69 7a 65 20 3d 20 53 50 5f 4f 52 49 47 49 4e 41 ize = SP_ORIGINA
74a0: 4c 5f 46 49 4c 45 5f 49 4e 46 4f 5f 57 2e 73 69 L_FILE_INFO_W.si
74b0: 7a 65 6f 66 3b 0d 0a 09 57 43 48 41 52 5b 4d 41 zeof;...WCHAR[MA
74c0: 58 5f 50 41 54 48 5d 20 4f 72 69 67 69 6e 61 6c X_PATH] Original
74d0: 49 6e 66 4e 61 6d 65 3b 0d 0a 09 57 43 48 41 52 InfName;...WCHAR
74e0: 5b 4d 41 58 5f 50 41 54 48 5d 20 4f 72 69 67 69 [MAX_PATH] Origi
74f0: 6e 61 6c 43 61 74 61 6c 6f 67 4e 61 6d 65 3b 0d nalCatalogName;.
7500: 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 4f 52 49 .}..alias SP_ORI
7510: 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 4e 46 4f 5f GINAL_FILE_INFO_
7520: 57 2a 20 50 53 50 5f 4f 52 49 47 49 4e 41 4c 5f W* PSP_ORIGINAL_
7530: 46 49 4c 45 5f 49 4e 46 4f 5f 57 3b 0d 0a 0d 0a FILE_INFO_W;....
7540: 73 74 72 75 63 74 20 46 49 4c 45 50 41 54 48 53 struct FILEPATHS
7550: 5f 41 20 7b 0d 0a 09 50 43 53 54 52 20 54 61 72 _A {...PCSTR Tar
7560: 67 65 74 3b 0d 0a 09 50 43 53 54 52 20 53 6f 75 get;...PCSTR Sou
7570: 72 63 65 3b 0d 0a 09 55 49 4e 54 20 20 57 69 6e rce;...UINT Win
7580: 33 32 45 72 72 6f 72 3b 0d 0a 09 44 57 4f 52 44 32Error;...DWORD
7590: 20 46 6c 61 67 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 Flags;..}..alia
75a0: 73 20 46 49 4c 45 50 41 54 48 53 5f 41 2a 20 50 s FILEPATHS_A* P
75b0: 46 49 4c 45 50 41 54 48 53 5f 41 3b 0d 0a 0d 0a FILEPATHS_A;....
75c0: 73 74 72 75 63 74 20 46 49 4c 45 50 41 54 48 53 struct FILEPATHS
75d0: 5f 57 20 7b 0d 0a 09 50 43 57 53 54 52 20 54 61 _W {...PCWSTR Ta
75e0: 72 67 65 74 3b 0d 0a 09 50 43 57 53 54 52 20 53 rget;...PCWSTR S
75f0: 6f 75 72 63 65 3b 0d 0a 09 55 49 4e 54 20 20 20 ource;...UINT
7600: 57 69 6e 33 32 45 72 72 6f 72 3b 0d 0a 09 44 57 Win32Error;...DW
7610: 4f 52 44 20 20 46 6c 61 67 73 3b 0d 0a 7d 0d 0a ORD Flags;..}..
7620: 61 6c 69 61 73 20 46 49 4c 45 50 41 54 48 53 5f alias FILEPATHS_
7630: 57 2a 20 50 46 49 4c 45 50 41 54 48 53 5f 57 3b W* PFILEPATHS_W;
7640: 0d 0a 0d 0a 73 74 72 75 63 74 20 53 4f 55 52 43 ....struct SOURC
7650: 45 5f 4d 45 44 49 41 5f 41 20 7b 0d 0a 09 50 43 E_MEDIA_A {...PC
7660: 53 54 52 20 52 65 73 65 72 76 65 64 3b 0d 0a 09 STR Reserved;...
7670: 50 43 53 54 52 20 54 61 67 66 69 6c 65 3b 0d 0a PCSTR Tagfile;..
7680: 09 50 43 53 54 52 20 44 65 73 63 72 69 70 74 69 .PCSTR Descripti
7690: 6f 6e 3b 0d 0a 09 50 43 53 54 52 20 53 6f 75 72 on;...PCSTR Sour
76a0: 63 65 50 61 74 68 3b 0d 0a 09 50 43 53 54 52 20 cePath;...PCSTR
76b0: 53 6f 75 72 63 65 46 69 6c 65 3b 0d 0a 09 44 57 SourceFile;...DW
76c0: 4f 52 44 20 46 6c 61 67 73 3b 0d 0a 7d 0d 0a 61 ORD Flags;..}..a
76d0: 6c 69 61 73 20 53 4f 55 52 43 45 5f 4d 45 44 49 lias SOURCE_MEDI
76e0: 41 5f 41 2a 20 50 53 4f 55 52 43 45 5f 4d 45 44 A_A* PSOURCE_MED
76f0: 49 41 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 IA_A;....struct
7700: 53 4f 55 52 43 45 5f 4d 45 44 49 41 5f 57 20 7b SOURCE_MEDIA_W {
7710: 0d 0a 09 50 43 57 53 54 52 20 52 65 73 65 72 76 ...PCWSTR Reserv
7720: 65 64 3b 0d 0a 09 50 43 57 53 54 52 20 54 61 67 ed;...PCWSTR Tag
7730: 66 69 6c 65 3b 0d 0a 09 50 43 57 53 54 52 20 44 file;...PCWSTR D
7740: 65 73 63 72 69 70 74 69 6f 6e 3b 0d 0a 09 50 43 escription;...PC
7750: 57 53 54 52 20 53 6f 75 72 63 65 50 61 74 68 3b WSTR SourcePath;
7760: 0d 0a 09 50 43 57 53 54 52 20 53 6f 75 72 63 65 ...PCWSTR Source
7770: 46 69 6c 65 3b 0d 0a 09 44 57 4f 52 44 20 20 46 File;...DWORD F
7780: 6c 61 67 73 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 lags;..}..alias
7790: 53 4f 55 52 43 45 5f 4d 45 44 49 41 5f 57 2a 20 SOURCE_MEDIA_W*
77a0: 50 53 4f 55 52 43 45 5f 4d 45 44 49 41 5f 57 3b PSOURCE_MEDIA_W;
77b0: 0d 0a 0d 0a 73 74 72 75 63 74 20 43 41 42 49 4e ....struct CABIN
77c0: 45 54 5f 49 4e 46 4f 5f 41 20 7b 0d 0a 09 50 43 ET_INFO_A {...PC
77d0: 53 54 52 20 20 43 61 62 69 6e 65 74 50 61 74 68 STR CabinetPath
77e0: 3b 0d 0a 09 50 43 53 54 52 20 20 43 61 62 69 6e ;...PCSTR Cabin
77f0: 65 74 46 69 6c 65 3b 0d 0a 09 50 43 53 54 52 20 etFile;...PCSTR
7800: 20 44 69 73 6b 4e 61 6d 65 3b 0d 0a 09 55 53 48 DiskName;...USH
7810: 4f 52 54 20 53 65 74 49 64 3b 0d 0a 09 55 53 48 ORT SetId;...USH
7820: 4f 52 54 20 43 61 62 69 6e 65 74 4e 75 6d 62 65 ORT CabinetNumbe
7830: 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 43 41 42 r;..}..alias CAB
7840: 49 4e 45 54 5f 49 4e 46 4f 5f 41 2a 20 50 43 41 INET_INFO_A* PCA
7850: 42 49 4e 45 54 5f 49 4e 46 4f 5f 41 3b 0d 0a 0d BINET_INFO_A;...
7860: 0a 73 74 72 75 63 74 20 43 41 42 49 4e 45 54 5f .struct CABINET_
7870: 49 4e 46 4f 5f 57 20 7b 0d 0a 09 50 43 57 53 54 INFO_W {...PCWST
7880: 52 20 43 61 62 69 6e 65 74 50 61 74 68 3b 0d 0a R CabinetPath;..
7890: 09 50 43 57 53 54 52 20 43 61 62 69 6e 65 74 46 .PCWSTR CabinetF
78a0: 69 6c 65 3b 0d 0a 09 50 43 57 53 54 52 20 44 69 ile;...PCWSTR Di
78b0: 73 6b 4e 61 6d 65 3b 0d 0a 09 55 53 48 4f 52 54 skName;...USHORT
78c0: 20 53 65 74 49 64 3b 0d 0a 09 55 53 48 4f 52 54 SetId;...USHORT
78d0: 20 43 61 62 69 6e 65 74 4e 75 6d 62 65 72 3b 0d CabinetNumber;.
78e0: 0a 7d 0d 0a 61 6c 69 61 73 20 43 41 42 49 4e 45 .}..alias CABINE
78f0: 54 5f 49 4e 46 4f 5f 57 2a 20 50 43 41 42 49 4e T_INFO_W* PCABIN
7900: 45 54 5f 49 4e 46 4f 5f 57 3b 0d 0a 0d 0a 73 74 ET_INFO_W;....st
7910: 72 75 63 74 20 46 49 4c 45 5f 49 4e 5f 43 41 42 ruct FILE_IN_CAB
7920: 49 4e 45 54 5f 49 4e 46 4f 5f 41 20 7b 0d 0a 09 INET_INFO_A {...
7930: 50 43 53 54 52 20 4e 61 6d 65 49 6e 43 61 62 69 PCSTR NameInCabi
7940: 6e 65 74 3b 0d 0a 09 44 57 4f 52 44 20 46 69 6c net;...DWORD Fil
7950: 65 53 69 7a 65 3b 0d 0a 09 44 57 4f 52 44 20 57 eSize;...DWORD W
7960: 69 6e 33 32 45 72 72 6f 72 3b 0d 0a 09 57 4f 52 in32Error;...WOR
7970: 44 20 20 44 6f 73 44 61 74 65 3b 0d 0a 09 57 4f D DosDate;...WO
7980: 52 44 20 20 44 6f 73 54 69 6d 65 3b 0d 0a 09 57 RD DosTime;...W
7990: 4f 52 44 20 20 44 6f 73 41 74 74 72 69 62 73 3b ORD DosAttribs;
79a0: 0d 0a 09 43 48 41 52 5b 4d 41 58 5f 50 41 54 48 ...CHAR[MAX_PATH
79b0: 5d 20 46 75 6c 6c 54 61 72 67 65 74 4e 61 6d 65 ] FullTargetName
79c0: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 46 49 4c 45 ;..}..alias FILE
79d0: 5f 49 4e 5f 43 41 42 49 4e 45 54 5f 49 4e 46 4f _IN_CABINET_INFO
79e0: 5f 41 2a 20 50 46 49 4c 45 5f 49 4e 5f 43 41 42 _A* PFILE_IN_CAB
79f0: 49 4e 45 54 5f 49 4e 46 4f 5f 41 3b 0d 0a 0d 0a INET_INFO_A;....
7a00: 73 74 72 75 63 74 20 46 49 4c 45 5f 49 4e 5f 43 struct FILE_IN_C
7a10: 41 42 49 4e 45 54 5f 49 4e 46 4f 5f 57 20 7b 0d ABINET_INFO_W {.
7a20: 0a 09 50 43 57 53 54 52 20 4e 61 6d 65 49 6e 43 ..PCWSTR NameInC
7a30: 61 62 69 6e 65 74 3b 0d 0a 09 44 57 4f 52 44 20 abinet;...DWORD
7a40: 20 46 69 6c 65 53 69 7a 65 3b 0d 0a 09 44 57 4f FileSize;...DWO
7a50: 52 44 20 20 57 69 6e 33 32 45 72 72 6f 72 3b 0d RD Win32Error;.
7a60: 0a 09 57 4f 52 44 20 20 20 44 6f 73 44 61 74 65 ..WORD DosDate
7a70: 3b 0d 0a 09 57 4f 52 44 20 20 20 44 6f 73 54 69 ;...WORD DosTi
7a80: 6d 65 3b 0d 0a 09 57 4f 52 44 20 20 20 44 6f 73 me;...WORD Dos
7a90: 41 74 74 72 69 62 73 3b 0d 0a 09 57 43 48 41 52 Attribs;...WCHAR
7aa0: 5b 4d 41 58 5f 50 41 54 48 5d 20 46 75 6c 6c 54 [MAX_PATH] FullT
7ab0: 61 72 67 65 74 4e 61 6d 65 3b 0d 0a 7d 0d 0a 61 argetName;..}..a
7ac0: 6c 69 61 73 20 46 49 4c 45 5f 49 4e 5f 43 41 42 lias FILE_IN_CAB
7ad0: 49 4e 45 54 5f 49 4e 46 4f 5f 57 2a 20 50 46 49 INET_INFO_W* PFI
7ae0: 4c 45 5f 49 4e 5f 43 41 42 49 4e 45 54 5f 49 4e LE_IN_CABINET_IN
7af0: 46 4f 5f 57 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 FO_W;....struct
7b00: 53 50 5f 46 49 4c 45 5f 43 4f 50 59 5f 50 41 52 SP_FILE_COPY_PAR
7b10: 41 4d 53 5f 41 20 7b 0d 0a 09 44 57 4f 52 44 20 AMS_A {...DWORD
7b20: 20 20 20 63 62 53 69 7a 65 20 3d 20 53 50 5f 46 cbSize = SP_F
7b30: 49 4c 45 5f 43 4f 50 59 5f 50 41 52 41 4d 53 5f ILE_COPY_PARAMS_
7b40: 41 2e 73 69 7a 65 6f 66 3b 0d 0a 09 48 53 50 46 A.sizeof;...HSPF
7b50: 49 4c 45 51 20 51 75 65 75 65 48 61 6e 64 6c 65 ILEQ QueueHandle
7b60: 3b 0d 0a 09 50 43 53 54 52 20 20 20 20 53 6f 75 ;...PCSTR Sou
7b70: 72 63 65 52 6f 6f 74 50 61 74 68 3b 0d 0a 09 50 rceRootPath;...P
7b80: 43 53 54 52 20 20 20 20 53 6f 75 72 63 65 50 61 CSTR SourcePa
7b90: 74 68 3b 0d 0a 09 50 43 53 54 52 20 20 20 20 53 th;...PCSTR S
7ba0: 6f 75 72 63 65 46 69 6c 65 6e 61 6d 65 3b 0d 0a ourceFilename;..
7bb0: 09 50 43 53 54 52 20 20 20 20 53 6f 75 72 63 65 .PCSTR Source
7bc0: 44 65 73 63 72 69 70 74 69 6f 6e 3b 0d 0a 09 50 Description;...P
7bd0: 43 53 54 52 20 20 20 20 53 6f 75 72 63 65 54 61 CSTR SourceTa
7be0: 67 66 69 6c 65 3b 0d 0a 09 50 43 53 54 52 20 20 gfile;...PCSTR
7bf0: 20 20 54 61 72 67 65 74 44 69 72 65 63 74 6f 72 TargetDirector
7c00: 79 3b 0d 0a 09 50 43 53 54 52 20 20 20 20 54 61 y;...PCSTR Ta
7c10: 72 67 65 74 46 69 6c 65 6e 61 6d 65 3b 0d 0a 09 rgetFilename;...
7c20: 44 57 4f 52 44 20 20 20 20 43 6f 70 79 53 74 79 DWORD CopySty
7c30: 6c 65 3b 0d 0a 09 48 49 4e 46 20 20 20 20 20 4c le;...HINF L
7c40: 61 79 6f 75 74 49 6e 66 3b 0d 0a 09 50 43 53 54 ayoutInf;...PCST
7c50: 52 20 20 20 20 53 65 63 75 72 69 74 79 44 65 73 R SecurityDes
7c60: 63 72 69 70 74 6f 72 3b 0d 0a 7d 0d 0a 61 6c 69 criptor;..}..ali
7c70: 61 73 20 53 50 5f 46 49 4c 45 5f 43 4f 50 59 5f as SP_FILE_COPY_
7c80: 50 41 52 41 4d 53 5f 41 2a 20 50 53 50 5f 46 49 PARAMS_A* PSP_FI
7c90: 4c 45 5f 43 4f 50 59 5f 50 41 52 41 4d 53 5f 41 LE_COPY_PARAMS_A
7ca0: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 46 ;....struct SP_F
7cb0: 49 4c 45 5f 43 4f 50 59 5f 50 41 52 41 4d 53 5f ILE_COPY_PARAMS_
7cc0: 57 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 63 W {...DWORD c
7cd0: 62 53 69 7a 65 20 3d 20 53 50 5f 46 49 4c 45 5f bSize = SP_FILE_
7ce0: 43 4f 50 59 5f 50 41 52 41 4d 53 5f 57 2e 73 69 COPY_PARAMS_W.si
7cf0: 7a 65 6f 66 3b 0d 0a 09 48 53 50 46 49 4c 45 51 zeof;...HSPFILEQ
7d00: 20 51 75 65 75 65 48 61 6e 64 6c 65 3b 0d 0a 09 QueueHandle;...
7d10: 50 43 57 53 54 52 20 20 20 53 6f 75 72 63 65 52 PCWSTR SourceR
7d20: 6f 6f 74 50 61 74 68 3b 0d 0a 09 50 43 57 53 54 ootPath;...PCWST
7d30: 52 20 20 20 53 6f 75 72 63 65 50 61 74 68 3b 0d R SourcePath;.
7d40: 0a 09 50 43 57 53 54 52 20 20 20 53 6f 75 72 63 ..PCWSTR Sourc
7d50: 65 46 69 6c 65 6e 61 6d 65 3b 0d 0a 09 50 43 57 eFilename;...PCW
7d60: 53 54 52 20 20 20 53 6f 75 72 63 65 44 65 73 63 STR SourceDesc
7d70: 72 69 70 74 69 6f 6e 3b 0d 0a 09 50 43 57 53 54 ription;...PCWST
7d80: 52 20 20 20 53 6f 75 72 63 65 54 61 67 66 69 6c R SourceTagfil
7d90: 65 3b 0d 0a 09 50 43 57 53 54 52 20 20 20 54 61 e;...PCWSTR Ta
7da0: 72 67 65 74 44 69 72 65 63 74 6f 72 79 3b 0d 0a rgetDirectory;..
7db0: 09 50 43 57 53 54 52 20 20 20 54 61 72 67 65 74 .PCWSTR Target
7dc0: 46 69 6c 65 6e 61 6d 65 3b 0d 0a 09 44 57 4f 52 Filename;...DWOR
7dd0: 44 20 20 20 20 43 6f 70 79 53 74 79 6c 65 3b 0d D CopyStyle;.
7de0: 0a 09 48 49 4e 46 20 20 20 20 20 4c 61 79 6f 75 ..HINF Layou
7df0: 74 49 6e 66 3b 0d 0a 09 50 43 57 53 54 52 20 20 tInf;...PCWSTR
7e00: 20 53 65 63 75 72 69 74 79 44 65 73 63 72 69 70 SecurityDescrip
7e10: 74 6f 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 tor;..}..alias S
7e20: 50 5f 46 49 4c 45 5f 43 4f 50 59 5f 50 41 52 41 P_FILE_COPY_PARA
7e30: 4d 53 5f 57 2a 20 50 53 50 5f 46 49 4c 45 5f 43 MS_W* PSP_FILE_C
7e40: 4f 50 59 5f 50 41 52 41 4d 53 5f 57 3b 0d 0a 0d OPY_PARAMS_W;...
7e50: 0a 73 74 72 75 63 74 20 53 50 5f 44 45 56 49 4e .struct SP_DEVIN
7e60: 46 4f 5f 44 41 54 41 20 7b 0d 0a 09 44 57 4f 52 FO_DATA {...DWOR
7e70: 44 20 20 20 20 20 63 62 53 69 7a 65 20 3d 20 53 D cbSize = S
7e80: 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 2e 73 P_DEVINFO_DATA.s
7e90: 69 7a 65 6f 66 3b 0d 0a 09 47 55 49 44 20 20 20 izeof;...GUID
7ea0: 20 20 20 43 6c 61 73 73 47 75 69 64 3b 0d 0a 09 ClassGuid;...
7eb0: 44 57 4f 52 44 20 20 20 20 20 44 65 76 49 6e 73 DWORD DevIns
7ec0: 74 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 52 t;...ULONG_PTR R
7ed0: 65 73 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c 69 eserved;..}..ali
7ee0: 61 73 20 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 as SP_DEVINFO_DA
7ef0: 54 41 2a 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f TA* PSP_DEVINFO_
7f00: 44 41 54 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 DATA;....struct
7f10: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
7f20: 41 43 45 5f 44 41 54 41 20 7b 0d 0a 09 44 57 4f ACE_DATA {...DWO
7f30: 52 44 20 20 20 20 20 63 62 53 69 7a 65 20 3d 20 RD cbSize =
7f40: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
7f50: 41 43 45 5f 44 41 54 41 2e 73 69 7a 65 6f 66 3b ACE_DATA.sizeof;
7f60: 0d 0a 09 47 55 49 44 20 20 20 20 20 20 49 6e 74 ...GUID Int
7f70: 65 72 66 61 63 65 43 6c 61 73 73 47 75 69 64 3b erfaceClassGuid;
7f80: 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 46 6c 61 ...DWORD Fla
7f90: 67 73 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 gs;...ULONG_PTR
7fa0: 52 65 73 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c Reserved;..}..al
7fb0: 69 61 73 20 53 50 5f 44 45 56 49 43 45 5f 49 4e ias SP_DEVICE_IN
7fc0: 54 45 52 46 41 43 45 5f 44 41 54 41 2a 20 50 53 TERFACE_DATA* PS
7fd0: 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 P_DEVICE_INTERFA
7fe0: 43 45 5f 44 41 54 41 3b 0d 0a 64 65 70 72 65 63 CE_DATA;..deprec
7ff0: 61 74 65 64 20 61 6c 69 61 73 20 53 50 5f 44 45 ated alias SP_DE
8000: 56 49 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 VICE_INTERFACE_D
8010: 41 54 41 20 53 50 5f 49 4e 54 45 52 46 41 43 45 ATA SP_INTERFACE
8020: 5f 44 45 56 49 43 45 5f 44 41 54 41 3b 0d 0a 64 _DEVICE_DATA;..d
8030: 65 70 72 65 63 61 74 65 64 20 61 6c 69 61 73 20 eprecated alias
8040: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
8050: 41 43 45 5f 44 41 54 41 2a 20 50 53 50 5f 49 4e ACE_DATA* PSP_IN
8060: 54 45 52 46 41 43 45 5f 44 45 56 49 43 45 5f 44 TERFACE_DEVICE_D
8070: 41 54 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 ATA;....struct S
8080: 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 P_DEVICE_INTERFA
8090: 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 41 CE_DETAIL_DATA_A
80a0: 20 7b 0d 0a 09 44 57 4f 52 44 20 63 62 53 69 7a {...DWORD cbSiz
80b0: 65 20 3d 20 53 50 5f 44 45 56 49 43 45 5f 49 4e e = SP_DEVICE_IN
80c0: 54 45 52 46 41 43 45 5f 44 45 54 41 49 4c 5f 44 TERFACE_DETAIL_D
80d0: 41 54 41 5f 41 2e 73 69 7a 65 6f 66 3b 0d 0a 09 ATA_A.sizeof;...
80e0: 43 48 41 52 5b 31 5d 20 5f 44 65 76 69 63 65 50 CHAR[1] _DeviceP
80f0: 61 74 68 3b 0d 0a 09 43 48 41 52 2a 20 44 65 76 ath;...CHAR* Dev
8100: 69 63 65 50 61 74 68 28 29 20 7b 20 72 65 74 75 icePath() { retu
8110: 72 6e 20 5f 44 65 76 69 63 65 50 61 74 68 2e 70 rn _DevicePath.p
8120: 74 72 3b 20 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20 tr; }..}..alias
8130: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
8140: 41 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f ACE_DETAIL_DATA_
8150: 41 2a 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e A* PSP_DEVICE_IN
8160: 54 45 52 46 41 43 45 5f 44 45 54 41 49 4c 5f 44 TERFACE_DETAIL_D
8170: 41 54 41 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 ATA_A;....struct
8180: 20 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 SP_DEVICE_INTER
8190: 46 41 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 FACE_DETAIL_DATA
81a0: 5f 57 20 7b 0d 0a 09 44 57 4f 52 44 20 20 63 62 _W {...DWORD cb
81b0: 53 69 7a 65 20 3d 20 53 50 5f 44 45 56 49 43 45 Size = SP_DEVICE
81c0: 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 _INTERFACE_DETAI
81d0: 4c 5f 44 41 54 41 5f 57 2e 73 69 7a 65 6f 66 3b L_DATA_W.sizeof;
81e0: 0d 0a 09 57 43 48 41 52 5b 31 5d 20 5f 44 65 76 ...WCHAR[1] _Dev
81f0: 69 63 65 50 61 74 68 3b 0d 0a 09 57 43 48 41 52 icePath;...WCHAR
8200: 2a 20 44 65 76 69 63 65 50 61 74 68 28 29 20 7b * DevicePath() {
8210: 20 72 65 74 75 72 6e 20 5f 44 65 76 69 63 65 50 return _DeviceP
8220: 61 74 68 2e 70 74 72 3b 20 7d 0d 0a 7d 0d 0a 61 ath.ptr; }..}..a
8230: 6c 69 61 73 20 53 50 5f 44 45 56 49 43 45 5f 49 lias SP_DEVICE_I
8240: 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 4c 5f NTERFACE_DETAIL_
8250: 44 41 54 41 5f 57 2a 20 50 53 50 5f 44 45 56 49 DATA_W* PSP_DEVI
8260: 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 CE_INTERFACE_DET
8270: 41 49 4c 5f 44 41 54 41 5f 57 3b 0d 0a 0d 0a 64 AIL_DATA_W;....d
8280: 65 70 72 65 63 61 74 65 64 20 61 6c 69 61 73 20 eprecated alias
8290: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
82a0: 41 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f ACE_DETAIL_DATA_
82b0: 41 20 53 50 5f 49 4e 54 45 52 46 41 43 45 5f 44 A SP_INTERFACE_D
82c0: 45 56 49 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 EVICE_DETAIL_DAT
82d0: 41 5f 41 3b 0d 0a 64 65 70 72 65 63 61 74 65 64 A_A;..deprecated
82e0: 20 61 6c 69 61 73 20 53 50 5f 44 45 56 49 43 45 alias SP_DEVICE
82f0: 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 _INTERFACE_DETAI
8300: 4c 5f 44 41 54 41 5f 41 2a 20 50 53 50 5f 49 4e L_DATA_A* PSP_IN
8310: 54 45 52 46 41 43 45 5f 44 45 56 49 43 45 5f 44 TERFACE_DEVICE_D
8320: 45 54 41 49 4c 5f 44 41 54 41 5f 41 3b 0d 0a 64 ETAIL_DATA_A;..d
8330: 65 70 72 65 63 61 74 65 64 20 61 6c 69 61 73 20 eprecated alias
8340: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
8350: 41 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f ACE_DETAIL_DATA_
8360: 57 20 53 50 5f 49 4e 54 45 52 46 41 43 45 5f 44 W SP_INTERFACE_D
8370: 45 56 49 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 EVICE_DETAIL_DAT
8380: 41 5f 57 3b 0d 0a 64 65 70 72 65 63 61 74 65 64 A_W;..deprecated
8390: 20 61 6c 69 61 73 20 53 50 5f 44 45 56 49 43 45 alias SP_DEVICE
83a0: 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 _INTERFACE_DETAI
83b0: 4c 5f 44 41 54 41 5f 57 2a 20 50 53 50 5f 49 4e L_DATA_W* PSP_IN
83c0: 54 45 52 46 41 43 45 5f 44 45 56 49 43 45 5f 44 TERFACE_DEVICE_D
83d0: 45 54 41 49 4c 5f 44 41 54 41 5f 57 3b 0d 0a 0d ETAIL_DATA_W;...
83e0: 0a 73 74 72 75 63 74 20 53 50 5f 44 45 56 49 4e .struct SP_DEVIN
83f0: 46 4f 5f 4c 49 53 54 5f 44 45 54 41 49 4c 5f 44 FO_LIST_DETAIL_D
8400: 41 54 41 5f 41 20 7b 0d 0a 09 44 57 4f 52 44 20 ATA_A {...DWORD
8410: 20 63 62 53 69 7a 65 20 3d 20 53 50 5f 44 45 56 cbSize = SP_DEV
8420: 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 41 49 4c INFO_LIST_DETAIL
8430: 5f 44 41 54 41 5f 41 2e 73 69 7a 65 6f 66 3b 0d _DATA_A.sizeof;.
8440: 0a 09 47 55 49 44 20 20 20 43 6c 61 73 73 47 75 ..GUID ClassGu
8450: 69 64 3b 0d 0a 09 48 41 4e 44 4c 45 20 52 65 6d id;...HANDLE Rem
8460: 6f 74 65 4d 61 63 68 69 6e 65 48 61 6e 64 6c 65 oteMachineHandle
8470: 3b 0d 0a 09 43 48 41 52 5b 53 50 5f 4d 41 58 5f ;...CHAR[SP_MAX_
8480: 4d 41 43 48 49 4e 45 4e 41 4d 45 5f 4c 45 4e 47 MACHINENAME_LENG
8490: 54 48 5d 20 52 65 6d 6f 74 65 4d 61 63 68 69 6e TH] RemoteMachin
84a0: 65 4e 61 6d 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 eName;..}..alias
84b0: 20 53 50 5f 44 45 56 49 4e 46 4f 5f 4c 49 53 54 SP_DEVINFO_LIST
84c0: 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 41 2a 20 _DETAIL_DATA_A*
84d0: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 4c 49 53 54 PSP_DEVINFO_LIST
84e0: 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 41 3b 0d _DETAIL_DATA_A;.
84f0: 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 44 45 56 ...struct SP_DEV
8500: 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 41 49 4c INFO_LIST_DETAIL
8510: 5f 44 41 54 41 5f 57 20 7b 0d 0a 09 44 57 4f 52 _DATA_W {...DWOR
8520: 44 20 20 63 62 53 69 7a 65 20 3d 20 53 50 5f 44 D cbSize = SP_D
8530: 45 56 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 41 EVINFO_LIST_DETA
8540: 49 4c 5f 44 41 54 41 5f 57 2e 73 69 7a 65 6f 66 IL_DATA_W.sizeof
8550: 3b 0d 0a 09 47 55 49 44 20 20 20 43 6c 61 73 73 ;...GUID Class
8560: 47 75 69 64 3b 0d 0a 09 48 41 4e 44 4c 45 20 52 Guid;...HANDLE R
8570: 65 6d 6f 74 65 4d 61 63 68 69 6e 65 48 61 6e 64 emoteMachineHand
8580: 6c 65 3b 0d 0a 09 57 43 48 41 52 5b 53 50 5f 4d le;...WCHAR[SP_M
8590: 41 58 5f 4d 41 43 48 49 4e 45 4e 41 4d 45 5f 4c AX_MACHINENAME_L
85a0: 45 4e 47 54 48 5d 20 52 65 6d 6f 74 65 4d 61 63 ENGTH] RemoteMac
85b0: 68 69 6e 65 4e 61 6d 65 3b 0d 0a 7d 0d 0a 61 6c hineName;..}..al
85c0: 69 61 73 20 53 50 5f 44 45 56 49 4e 46 4f 5f 4c ias SP_DEVINFO_L
85d0: 49 53 54 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f IST_DETAIL_DATA_
85e0: 57 2a 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 4c W* PSP_DEVINFO_L
85f0: 49 53 54 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f IST_DETAIL_DATA_
8600: 57 3b 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 69 6e W;....extern(Win
8610: 64 6f 77 73 29 20 61 6c 69 61 73 20 55 49 4e 54 dows) alias UINT
8620: 20 66 75 6e 63 74 69 6f 6e 28 50 56 4f 49 44 2c function(PVOID,
8630: 20 55 49 4e 54 2c 20 55 49 4e 54 5f 50 54 52 2c UINT, UINT_PTR,
8640: 20 55 49 4e 54 5f 50 54 52 29 20 50 53 50 5f 46 UINT_PTR) PSP_F
8650: 49 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f 41 3b 0d ILE_CALLBACK_A;.
8660: 0a 65 78 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 .extern(Windows)
8670: 20 61 6c 69 61 73 20 55 49 4e 54 20 66 75 6e 63 alias UINT func
8680: 74 69 6f 6e 28 50 56 4f 49 44 2c 20 55 49 4e 54 tion(PVOID, UINT
8690: 2c 20 55 49 4e 54 5f 50 54 52 2c 20 55 49 4e 54 , UINT_PTR, UINT
86a0: 5f 50 54 52 29 20 50 53 50 5f 46 49 4c 45 5f 43 _PTR) PSP_FILE_C
86b0: 41 4c 4c 42 41 43 4b 5f 57 3b 0d 0a 0d 0a 73 74 ALLBACK_W;....st
86c0: 72 75 63 74 20 53 50 5f 44 45 56 49 4e 53 54 41 ruct SP_DEVINSTA
86d0: 4c 4c 5f 50 41 52 41 4d 53 5f 41 20 7b 0d 0a 09 LL_PARAMS_A {...
86e0: 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 DWORD
86f0: 20 20 20 20 63 62 53 69 7a 65 20 3d 20 53 50 5f cbSize = SP_
8700: 44 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d DEVINSTALL_PARAM
8710: 53 5f 41 2e 73 69 7a 65 6f 66 3b 0d 0a 09 44 57 S_A.sizeof;...DW
8720: 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20 ORD
8730: 20 20 46 6c 61 67 73 3b 0d 0a 09 44 57 4f 52 44 Flags;...DWORD
8740: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 46 F
8750: 6c 61 67 73 45 78 3b 0d 0a 09 48 57 4e 44 20 20 lagsEx;...HWND
8760: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 68 77 hw
8770: 6e 64 50 61 72 65 6e 74 3b 0d 0a 09 50 53 50 5f ndParent;...PSP_
8780: 46 49 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f 41 20 FILE_CALLBACK_A
8790: 49 6e 73 74 61 6c 6c 4d 73 67 48 61 6e 64 6c 65 InstallMsgHandle
87a0: 72 3b 0d 0a 09 50 56 4f 49 44 20 20 20 20 20 20 r;...PVOID
87b0: 20 20 20 20 20 20 20 20 20 49 6e 73 74 61 6c 6c Install
87c0: 4d 73 67 48 61 6e 64 6c 65 72 43 6f 6e 74 65 78 MsgHandlerContex
87d0: 74 3b 0d 0a 09 48 53 50 46 49 4c 45 51 20 20 20 t;...HSPFILEQ
87e0: 20 20 20 20 20 20 20 20 20 46 69 6c 65 51 75 65 FileQue
87f0: 75 65 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 ue;...ULONG_PTR
8800: 20 20 20 20 20 20 20 20 20 20 43 6c 61 73 73 49 ClassI
8810: 6e 73 74 61 6c 6c 52 65 73 65 72 76 65 64 3b 0d nstallReserved;.
8820: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
8830: 20 20 20 20 20 20 52 65 73 65 72 76 65 64 3b 0d Reserved;.
8840: 0a 09 43 48 41 52 5b 4d 41 58 5f 50 41 54 48 5d ..CHAR[MAX_PATH]
8850: 20 20 20 20 20 20 44 72 69 76 65 72 50 61 74 68 DriverPath
8860: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 44 ;..}..alias SP_D
8870: 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 EVINSTALL_PARAMS
8880: 5f 41 2a 20 50 53 50 5f 44 45 56 49 4e 53 54 41 _A* PSP_DEVINSTA
8890: 4c 4c 5f 50 41 52 41 4d 53 5f 41 3b 0d 0a 0d 0a LL_PARAMS_A;....
88a0: 73 74 72 75 63 74 20 53 50 5f 44 45 56 49 4e 53 struct SP_DEVINS
88b0: 54 41 4c 4c 5f 50 41 52 41 4d 53 5f 57 20 7b 0d TALL_PARAMS_W {.
88c0: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
88d0: 20 20 20 20 20 20 63 62 53 69 7a 65 20 3d 20 53 cbSize = S
88e0: 50 5f 44 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 P_DEVINSTALL_PAR
88f0: 41 4d 53 5f 57 2e 73 69 7a 65 6f 66 3b 0d 0a 09 AMS_W.sizeof;...
8900: 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 20 DWORD
8910: 20 20 20 20 46 6c 61 67 73 3b 0d 0a 09 44 57 4f Flags;...DWO
8920: 52 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 RD
8930: 20 46 6c 61 67 73 45 78 3b 0d 0a 09 48 57 4e 44 FlagsEx;...HWND
8940: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
8950: 68 77 6e 64 50 61 72 65 6e 74 3b 0d 0a 09 50 53 hwndParent;...PS
8960: 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f P_FILE_CALLBACK_
8970: 57 20 49 6e 73 74 61 6c 6c 4d 73 67 48 61 6e 64 W InstallMsgHand
8980: 6c 65 72 3b 0d 0a 09 50 56 4f 49 44 20 20 20 20 ler;...PVOID
8990: 20 20 20 20 20 20 20 20 20 20 20 49 6e 73 74 61 Insta
89a0: 6c 6c 4d 73 67 48 61 6e 64 6c 65 72 43 6f 6e 74 llMsgHandlerCont
89b0: 65 78 74 3b 0d 0a 09 48 53 50 46 49 4c 45 51 20 ext;...HSPFILEQ
89c0: 20 20 20 20 20 20 20 20 20 20 20 46 69 6c 65 51 FileQ
89d0: 75 65 75 65 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 ueue;...ULONG_PT
89e0: 52 20 20 20 20 20 20 20 20 20 20 20 43 6c 61 73 R Clas
89f0: 73 49 6e 73 74 61 6c 6c 52 65 73 65 72 76 65 64 sInstallReserved
8a00: 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 ;...DWORD
8a10: 20 20 20 20 20 20 20 20 52 65 73 65 72 76 65 64 Reserved
8a20: 3b 0d 0a 09 57 43 48 41 52 5b 4d 41 58 5f 50 41 ;...WCHAR[MAX_PA
8a30: 54 48 5d 20 20 20 20 20 44 72 69 76 65 72 50 61 TH] DriverPa
8a40: 74 68 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 th;..}..alias SP
8a50: 5f 44 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 _DEVINSTALL_PARA
8a60: 4d 53 5f 57 2a 20 50 53 50 5f 44 45 56 49 4e 53 MS_W* PSP_DEVINS
8a70: 54 41 4c 4c 5f 50 41 52 41 4d 53 5f 57 3b 0d 0a TALL_PARAMS_W;..
8a80: 0d 0a 73 74 72 75 63 74 20 53 50 5f 43 4c 41 53 ..struct SP_CLAS
8a90: 53 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 SINSTALL_HEADER
8aa0: 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 {...DWORD
8ab0: 63 62 53 69 7a 65 20 3d 20 53 50 5f 43 4c 41 53 cbSize = SP_CLAS
8ac0: 53 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 2e SINSTALL_HEADER.
8ad0: 73 69 7a 65 6f 66 3b 0d 0a 09 44 49 5f 46 55 4e sizeof;...DI_FUN
8ae0: 43 54 49 4f 4e 20 49 6e 73 74 61 6c 6c 46 75 6e CTION InstallFun
8af0: 63 74 69 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 ction;..}..alias
8b00: 20 53 50 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c SP_CLASSINSTALL
8b10: 5f 48 45 41 44 45 52 2a 20 50 53 50 5f 43 4c 41 _HEADER* PSP_CLA
8b20: 53 53 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 SSINSTALL_HEADER
8b30: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 45 ;....struct SP_E
8b40: 4e 41 42 4c 45 43 4c 41 53 53 5f 50 41 52 41 4d NABLECLASS_PARAM
8b50: 53 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 49 4e S {...SP_CLASSIN
8b60: 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 6c 61 STALL_HEADER Cla
8b70: 73 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 72 3b ssInstallHeader;
8b80: 0d 0a 09 47 55 49 44 20 20 20 20 20 20 20 20 20 ...GUID
8b90: 20 20 20 20 20 20 20 20 20 20 43 6c 61 73 73 47 ClassG
8ba0: 75 69 64 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 uid;...DWORD
8bb0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 45 6e En
8bc0: 61 62 6c 65 4d 65 73 73 61 67 65 3b 0d 0a 7d 0d ableMessage;..}.
8bd0: 0a 61 6c 69 61 73 20 53 50 5f 45 4e 41 42 4c 45 .alias SP_ENABLE
8be0: 43 4c 41 53 53 5f 50 41 52 41 4d 53 2a 20 50 53 CLASS_PARAMS* PS
8bf0: 50 5f 45 4e 41 42 4c 45 43 4c 41 53 53 5f 50 41 P_ENABLECLASS_PA
8c00: 52 41 4d 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 RAMS;....struct
8c10: 53 50 5f 4d 4f 56 45 44 45 56 5f 50 41 52 41 4d SP_MOVEDEV_PARAM
8c20: 53 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 49 4e S {...SP_CLASSIN
8c30: 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 6c 61 STALL_HEADER Cla
8c40: 73 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 72 3b ssInstallHeader;
8c50: 0d 0a 09 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 ...SP_DEVINFO_DA
8c60: 54 41 20 20 20 20 20 20 20 20 53 6f 75 72 63 65 TA Source
8c70: 44 65 76 69 63 65 49 6e 66 6f 44 61 74 61 3b 0d DeviceInfoData;.
8c80: 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 4d 4f 56 .}..alias SP_MOV
8c90: 45 44 45 56 5f 50 41 52 41 4d 53 2a 20 50 53 50 EDEV_PARAMS* PSP
8ca0: 5f 4d 4f 56 45 44 45 56 5f 50 41 52 41 4d 53 3b _MOVEDEV_PARAMS;
8cb0: 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 50 52 ....struct SP_PR
8cc0: 4f 50 43 48 41 4e 47 45 5f 50 41 52 41 4d 53 20 OPCHANGE_PARAMS
8cd0: 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 49 4e 53 54 {...SP_CLASSINST
8ce0: 41 4c 4c 5f 48 45 41 44 45 52 20 43 6c 61 73 73 ALL_HEADER Class
8cf0: 49 6e 73 74 61 6c 6c 48 65 61 64 65 72 3b 0d 0a InstallHeader;..
8d00: 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 .DWORD
8d10: 20 20 20 20 20 20 20 20 53 74 61 74 65 43 68 61 StateCha
8d20: 6e 67 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 nge;...DWORD
8d30: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 53 63 Sc
8d40: 6f 70 65 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 ope;...DWORD
8d50: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 48 77 Hw
8d60: 50 72 6f 66 69 6c 65 3b 0d 0a 7d 0d 0a 61 6c 69 Profile;..}..ali
8d70: 61 73 20 53 50 5f 50 52 4f 50 43 48 41 4e 47 45 as SP_PROPCHANGE
8d80: 5f 50 41 52 41 4d 53 2a 20 50 53 50 5f 50 52 4f _PARAMS* PSP_PRO
8d90: 50 43 48 41 4e 47 45 5f 50 41 52 41 4d 53 3b 0d PCHANGE_PARAMS;.
8da0: 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 52 45 4d ...struct SP_REM
8db0: 4f 56 45 44 45 56 49 43 45 5f 50 41 52 41 4d 53 OVEDEVICE_PARAMS
8dc0: 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 49 4e 53 {...SP_CLASSINS
8dd0: 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 6c 61 73 TALL_HEADER Clas
8de0: 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 72 3b 0d sInstallHeader;.
8df0: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
8e00: 20 20 20 20 20 20 20 20 20 53 63 6f 70 65 3b 0d Scope;.
8e10: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
8e20: 20 20 20 20 20 20 20 20 20 48 77 50 72 6f 66 69 HwProfi
8e30: 6c 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 le;..}..alias SP
8e40: 5f 52 45 4d 4f 56 45 44 45 56 49 43 45 5f 50 41 _REMOVEDEVICE_PA
8e50: 52 41 4d 53 2a 20 50 53 50 5f 52 45 4d 4f 56 45 RAMS* PSP_REMOVE
8e60: 44 45 56 49 43 45 5f 50 41 52 41 4d 53 3b 0d 0a DEVICE_PARAMS;..
8e70: 0d 0a 73 74 72 75 63 74 20 53 50 5f 55 4e 52 45 ..struct SP_UNRE
8e80: 4d 4f 56 45 44 45 56 49 43 45 5f 50 41 52 41 4d MOVEDEVICE_PARAM
8e90: 53 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 49 4e S {...SP_CLASSIN
8ea0: 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 6c 61 STALL_HEADER Cla
8eb0: 73 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 72 3b ssInstallHeader;
8ec0: 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 ...DWORD
8ed0: 20 20 20 20 20 20 20 20 20 20 53 63 6f 70 65 3b Scope;
8ee0: 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 ...DWORD
8ef0: 20 20 20 20 20 20 20 20 20 20 48 77 50 72 6f 66 HwProf
8f00: 69 6c 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 ile;..}..alias S
8f10: 50 5f 55 4e 52 45 4d 4f 56 45 44 45 56 49 43 45 P_UNREMOVEDEVICE
8f20: 5f 50 41 52 41 4d 53 2a 20 50 53 50 5f 55 4e 52 _PARAMS* PSP_UNR
8f30: 45 4d 4f 56 45 44 45 56 49 43 45 5f 50 41 52 41 EMOVEDEVICE_PARA
8f40: 4d 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 MS;....struct SP
8f50: 5f 53 45 4c 45 43 54 44 45 56 49 43 45 5f 50 41 _SELECTDEVICE_PA
8f60: 52 41 4d 53 5f 41 20 7b 0d 0a 09 53 50 5f 43 4c RAMS_A {...SP_CL
8f70: 41 53 53 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 ASSINSTALL_HEADE
8f80: 52 20 20 20 20 43 6c 61 73 73 49 6e 73 74 61 6c R ClassInstal
8f90: 6c 48 65 61 64 65 72 3b 0d 0a 09 43 48 41 52 5b lHeader;...CHAR[
8fa0: 4d 41 58 5f 54 49 54 4c 45 5f 4c 45 4e 5d 20 20 MAX_TITLE_LEN]
8fb0: 20 20 20 20 20 54 69 74 6c 65 3b 0d 0a 09 43 48 Title;...CH
8fc0: 41 52 5b 4d 41 58 5f 49 4e 53 54 52 55 43 54 49 AR[MAX_INSTRUCTI
8fd0: 4f 4e 5f 4c 45 4e 5d 20 49 6e 73 74 72 75 63 74 ON_LEN] Instruct
8fe0: 69 6f 6e 73 3b 0d 0a 09 43 48 41 52 5b 4d 41 58 ions;...CHAR[MAX
8ff0: 5f 4c 41 42 45 4c 5f 4c 45 4e 5d 20 20 20 20 20 _LABEL_LEN]
9000: 20 20 4c 69 73 74 4c 61 62 65 6c 3b 0d 0a 09 43 ListLabel;...C
9010: 48 41 52 5b 4d 41 58 5f 53 55 42 54 49 54 4c 45 HAR[MAX_SUBTITLE
9020: 5f 4c 45 4e 5d 20 20 20 20 53 75 62 54 69 74 6c _LEN] SubTitl
9030: 65 3b 0d 0a 09 42 59 54 45 5b 32 5d 20 20 20 20 e;...BYTE[2]
9040: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 52 R
9050: 65 73 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c 69 eserved;..}..ali
9060: 61 73 20 53 50 5f 53 45 4c 45 43 54 44 45 56 49 as SP_SELECTDEVI
9070: 43 45 5f 50 41 52 41 4d 53 5f 41 2a 20 50 53 50 CE_PARAMS_A* PSP
9080: 5f 53 45 4c 45 43 54 44 45 56 49 43 45 5f 50 41 _SELECTDEVICE_PA
9090: 52 41 4d 53 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 RAMS_A;....struc
90a0: 74 20 53 50 5f 53 45 4c 45 43 54 44 45 56 49 43 t SP_SELECTDEVIC
90b0: 45 5f 50 41 52 41 4d 53 5f 57 20 7b 0d 0a 09 53 E_PARAMS_W {...S
90c0: 50 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c 5f 48 P_CLASSINSTALL_H
90d0: 45 41 44 45 52 20 20 20 20 20 43 6c 61 73 73 49 EADER ClassI
90e0: 6e 73 74 61 6c 6c 48 65 61 64 65 72 3b 0d 0a 09 nstallHeader;...
90f0: 57 43 48 41 52 5b 4d 41 58 5f 54 49 54 4c 45 5f WCHAR[MAX_TITLE_
9100: 4c 45 4e 5d 20 20 20 20 20 20 20 54 69 74 6c 65 LEN] Title
9110: 3b 0d 0a 09 57 43 48 41 52 5b 4d 41 58 5f 49 4e ;...WCHAR[MAX_IN
9120: 53 54 52 55 43 54 49 4f 4e 5f 4c 45 4e 5d 20 49 STRUCTION_LEN] I
9130: 6e 73 74 72 75 63 74 69 6f 6e 73 3b 0d 0a 09 57 nstructions;...W
9140: 43 48 41 52 5b 4d 41 58 5f 4c 41 42 45 4c 5f 4c CHAR[MAX_LABEL_L
9150: 45 4e 5d 20 20 20 20 20 20 20 4c 69 73 74 4c 61 EN] ListLa
9160: 62 65 6c 3b 0d 0a 09 57 43 48 41 52 5b 4d 41 58 bel;...WCHAR[MAX
9170: 5f 53 55 42 54 49 54 4c 45 5f 4c 45 4e 5d 20 20 _SUBTITLE_LEN]
9180: 20 20 53 75 62 54 69 74 6c 65 3b 0d 0a 7d 0d 0a SubTitle;..}..
9190: 61 6c 69 61 73 20 53 50 5f 53 45 4c 45 43 54 44 alias SP_SELECTD
91a0: 45 56 49 43 45 5f 50 41 52 41 4d 53 5f 57 2a 20 EVICE_PARAMS_W*
91b0: 50 53 50 5f 53 45 4c 45 43 54 44 45 56 49 43 45 PSP_SELECTDEVICE
91c0: 5f 50 41 52 41 4d 53 5f 57 3b 0d 0a 0d 0a 65 78 _PARAMS_W;....ex
91d0: 74 65 72 6e 28 57 69 6e 64 6f 77 73 29 20 61 6c tern(Windows) al
91e0: 69 61 73 20 42 4f 4f 4c 20 66 75 6e 63 74 69 6f ias BOOL functio
91f0: 6e 28 50 56 4f 49 44 2c 20 44 57 4f 52 44 29 20 n(PVOID, DWORD)
9200: 50 44 45 54 45 43 54 5f 50 52 4f 47 52 45 53 53 PDETECT_PROGRESS
9210: 5f 4e 4f 54 49 46 59 3b 0d 0a 0d 0a 73 74 72 75 _NOTIFY;....stru
9220: 63 74 20 53 50 5f 44 45 54 45 43 54 44 45 56 49 ct SP_DETECTDEVI
9230: 43 45 5f 50 41 52 41 4d 53 20 7b 0d 0a 09 53 50 CE_PARAMS {...SP
9240: 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c 5f 48 45 _CLASSINSTALL_HE
9250: 41 44 45 52 20 20 43 6c 61 73 73 49 6e 73 74 61 ADER ClassInsta
9260: 6c 6c 48 65 61 64 65 72 3b 0d 0a 09 50 44 45 54 llHeader;...PDET
9270: 45 43 54 5f 50 52 4f 47 52 45 53 53 5f 4e 4f 54 ECT_PROGRESS_NOT
9280: 49 46 59 20 44 65 74 65 63 74 50 72 6f 67 72 65 IFY DetectProgre
9290: 73 73 4e 6f 74 69 66 79 3b 0d 0a 09 50 56 4f 49 ssNotify;...PVOI
92a0: 44 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 D
92b0: 20 20 20 20 50 72 6f 67 72 65 73 73 4e 6f 74 69 ProgressNoti
92c0: 66 79 50 61 72 61 6d 3b 0d 0a 7d 0d 0a 61 6c 69 fyParam;..}..ali
92d0: 61 73 20 53 50 5f 44 45 54 45 43 54 44 45 56 49 as SP_DETECTDEVI
92e0: 43 45 5f 50 41 52 41 4d 53 2a 20 50 53 50 5f 44 CE_PARAMS* PSP_D
92f0: 45 54 45 43 54 44 45 56 49 43 45 5f 50 41 52 41 ETECTDEVICE_PARA
9300: 4d 53 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 MS;....struct SP
9310: 5f 49 4e 53 54 41 4c 4c 57 49 5a 41 52 44 5f 44 _INSTALLWIZARD_D
9320: 41 54 41 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 ATA {...SP_CLASS
9330: 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 INSTALL_HEADER C
9340: 6c 61 73 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 lassInstallHeade
9350: 72 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 r;...DWORD
9360: 20 20 20 20 20 20 20 20 20 20 20 20 46 6c 61 67 Flag
9370: 73 3b 0d 0a 09 48 50 52 4f 50 53 48 45 45 54 50 s;...HPROPSHEETP
9380: 41 47 45 5b 4d 41 58 5f 49 4e 53 54 41 4c 4c 57 AGE[MAX_INSTALLW
9390: 49 5a 41 52 44 5f 44 59 4e 41 50 41 47 45 53 5d IZARD_DYNAPAGES]
93a0: 20 44 79 6e 61 6d 69 63 50 61 67 65 73 3b 0d 0a DynamicPages;..
93b0: 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 .DWORD
93c0: 20 20 20 20 20 20 20 20 4e 75 6d 44 79 6e 61 6d NumDynam
93d0: 69 63 50 61 67 65 73 3b 0d 0a 09 44 57 4f 52 44 icPages;...DWORD
93e0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
93f0: 20 20 44 79 6e 61 6d 69 63 50 61 67 65 46 6c 61 DynamicPageFla
9400: 67 73 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 gs;...DWORD
9410: 20 20 20 20 20 20 20 20 20 20 20 20 20 50 72 69 Pri
9420: 76 61 74 65 46 6c 61 67 73 3b 0d 0a 09 4c 50 41 vateFlags;...LPA
9430: 52 41 4d 20 20 20 20 20 20 20 20 20 20 20 20 20 RAM
9440: 20 20 20 20 50 72 69 76 61 74 65 44 61 74 61 3b PrivateData;
9450: 0d 0a 09 48 57 4e 44 20 20 20 20 20 20 20 20 20 ...HWND
9460: 20 20 20 20 20 20 20 20 20 20 68 77 6e 64 57 69 hwndWi
9470: 7a 61 72 64 44 6c 67 3b 0d 0a 7d 0d 0a 61 6c 69 zardDlg;..}..ali
9480: 61 73 20 53 50 5f 49 4e 53 54 41 4c 4c 57 49 5a as SP_INSTALLWIZ
9490: 41 52 44 5f 44 41 54 41 2a 20 50 53 50 5f 49 4e ARD_DATA* PSP_IN
94a0: 53 54 41 4c 4c 57 49 5a 41 52 44 5f 44 41 54 41 STALLWIZARD_DATA
94b0: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 4e ;....struct SP_N
94c0: 45 57 44 45 56 49 43 45 57 49 5a 41 52 44 5f 44 EWDEVICEWIZARD_D
94d0: 41 54 41 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 ATA {...SP_CLASS
94e0: 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 INSTALL_HEADER C
94f0: 6c 61 73 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 lassInstallHeade
9500: 72 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 r;...DWORD
9510: 20 20 20 20 20 20 20 20 20 20 20 20 46 6c 61 67 Flag
9520: 73 3b 0d 0a 09 48 50 52 4f 50 53 48 45 45 54 50 s;...HPROPSHEETP
9530: 41 47 45 5b 4d 41 58 5f 49 4e 53 54 41 4c 4c 57 AGE[MAX_INSTALLW
9540: 49 5a 41 52 44 5f 44 59 4e 41 50 41 47 45 53 5d IZARD_DYNAPAGES]
9550: 20 20 44 79 6e 61 6d 69 63 50 61 67 65 73 3b 0d DynamicPages;.
9560: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
9570: 20 20 20 20 20 20 20 20 20 4e 75 6d 44 79 6e 61 NumDyna
9580: 6d 69 63 50 61 67 65 73 3b 0d 0a 09 48 57 4e 44 micPages;...HWND
9590: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
95a0: 20 20 20 68 77 6e 64 57 69 7a 61 72 64 44 6c 67 hwndWizardDlg
95b0: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 4e ;..}..alias SP_N
95c0: 45 57 44 45 56 49 43 45 57 49 5a 41 52 44 5f 44 EWDEVICEWIZARD_D
95d0: 41 54 41 2a 20 50 53 50 5f 4e 45 57 44 45 56 49 ATA* PSP_NEWDEVI
95e0: 43 45 57 49 5a 41 52 44 5f 44 41 54 41 3b 0d 0a CEWIZARD_DATA;..
95f0: 61 6c 69 61 73 20 53 50 5f 4e 45 57 44 45 56 49 alias SP_NEWDEVI
9600: 43 45 57 49 5a 41 52 44 5f 44 41 54 41 20 53 50 CEWIZARD_DATA SP
9610: 5f 41 44 44 50 52 4f 50 45 52 54 59 50 41 47 45 _ADDPROPERTYPAGE
9620: 5f 44 41 54 41 3b 0d 0a 61 6c 69 61 73 20 53 50 _DATA;..alias SP
9630: 5f 4e 45 57 44 45 56 49 43 45 57 49 5a 41 52 44 _NEWDEVICEWIZARD
9640: 5f 44 41 54 41 2a 20 50 53 50 5f 41 44 44 50 52 _DATA* PSP_ADDPR
9650: 4f 50 45 52 54 59 50 41 47 45 5f 44 41 54 41 3b OPERTYPAGE_DATA;
9660: 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 54 52 ....struct SP_TR
9670: 4f 55 42 4c 45 53 48 4f 4f 54 45 52 5f 50 41 52 OUBLESHOOTER_PAR
9680: 41 4d 53 5f 41 20 7b 0d 0a 09 53 50 5f 43 4c 41 AMS_A {...SP_CLA
9690: 53 53 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 SSINSTALL_HEADER
96a0: 20 43 6c 61 73 73 49 6e 73 74 61 6c 6c 48 65 61 ClassInstallHea
96b0: 64 65 72 3b 0d 0a 09 43 48 41 52 5b 4d 41 58 5f der;...CHAR[MAX_
96c0: 50 41 54 48 5d 20 20 20 20 20 20 20 20 20 43 68 PATH] Ch
96d0: 6d 46 69 6c 65 3b 0d 0a 09 43 48 41 52 5b 4d 41 mFile;...CHAR[MA
96e0: 58 5f 50 41 54 48 5d 20 20 20 20 20 20 20 20 20 X_PATH]
96f0: 48 74 6d 6c 54 72 6f 75 62 6c 65 53 68 6f 6f 74 HtmlTroubleShoot
9700: 65 72 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 er;..}..alias SP
9710: 5f 54 52 4f 55 42 4c 45 53 48 4f 4f 54 45 52 5f _TROUBLESHOOTER_
9720: 50 41 52 41 4d 53 5f 41 2a 20 50 53 50 5f 54 52 PARAMS_A* PSP_TR
9730: 4f 55 42 4c 45 53 48 4f 4f 54 45 52 5f 50 41 52 OUBLESHOOTER_PAR
9740: 41 4d 53 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 AMS_A;....struct
9750: 20 53 50 5f 54 52 4f 55 42 4c 45 53 48 4f 4f 54 SP_TROUBLESHOOT
9760: 45 52 5f 50 41 52 41 4d 53 5f 57 20 7b 0d 0a 09 ER_PARAMS_W {...
9770: 53 50 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c 5f SP_CLASSINSTALL_
9780: 48 45 41 44 45 52 20 43 6c 61 73 73 49 6e 73 74 HEADER ClassInst
9790: 61 6c 6c 48 65 61 64 65 72 3b 0d 0a 09 57 43 48 allHeader;...WCH
97a0: 41 52 5b 4d 41 58 5f 50 41 54 48 5d 20 20 20 20 AR[MAX_PATH]
97b0: 20 20 20 20 43 68 6d 46 69 6c 65 3b 0d 0a 09 57 ChmFile;...W
97c0: 43 48 41 52 5b 4d 41 58 5f 50 41 54 48 5d 20 20 CHAR[MAX_PATH]
97d0: 20 20 20 20 20 20 48 74 6d 6c 54 72 6f 75 62 6c HtmlTroubl
97e0: 65 53 68 6f 6f 74 65 72 3b 0d 0a 7d 0d 0a 61 6c eShooter;..}..al
97f0: 69 61 73 20 53 50 5f 54 52 4f 55 42 4c 45 53 48 ias SP_TROUBLESH
9800: 4f 4f 54 45 52 5f 50 41 52 41 4d 53 5f 57 2a 20 OOTER_PARAMS_W*
9810: 50 53 50 5f 54 52 4f 55 42 4c 45 53 48 4f 4f 54 PSP_TROUBLESHOOT
9820: 45 52 5f 50 41 52 41 4d 53 5f 57 3b 0d 0a 0d 0a ER_PARAMS_W;....
9830: 73 74 72 75 63 74 20 53 50 5f 50 4f 57 45 52 4d struct SP_POWERM
9840: 45 53 53 41 47 45 57 41 4b 45 5f 50 41 52 41 4d ESSAGEWAKE_PARAM
9850: 53 5f 41 20 7b 0d 0a 09 53 50 5f 43 4c 41 53 53 S_A {...SP_CLASS
9860: 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 20 43 INSTALL_HEADER C
9870: 6c 61 73 73 49 6e 73 74 61 6c 6c 48 65 61 64 65 lassInstallHeade
9880: 72 3b 0d 0a 09 43 48 41 52 5b 4c 49 4e 45 5f 4c r;...CHAR[LINE_L
9890: 45 4e 2a 32 5d 20 20 20 20 20 20 20 50 6f 77 65 EN*2] Powe
98a0: 72 4d 65 73 73 61 67 65 57 61 6b 65 3b 0d 0a 7d rMessageWake;..}
98b0: 0d 0a 61 6c 69 61 73 20 53 50 5f 50 4f 57 45 52 ..alias SP_POWER
98c0: 4d 45 53 53 41 47 45 57 41 4b 45 5f 50 41 52 41 MESSAGEWAKE_PARA
98d0: 4d 53 5f 41 2a 20 50 53 50 5f 50 4f 57 45 52 4d MS_A* PSP_POWERM
98e0: 45 53 53 41 47 45 57 41 4b 45 5f 50 41 52 41 4d ESSAGEWAKE_PARAM
98f0: 53 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 S_A;....struct S
9900: 50 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 41 P_POWERMESSAGEWA
9910: 4b 45 5f 50 41 52 41 4d 53 5f 57 20 7b 0d 0a 09 KE_PARAMS_W {...
9920: 53 50 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c 5f SP_CLASSINSTALL_
9930: 48 45 41 44 45 52 20 43 6c 61 73 73 49 6e 73 74 HEADER ClassInst
9940: 61 6c 6c 48 65 61 64 65 72 3b 0d 0a 09 57 43 48 allHeader;...WCH
9950: 41 52 5b 4c 49 4e 45 5f 4c 45 4e 2a 32 5d 20 20 AR[LINE_LEN*2]
9960: 20 20 20 20 50 6f 77 65 72 4d 65 73 73 61 67 65 PowerMessage
9970: 57 61 6b 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 Wake;..}..alias
9980: 53 50 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 SP_POWERMESSAGEW
9990: 41 4b 45 5f 50 41 52 41 4d 53 5f 57 2a 20 50 53 AKE_PARAMS_W* PS
99a0: 50 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 41 P_POWERMESSAGEWA
99b0: 4b 45 5f 50 41 52 41 4d 53 5f 57 3b 0d 0a 0d 0a KE_PARAMS_W;....
99c0: 73 74 72 75 63 74 20 53 50 5f 44 52 56 49 4e 46 struct SP_DRVINF
99d0: 4f 5f 44 41 54 41 5f 56 32 5f 41 20 7b 0d 0a 09 O_DATA_V2_A {...
99e0: 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 63 DWORD c
99f0: 62 53 69 7a 65 20 3d 20 53 50 5f 44 52 56 49 4e bSize = SP_DRVIN
9a00: 46 4f 5f 44 41 54 41 5f 56 32 5f 41 2e 73 69 7a FO_DATA_V2_A.siz
9a10: 65 6f 66 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 eof;...DWORD
9a20: 20 20 20 20 20 20 44 72 69 76 65 72 54 79 70 65 DriverType
9a30: 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 20 20 ;...ULONG_PTR
9a40: 20 20 20 52 65 73 65 72 76 65 64 3b 0d 0a 09 43 Reserved;...C
9a50: 48 41 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 44 65 HAR[LINE_LEN] De
9a60: 73 63 72 69 70 74 69 6f 6e 3b 0d 0a 09 43 48 41 scription;...CHA
9a70: 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 4d 66 67 4e R[LINE_LEN] MfgN
9a80: 61 6d 65 3b 0d 0a 09 43 48 41 52 5b 4c 49 4e 45 ame;...CHAR[LINE
9a90: 5f 4c 45 4e 5d 20 50 72 6f 76 69 64 65 72 4e 61 _LEN] ProviderNa
9aa0: 6d 65 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 20 me;...FILETIME
9ab0: 20 20 20 20 20 44 72 69 76 65 72 44 61 74 65 3b DriverDate;
9ac0: 0d 0a 09 44 57 4f 52 44 4c 4f 4e 47 20 20 20 20 ...DWORDLONG
9ad0: 20 20 44 72 69 76 65 72 56 65 72 73 69 6f 6e 3b DriverVersion;
9ae0: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 44 52 ..}..alias SP_DR
9af0: 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 5f 41 2a VINFO_DATA_V2_A*
9b00: 20 50 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 PSP_DRVINFO_DAT
9b10: 41 5f 56 32 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 A_V2_A;....struc
9b20: 74 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 t SP_DRVINFO_DAT
9b30: 41 5f 56 32 5f 57 20 7b 0d 0a 09 44 57 4f 52 44 A_V2_W {...DWORD
9b40: 20 20 20 20 20 20 20 20 20 20 20 63 62 53 69 7a cbSiz
9b50: 65 20 3d 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 e = SP_DRVINFO_D
9b60: 41 54 41 5f 56 32 5f 41 2e 73 69 7a 65 6f 66 3b ATA_V2_A.sizeof;
9b70: 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 ...DWORD
9b80: 20 20 20 44 72 69 76 65 72 54 79 70 65 3b 0d 0a DriverType;..
9b90: 09 55 4c 4f 4e 47 5f 50 54 52 20 20 20 20 20 20 .ULONG_PTR
9ba0: 20 52 65 73 65 72 76 65 64 3b 0d 0a 09 57 43 48 Reserved;...WCH
9bb0: 41 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 44 65 73 AR[LINE_LEN] Des
9bc0: 63 72 69 70 74 69 6f 6e 3b 0d 0a 09 57 43 48 41 cription;...WCHA
9bd0: 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 4d 66 67 4e R[LINE_LEN] MfgN
9be0: 61 6d 65 3b 0d 0a 09 57 43 48 41 52 5b 4c 49 4e ame;...WCHAR[LIN
9bf0: 45 5f 4c 45 4e 5d 20 50 72 6f 76 69 64 65 72 4e E_LEN] ProviderN
9c00: 61 6d 65 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 ame;...FILETIME
9c10: 20 20 20 20 20 20 20 44 72 69 76 65 72 44 61 74 DriverDat
9c20: 65 3b 0d 0a 09 44 57 4f 52 44 4c 4f 4e 47 20 20 e;...DWORDLONG
9c30: 20 20 20 20 20 44 72 69 76 65 72 56 65 72 73 69 DriverVersi
9c40: 6f 6e 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 on;..}..alias SP
9c50: 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 _DRVINFO_DATA_V2
9c60: 5f 57 2a 20 50 53 50 5f 44 52 56 49 4e 46 4f 5f _W* PSP_DRVINFO_
9c70: 44 41 54 41 5f 56 32 5f 57 3b 0d 0a 0d 0a 73 74 DATA_V2_W;....st
9c80: 72 75 63 74 20 53 50 5f 44 52 56 49 4e 46 4f 5f ruct SP_DRVINFO_
9c90: 44 41 54 41 5f 56 31 5f 41 20 7b 0d 0a 09 44 57 DATA_V1_A {...DW
9ca0: 4f 52 44 20 20 20 20 20 20 20 20 20 20 63 62 53 ORD cbS
9cb0: 69 7a 65 20 3d 20 53 50 5f 44 52 56 49 4e 46 4f ize = SP_DRVINFO
9cc0: 5f 44 41 54 41 5f 56 31 5f 41 2e 73 69 7a 65 6f _DATA_V1_A.sizeo
9cd0: 66 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 f;...DWORD
9ce0: 20 20 20 20 44 72 69 76 65 72 54 79 70 65 3b 0d DriverType;.
9cf0: 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 20 20 20 20 ..ULONG_PTR
9d00: 20 52 65 73 65 72 76 65 64 3b 0d 0a 09 43 48 41 Reserved;...CHA
9d10: 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 44 65 73 63 R[LINE_LEN] Desc
9d20: 72 69 70 74 69 6f 6e 3b 0d 0a 09 43 48 41 52 5b ription;...CHAR[
9d30: 4c 49 4e 45 5f 4c 45 4e 5d 20 4d 66 67 4e 61 6d LINE_LEN] MfgNam
9d40: 65 3b 0d 0a 09 43 48 41 52 5b 4c 49 4e 45 5f 4c e;...CHAR[LINE_L
9d50: 45 4e 5d 20 50 72 6f 76 69 64 65 72 4e 61 6d 65 EN] ProviderName
9d60: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 44 ;..}..alias SP_D
9d70: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 31 5f 41 RVINFO_DATA_V1_A
9d80: 2a 20 50 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 * PSP_DRVINFO_DA
9d90: 54 41 5f 56 31 5f 41 3b 0d 0a 0d 0a 73 74 72 75 TA_V1_A;....stru
9da0: 63 74 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 ct SP_DRVINFO_DA
9db0: 54 41 5f 56 31 5f 57 20 7b 0d 0a 09 44 57 4f 52 TA_V1_W {...DWOR
9dc0: 44 20 20 20 20 20 20 20 20 20 20 20 63 62 53 69 D cbSi
9dd0: 7a 65 20 3d 20 53 50 5f 44 52 56 49 4e 46 4f 5f ze = SP_DRVINFO_
9de0: 44 41 54 41 5f 56 31 5f 57 2e 73 69 7a 65 6f 66 DATA_V1_W.sizeof
9df0: 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 ;...DWORD
9e00: 20 20 20 20 44 72 69 76 65 72 54 79 70 65 3b 0d DriverType;.
9e10: 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 20 20 20 20 ..ULONG_PTR
9e20: 20 20 52 65 73 65 72 76 65 64 3b 0d 0a 09 57 43 Reserved;...WC
9e30: 48 41 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 44 65 HAR[LINE_LEN] De
9e40: 73 63 72 69 70 74 69 6f 6e 3b 0d 0a 09 57 43 48 scription;...WCH
9e50: 41 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 4d 66 67 AR[LINE_LEN] Mfg
9e60: 4e 61 6d 65 3b 0d 0a 09 57 43 48 41 52 5b 4c 49 Name;...WCHAR[LI
9e70: 4e 45 5f 4c 45 4e 5d 20 50 72 6f 76 69 64 65 72 NE_LEN] Provider
9e80: 4e 61 6d 65 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 Name;..}..alias
9e90: 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f SP_DRVINFO_DATA_
9ea0: 56 31 5f 57 2a 20 50 53 50 5f 44 52 56 49 4e 46 V1_W* PSP_DRVINF
9eb0: 4f 5f 44 41 54 41 5f 56 31 5f 57 3b 0d 0a 0d 0a O_DATA_V1_W;....
9ec0: 76 65 72 73 69 6f 6e 20 28 55 6e 69 63 6f 64 65 version (Unicode
9ed0: 29 20 7b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 ) {...alias SP_D
9ee0: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 31 5f 57 RVINFO_DATA_V1_W
9ef0: 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 SP_DRVINFO_DATA
9f00: 5f 56 31 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f _V1;...alias SP_
9f10: 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 5f DRVINFO_DATA_V2_
9f20: 57 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 W SP_DRVINFO_DAT
9f30: 41 5f 56 32 3b 0d 0a 7d 20 65 6c 73 65 20 7b 0d A_V2;..} else {.
9f40: 0a 09 61 6c 69 61 73 20 53 50 5f 44 52 56 49 4e ..alias SP_DRVIN
9f50: 46 4f 5f 44 41 54 41 5f 56 31 5f 41 20 53 50 5f FO_DATA_V1_A SP_
9f60: 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 31 3b DRVINFO_DATA_V1;
9f70: 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 52 56 49 ...alias SP_DRVI
9f80: 4e 46 4f 5f 44 41 54 41 5f 56 32 5f 41 20 53 50 NFO_DATA_V2_A SP
9f90: 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 _DRVINFO_DATA_V2
9fa0: 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 44 ;..}..alias SP_D
9fb0: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 31 2a 20 RVINFO_DATA_V1*
9fc0: 50 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 PSP_DRVINFO_DATA
9fd0: 5f 56 31 3b 0d 0a 61 6c 69 61 73 20 53 50 5f 44 _V1;..alias SP_D
9fe0: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 2a 20 RVINFO_DATA_V2*
9ff0: 50 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 PSP_DRVINFO_DATA
a000: 5f 56 32 3b 0d 0a 0d 0a 73 74 61 74 69 63 20 69 _V2;....static i
a010: 66 28 55 53 45 5f 53 50 5f 44 52 56 49 4e 46 4f f(USE_SP_DRVINFO
a020: 5f 44 41 54 41 5f 56 31 29 20 7b 0d 0a 09 61 6c _DATA_V1) {...al
a030: 69 61 73 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 ias SP_DRVINFO_D
a040: 41 54 41 5f 56 31 5f 41 20 53 50 5f 44 52 56 49 ATA_V1_A SP_DRVI
a050: 4e 46 4f 5f 44 41 54 41 5f 41 3b 0d 0a 09 61 6c NFO_DATA_A;...al
a060: 69 61 73 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 ias SP_DRVINFO_D
a070: 41 54 41 5f 56 31 5f 41 2a 20 50 53 50 5f 44 52 ATA_V1_A* PSP_DR
a080: 56 49 4e 46 4f 5f 44 41 54 41 5f 41 3b 0d 0a 09 VINFO_DATA_A;...
a090: 61 6c 69 61 73 20 53 50 5f 44 52 56 49 4e 46 4f alias SP_DRVINFO
a0a0: 5f 44 41 54 41 5f 56 31 5f 57 20 53 50 5f 44 52 _DATA_V1_W SP_DR
a0b0: 56 49 4e 46 4f 5f 44 41 54 41 5f 57 3b 0d 0a 09 VINFO_DATA_W;...
a0c0: 61 6c 69 61 73 20 53 50 5f 44 52 56 49 4e 46 4f alias SP_DRVINFO
a0d0: 5f 44 41 54 41 5f 56 31 5f 57 2a 20 50 53 50 5f _DATA_V1_W* PSP_
a0e0: 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 57 3b 0d DRVINFO_DATA_W;.
a0f0: 0a 09 61 6c 69 61 73 20 53 50 5f 44 52 56 49 4e ..alias SP_DRVIN
a100: 46 4f 5f 44 41 54 41 5f 56 31 20 53 50 5f 44 52 FO_DATA_V1 SP_DR
a110: 56 49 4e 46 4f 5f 44 41 54 41 3b 0d 0a 09 61 6c VINFO_DATA;...al
a120: 69 61 73 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 ias SP_DRVINFO_D
a130: 41 54 41 5f 56 31 2a 20 50 53 50 5f 44 52 56 49 ATA_V1* PSP_DRVI
a140: 4e 46 4f 5f 44 41 54 41 3b 0d 0a 7d 20 65 6c 73 NFO_DATA;..} els
a150: 65 20 7b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 e {...alias SP_D
a160: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 5f 41 RVINFO_DATA_V2_A
a170: 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 SP_DRVINFO_DATA
a180: 5f 41 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 _A;...alias SP_D
a190: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 5f 41 RVINFO_DATA_V2_A
a1a0: 2a 20 50 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 * PSP_DRVINFO_DA
a1b0: 54 41 5f 41 3b 0d 0a 09 61 6c 69 61 73 20 53 50 TA_A;...alias SP
a1c0: 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 _DRVINFO_DATA_V2
a1d0: 5f 57 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 _W SP_DRVINFO_DA
a1e0: 54 41 5f 57 3b 0d 0a 09 61 6c 69 61 73 20 53 50 TA_W;...alias SP
a1f0: 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 _DRVINFO_DATA_V2
a200: 5f 57 2a 20 50 53 50 5f 44 52 56 49 4e 46 4f 5f _W* PSP_DRVINFO_
a210: 44 41 54 41 5f 57 3b 0d 0a 09 61 6c 69 61 73 20 DATA_W;...alias
a220: 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f SP_DRVINFO_DATA_
a230: 56 32 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 V2 SP_DRVINFO_DA
a240: 54 41 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 TA;...alias SP_D
a250: 52 56 49 4e 46 4f 5f 44 41 54 41 5f 56 32 2a 20 RVINFO_DATA_V2*
a260: 50 53 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 PSP_DRVINFO_DATA
a270: 3b 0d 0a 7d 0d 0a 0d 0a 65 78 74 65 72 6e 28 57 ;..}....extern(W
a280: 69 6e 64 6f 77 73 29 20 61 6c 69 61 73 20 44 57 indows) alias DW
a290: 4f 52 44 20 66 75 6e 63 74 69 6f 6e 28 48 44 45 ORD function(HDE
a2a0: 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e VINFO, PSP_DEVIN
a2b0: 46 4f 5f 44 41 54 41 2c 20 50 53 50 5f 44 45 56 FO_DATA, PSP_DEV
a2c0: 49 4e 46 4f 5f 44 41 54 41 2c 20 50 56 4f 49 44 INFO_DATA, PVOID
a2d0: 29 20 50 53 50 5f 44 45 54 53 49 47 5f 43 4d 50 ) PSP_DETSIG_CMP
a2e0: 50 52 4f 43 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 PROC;....struct
a2f0: 53 50 5f 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 SP_DRVINFO_DETAI
a300: 4c 5f 44 41 54 41 5f 41 20 7b 0d 0a 09 44 57 4f L_DATA_A {...DWO
a310: 52 44 20 20 20 20 20 20 20 20 20 20 63 62 53 69 RD cbSi
a320: 7a 65 20 3d 20 53 50 5f 44 52 56 49 4e 46 4f 5f ze = SP_DRVINFO_
a330: 44 45 54 41 49 4c 5f 44 41 54 41 5f 41 2e 73 69 DETAIL_DATA_A.si
a340: 7a 65 6f 66 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 zeof;...FILETIME
a350: 20 20 20 20 20 20 20 49 6e 66 44 61 74 65 3b 0d InfDate;.
a360: 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 ..DWORD
a370: 20 43 6f 6d 70 61 74 49 44 73 4f 66 66 73 65 74 CompatIDsOffset
a380: 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 ;...DWORD
a390: 20 20 20 43 6f 6d 70 61 74 49 44 73 4c 65 6e 67 CompatIDsLeng
a3a0: 74 68 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 th;...ULONG_PTR
a3b0: 20 20 20 20 20 52 65 73 65 72 76 65 64 3b 0d 0a Reserved;..
a3c0: 09 43 48 41 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 .CHAR[LINE_LEN]
a3d0: 53 65 63 74 69 6f 6e 4e 61 6d 65 3b 0d 0a 09 43 SectionName;...C
a3e0: 48 41 52 5b 4d 41 58 5f 50 41 54 48 5d 20 49 6e HAR[MAX_PATH] In
a3f0: 66 46 69 6c 65 4e 61 6d 65 3b 0d 0a 09 43 48 41 fFileName;...CHA
a400: 52 5b 4c 49 4e 45 5f 4c 45 4e 5d 20 44 72 76 44 R[LINE_LEN] DrvD
a410: 65 73 63 72 69 70 74 69 6f 6e 3b 0d 0a 09 43 48 escription;...CH
a420: 41 52 5b 31 5d 20 20 20 20 20 20 20 20 5f 48 61 AR[1] _Ha
a430: 72 64 77 61 72 65 49 44 3b 0d 0a 09 43 48 41 52 rdwareID;...CHAR
a440: 2a 20 20 20 20 20 20 20 20 20 20 48 61 72 64 77 * Hardw
a450: 61 72 65 49 44 28 29 20 7b 20 72 65 74 75 72 6e areID() { return
a460: 20 5f 48 61 72 64 77 61 72 65 49 44 2e 70 74 72 _HardwareID.ptr
a470: 3b 20 7d 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 ; }..}..alias SP
a480: 5f 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f _DRVINFO_DETAIL_
a490: 44 41 54 41 5f 41 2a 20 50 53 50 5f 44 52 56 49 DATA_A* PSP_DRVI
a4a0: 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f NFO_DETAIL_DATA_
a4b0: 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f A;....struct SP_
a4c0: 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 DRVINFO_DETAIL_D
a4d0: 41 54 41 5f 57 20 7b 0d 0a 09 44 57 4f 52 44 20 ATA_W {...DWORD
a4e0: 20 20 20 20 20 20 20 20 20 20 63 62 53 69 7a 65 cbSize
a4f0: 20 3d 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 45 = SP_DRVINFO_DE
a500: 54 41 49 4c 5f 44 41 54 41 5f 57 2e 73 69 7a 65 TAIL_DATA_W.size
a510: 6f 66 3b 0d 0a 09 46 49 4c 45 54 49 4d 45 20 20 of;...FILETIME
a520: 20 20 20 20 20 20 49 6e 66 44 61 74 65 3b 0d 0a InfDate;..
a530: 09 44 57 4f 52 44 20 20 20 20 20 20 20 20 20 20 .DWORD
a540: 20 43 6f 6d 70 61 74 49 44 73 4f 66 66 73 65 74 CompatIDsOffset
a550: 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 20 ;...DWORD
a560: 20 20 20 20 43 6f 6d 70 61 74 49 44 73 4c 65 6e CompatIDsLen
a570: 67 74 68 3b 0d 0a 09 55 4c 4f 4e 47 5f 50 54 52 gth;...ULONG_PTR
a580: 20 20 20 20 20 20 20 52 65 73 65 72 76 65 64 3b Reserved;
a590: 0d 0a 09 57 43 48 41 52 5b 4c 49 4e 45 5f 4c 45 ...WCHAR[LINE_LE
a5a0: 4e 5d 20 53 65 63 74 69 6f 6e 4e 61 6d 65 3b 0d N] SectionName;.
a5b0: 0a 09 57 43 48 41 52 5b 4d 41 58 5f 50 41 54 48 ..WCHAR[MAX_PATH
a5c0: 5d 20 49 6e 66 46 69 6c 65 4e 61 6d 65 3b 0d 0a ] InfFileName;..
a5d0: 09 57 43 48 41 52 5b 4c 49 4e 45 5f 4c 45 4e 5d .WCHAR[LINE_LEN]
a5e0: 20 44 72 76 44 65 73 63 72 69 70 74 69 6f 6e 3b DrvDescription;
a5f0: 0d 0a 09 57 43 48 41 52 5b 31 5d 20 20 20 20 20 ...WCHAR[1]
a600: 20 20 20 5f 48 61 72 64 77 61 72 65 49 44 3b 0d _HardwareID;.
a610: 0a 09 57 43 48 41 52 2a 20 20 20 20 20 20 20 20 ..WCHAR*
a620: 20 20 48 61 72 64 77 61 72 65 49 44 28 29 20 7b HardwareID() {
a630: 20 72 65 74 75 72 6e 20 5f 48 61 72 64 77 61 72 return _Hardwar
a640: 65 49 44 2e 70 74 72 3b 20 7d 0d 0a 7d 0d 0a 61 eID.ptr; }..}..a
a650: 6c 69 61 73 20 53 50 5f 44 52 56 49 4e 46 4f 5f lias SP_DRVINFO_
a660: 44 45 54 41 49 4c 5f 44 41 54 41 5f 57 2a 20 50 DETAIL_DATA_W* P
a670: 53 50 5f 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 SP_DRVINFO_DETAI
a680: 4c 5f 44 41 54 41 5f 57 3b 0d 0a 0d 0a 73 74 72 L_DATA_W;....str
a690: 75 63 74 20 53 50 5f 44 52 56 49 4e 53 54 41 4c uct SP_DRVINSTAL
a6a0: 4c 5f 50 41 52 41 4d 53 20 7b 0d 0a 09 44 57 4f L_PARAMS {...DWO
a6b0: 52 44 20 63 62 53 69 7a 65 20 3d 20 53 50 5f 44 RD cbSize = SP_D
a6c0: 52 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 RVINSTALL_PARAMS
a6d0: 2e 73 69 7a 65 6f 66 3b 0d 0a 09 44 57 4f 52 44 .sizeof;...DWORD
a6e0: 20 52 61 6e 6b 3b 0d 0a 09 44 57 4f 52 44 20 46 Rank;...DWORD F
a6f0: 6c 61 67 73 3b 0d 0a 09 44 57 4f 52 44 5f 50 54 lags;...DWORD_PT
a700: 52 20 50 72 69 76 61 74 65 44 61 74 61 3b 0d 0a R PrivateData;..
a710: 09 44 57 4f 52 44 20 52 65 73 65 72 76 65 64 3b .DWORD Reserved;
a720: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 44 52 ..}..alias SP_DR
a730: 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 2a VINSTALL_PARAMS*
a740: 20 50 53 50 5f 44 52 56 49 4e 53 54 41 4c 4c 5f PSP_DRVINSTALL_
a750: 50 41 52 41 4d 53 3b 0d 0a 0d 0a 73 74 72 75 63 PARAMS;....struc
a760: 74 20 43 4f 49 4e 53 54 41 4c 4c 45 52 5f 43 4f t COINSTALLER_CO
a770: 4e 54 45 58 54 5f 44 41 54 41 20 7b 0d 0a 09 42 NTEXT_DATA {...B
a780: 4f 4f 4c 20 20 50 6f 73 74 50 72 6f 63 65 73 73 OOL PostProcess
a790: 69 6e 67 3b 0d 0a 09 44 57 4f 52 44 20 49 6e 73 ing;...DWORD Ins
a7a0: 74 61 6c 6c 52 65 73 75 6c 74 3b 0d 0a 09 50 56 tallResult;...PV
a7b0: 4f 49 44 20 50 72 69 76 61 74 65 44 61 74 61 3b OID PrivateData;
a7c0: 0d 0a 7d 0d 0a 61 6c 69 61 73 20 43 4f 49 4e 53 ..}..alias COINS
a7d0: 54 41 4c 4c 45 52 5f 43 4f 4e 54 45 58 54 5f 44 TALLER_CONTEXT_D
a7e0: 41 54 41 2a 20 50 43 4f 49 4e 53 54 41 4c 4c 45 ATA* PCOINSTALLE
a7f0: 52 5f 43 4f 4e 54 45 58 54 5f 44 41 54 41 3b 0d R_CONTEXT_DATA;.
a800: 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 43 4c 41 ...struct SP_CLA
a810: 53 53 49 4d 41 47 45 4c 49 53 54 5f 44 41 54 41 SSIMAGELIST_DATA
a820: 20 7b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 20 {...DWORD
a830: 63 62 53 69 7a 65 20 3d 20 53 50 5f 43 4c 41 53 cbSize = SP_CLAS
a840: 53 49 4d 41 47 45 4c 49 53 54 5f 44 41 54 41 2e SIMAGELIST_DATA.
a850: 73 69 7a 65 6f 66 3b 0d 0a 09 48 49 4d 41 47 45 sizeof;...HIMAGE
a860: 4c 49 53 54 20 49 6d 61 67 65 4c 69 73 74 3b 0d LIST ImageList;.
a870: 0a 09 55 4c 4f 4e 47 5f 50 54 52 20 20 52 65 73 ..ULONG_PTR Res
a880: 65 72 76 65 64 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 erved;..}..alias
a890: 20 53 50 5f 43 4c 41 53 53 49 4d 41 47 45 4c 49 SP_CLASSIMAGELI
a8a0: 53 54 5f 44 41 54 41 2a 20 50 53 50 5f 43 4c 41 ST_DATA* PSP_CLA
a8b0: 53 53 49 4d 41 47 45 4c 49 53 54 5f 44 41 54 41 SSIMAGELIST_DATA
a8c0: 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 5f 50 ;....struct SP_P
a8d0: 52 4f 50 53 48 45 45 54 50 41 47 45 5f 52 45 51 ROPSHEETPAGE_REQ
a8e0: 55 45 53 54 20 7b 0d 0a 09 44 57 4f 52 44 20 20 UEST {...DWORD
a8f0: 20 20 20 20 20 20 20 20 20 20 63 62 53 69 7a 65 cbSize
a900: 20 3d 20 53 50 5f 50 52 4f 50 53 48 45 45 54 50 = SP_PROPSHEETP
a910: 41 47 45 5f 52 45 51 55 45 53 54 2e 73 69 7a 65 AGE_REQUEST.size
a920: 6f 66 3b 0d 0a 09 44 57 4f 52 44 20 20 20 20 20 of;...DWORD
a930: 20 20 20 20 20 20 20 50 61 67 65 52 65 71 75 65 PageReque
a940: 73 74 65 64 3b 0d 0a 09 48 44 45 56 49 4e 46 4f sted;...HDEVINFO
a950: 20 20 20 20 20 20 20 20 20 44 65 76 69 63 65 49 DeviceI
a960: 6e 66 6f 53 65 74 3b 0d 0a 09 50 53 50 5f 44 45 nfoSet;...PSP_DE
a970: 56 49 4e 46 4f 5f 44 41 54 41 20 44 65 76 69 63 VINFO_DATA Devic
a980: 65 49 6e 66 6f 44 61 74 61 3b 0d 0a 7d 0d 0a 61 eInfoData;..}..a
a990: 6c 69 61 73 20 53 50 5f 50 52 4f 50 53 48 45 45 lias SP_PROPSHEE
a9a0: 54 50 41 47 45 5f 52 45 51 55 45 53 54 2a 20 50 TPAGE_REQUEST* P
a9b0: 53 50 5f 50 52 4f 50 53 48 45 45 54 50 41 47 45 SP_PROPSHEETPAGE
a9c0: 5f 52 45 51 55 45 53 54 3b 0d 0a 0d 0a 73 74 72 _REQUEST;....str
a9d0: 75 63 74 20 53 50 5f 42 41 43 4b 55 50 5f 51 55 uct SP_BACKUP_QU
a9e0: 45 55 45 5f 50 41 52 41 4d 53 5f 41 20 7b 0d 0a EUE_PARAMS_A {..
a9f0: 09 44 57 4f 52 44 20 63 62 53 69 7a 65 20 3d 20 .DWORD cbSize =
aa00: 53 50 5f 42 41 43 4b 55 50 5f 51 55 45 55 45 5f SP_BACKUP_QUEUE_
aa10: 50 41 52 41 4d 53 5f 41 2e 73 69 7a 65 6f 66 3b PARAMS_A.sizeof;
aa20: 0d 0a 09 43 48 41 52 5b 4d 41 58 5f 50 41 54 48 ...CHAR[MAX_PATH
aa30: 5d 20 46 75 6c 6c 49 6e 66 50 61 74 68 3b 0d 0a ] FullInfPath;..
aa40: 09 49 4e 54 20 46 69 6c 65 6e 61 6d 65 4f 66 66 .INT FilenameOff
aa50: 73 65 74 3b 0d 0a 7d 0d 0a 61 6c 69 61 73 20 53 set;..}..alias S
aa60: 50 5f 42 41 43 4b 55 50 5f 51 55 45 55 45 5f 50 P_BACKUP_QUEUE_P
aa70: 41 52 41 4d 53 5f 41 2a 20 50 53 50 5f 42 41 43 ARAMS_A* PSP_BAC
aa80: 4b 55 50 5f 51 55 45 55 45 5f 50 41 52 41 4d 53 KUP_QUEUE_PARAMS
aa90: 5f 41 3b 0d 0a 0d 0a 73 74 72 75 63 74 20 53 50 _A;....struct SP
aaa0: 5f 42 41 43 4b 55 50 5f 51 55 45 55 45 5f 50 41 _BACKUP_QUEUE_PA
aab0: 52 41 4d 53 5f 57 20 7b 0d 0a 09 44 57 4f 52 44 RAMS_W {...DWORD
aac0: 20 63 62 53 69 7a 65 20 3d 20 53 50 5f 42 41 43 cbSize = SP_BAC
aad0: 4b 55 50 5f 51 55 45 55 45 5f 50 41 52 41 4d 53 KUP_QUEUE_PARAMS
aae0: 5f 57 2e 73 69 7a 65 6f 66 3b 0d 0a 09 57 43 48 _W.sizeof;...WCH
aaf0: 41 52 5b 4d 41 58 5f 50 41 54 48 5d 20 46 75 6c AR[MAX_PATH] Ful
ab00: 6c 49 6e 66 50 61 74 68 3b 0d 0a 09 49 4e 54 20 lInfPath;...INT
ab10: 46 69 6c 65 6e 61 6d 65 4f 66 66 73 65 74 3b 0d FilenameOffset;.
ab20: 0a 7d 0d 0a 61 6c 69 61 73 20 53 50 5f 42 41 43 .}..alias SP_BAC
ab30: 4b 55 50 5f 51 55 45 55 45 5f 50 41 52 41 4d 53 KUP_QUEUE_PARAMS
ab40: 5f 57 2a 20 50 53 50 5f 42 41 43 4b 55 50 5f 51 _W* PSP_BACKUP_Q
ab50: 55 45 55 45 5f 50 41 52 41 4d 53 5f 57 3b 0d 0a UEUE_PARAMS_W;..
ab60: 0d 0a 76 65 72 73 69 6f 6e 20 28 55 6e 69 63 6f ..version (Unico
ab70: 64 65 29 20 7b 0d 0a 09 61 6c 69 61 73 20 53 50 de) {...alias SP
ab80: 5f 4f 52 49 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 _ORIGINAL_FILE_I
ab90: 4e 46 4f 5f 57 20 53 50 5f 4f 52 49 47 49 4e 41 NFO_W SP_ORIGINA
aba0: 4c 5f 46 49 4c 45 5f 49 4e 46 4f 3b 0d 0a 09 61 L_FILE_INFO;...a
abb0: 6c 69 61 73 20 53 50 5f 4f 52 49 47 49 4e 41 4c lias SP_ORIGINAL
abc0: 5f 46 49 4c 45 5f 49 4e 46 4f 5f 57 2a 20 50 53 _FILE_INFO_W* PS
abd0: 50 5f 4f 52 49 47 49 4e 41 4c 5f 46 49 4c 45 5f P_ORIGINAL_FILE_
abe0: 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 46 49 INFO;...alias FI
abf0: 4c 45 50 41 54 48 53 5f 57 20 46 49 4c 45 50 41 LEPATHS_W FILEPA
ac00: 54 48 53 3b 0d 0a 09 61 6c 69 61 73 20 46 49 4c THS;...alias FIL
ac10: 45 50 41 54 48 53 5f 57 2a 20 50 46 49 4c 45 50 EPATHS_W* PFILEP
ac20: 41 54 48 53 3b 0d 0a 09 61 6c 69 61 73 20 53 4f ATHS;...alias SO
ac30: 55 52 43 45 5f 4d 45 44 49 41 5f 57 20 53 4f 55 URCE_MEDIA_W SOU
ac40: 52 43 45 5f 4d 45 44 49 41 3b 0d 0a 09 61 6c 69 RCE_MEDIA;...ali
ac50: 61 73 20 53 4f 55 52 43 45 5f 4d 45 44 49 41 5f as SOURCE_MEDIA_
ac60: 57 2a 20 50 53 4f 55 52 43 45 5f 4d 45 44 49 41 W* PSOURCE_MEDIA
ac70: 3b 0d 0a 09 61 6c 69 61 73 20 43 41 42 49 4e 45 ;...alias CABINE
ac80: 54 5f 49 4e 46 4f 5f 57 20 43 41 42 49 4e 45 54 T_INFO_W CABINET
ac90: 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 43 _INFO;...alias C
aca0: 41 42 49 4e 45 54 5f 49 4e 46 4f 5f 57 2a 20 50 ABINET_INFO_W* P
acb0: 43 41 42 49 4e 45 54 5f 49 4e 46 4f 3b 0d 0a 09 CABINET_INFO;...
acc0: 61 6c 69 61 73 20 46 49 4c 45 5f 49 4e 5f 43 41 alias FILE_IN_CA
acd0: 42 49 4e 45 54 5f 49 4e 46 4f 5f 57 20 46 49 4c BINET_INFO_W FIL
ace0: 45 5f 49 4e 5f 43 41 42 49 4e 45 54 5f 49 4e 46 E_IN_CABINET_INF
acf0: 4f 3b 0d 0a 09 61 6c 69 61 73 20 46 49 4c 45 5f O;...alias FILE_
ad00: 49 4e 5f 43 41 42 49 4e 45 54 5f 49 4e 46 4f 5f IN_CABINET_INFO_
ad10: 57 2a 20 50 46 49 4c 45 5f 49 4e 5f 43 41 42 49 W* PFILE_IN_CABI
ad20: 4e 45 54 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 NET_INFO;...alia
ad30: 73 20 53 50 5f 46 49 4c 45 5f 43 4f 50 59 5f 50 s SP_FILE_COPY_P
ad40: 41 52 41 4d 53 5f 57 20 53 50 5f 46 49 4c 45 5f ARAMS_W SP_FILE_
ad50: 43 4f 50 59 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 COPY_PARAMS;...a
ad60: 6c 69 61 73 20 53 50 5f 46 49 4c 45 5f 43 4f 50 lias SP_FILE_COP
ad70: 59 5f 50 41 52 41 4d 53 5f 57 2a 20 50 53 50 5f Y_PARAMS_W* PSP_
ad80: 46 49 4c 45 5f 43 4f 50 59 5f 50 41 52 41 4d 53 FILE_COPY_PARAMS
ad90: 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 45 56 ;...alias SP_DEV
ada0: 49 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 ICE_INTERFACE_DE
adb0: 54 41 49 4c 5f 44 41 54 41 5f 57 20 53 50 5f 44 TAIL_DATA_W SP_D
adc0: 45 56 49 43 45 5f 49 4e 54 45 52 46 41 43 45 5f EVICE_INTERFACE_
add0: 44 45 54 41 49 4c 5f 44 41 54 41 3b 0d 0a 09 61 DETAIL_DATA;...a
ade0: 6c 69 61 73 20 53 50 5f 44 45 56 49 43 45 5f 49 lias SP_DEVICE_I
adf0: 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 4c 5f NTERFACE_DETAIL_
ae00: 44 41 54 41 5f 57 2a 20 50 53 50 5f 44 45 56 49 DATA_W* PSP_DEVI
ae10: 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 CE_INTERFACE_DET
ae20: 41 49 4c 5f 44 41 54 41 3b 0d 0a 09 64 65 70 72 AIL_DATA;...depr
ae30: 65 63 61 74 65 64 20 7b 0d 0a 09 09 61 6c 69 61 ecated {....alia
ae40: 73 20 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 s SP_DEVICE_INTE
ae50: 52 46 41 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 RFACE_DETAIL_DAT
ae60: 41 5f 57 20 53 50 5f 49 4e 54 45 52 46 41 43 45 A_W SP_INTERFACE
ae70: 5f 44 45 56 49 43 45 5f 44 45 54 41 49 4c 5f 44 _DEVICE_DETAIL_D
ae80: 41 54 41 3b 0d 0a 09 09 61 6c 69 61 73 20 53 50 ATA;....alias SP
ae90: 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 43 _DEVICE_INTERFAC
aea0: 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 57 2a E_DETAIL_DATA_W*
aeb0: 20 50 53 50 5f 49 4e 54 45 52 46 41 43 45 5f 44 PSP_INTERFACE_D
aec0: 45 56 49 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 EVICE_DETAIL_DAT
aed0: 41 3b 0d 0a 09 7d 0d 0a 09 61 6c 69 61 73 20 53 A;...}...alias S
aee0: 50 5f 44 45 56 49 4e 46 4f 5f 4c 49 53 54 5f 44 P_DEVINFO_LIST_D
aef0: 45 54 41 49 4c 5f 44 41 54 41 5f 57 20 53 50 5f ETAIL_DATA_W SP_
af00: 44 45 56 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 DEVINFO_LIST_DET
af10: 41 49 4c 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61 AIL_DATA;...alia
af20: 73 20 53 50 5f 44 45 56 49 4e 46 4f 5f 4c 49 53 s SP_DEVINFO_LIS
af30: 54 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 57 20 T_DETAIL_DATA_W
af40: 2a 50 53 50 5f 44 45 56 49 4e 46 4f 5f 4c 49 53 *PSP_DEVINFO_LIS
af50: 54 5f 44 45 54 41 49 4c 5f 44 41 54 41 3b 0d 0a T_DETAIL_DATA;..
af60: 09 61 6c 69 61 73 20 53 50 5f 44 45 56 49 4e 53 .alias SP_DEVINS
af70: 54 41 4c 4c 5f 50 41 52 41 4d 53 5f 57 20 53 50 TALL_PARAMS_W SP
af80: 5f 44 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 _DEVINSTALL_PARA
af90: 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 MS;...alias SP_D
afa0: 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 EVINSTALL_PARAMS
afb0: 5f 57 2a 20 50 53 50 5f 44 45 56 49 4e 53 54 41 _W* PSP_DEVINSTA
afc0: 4c 4c 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 LL_PARAMS;...ali
afd0: 61 73 20 53 50 5f 53 45 4c 45 43 54 44 45 56 49 as SP_SELECTDEVI
afe0: 43 45 5f 50 41 52 41 4d 53 5f 57 20 53 50 5f 53 CE_PARAMS_W SP_S
aff0: 45 4c 45 43 54 44 45 56 49 43 45 5f 50 41 52 41 ELECTDEVICE_PARA
b000: 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 53 MS;...alias SP_S
b010: 45 4c 45 43 54 44 45 56 49 43 45 5f 50 41 52 41 ELECTDEVICE_PARA
b020: 4d 53 5f 57 2a 20 50 53 50 5f 53 45 4c 45 43 54 MS_W* PSP_SELECT
b030: 44 45 56 49 43 45 5f 50 41 52 41 4d 53 3b 0d 0a DEVICE_PARAMS;..
b040: 09 61 6c 69 61 73 20 53 50 5f 54 52 4f 55 42 4c .alias SP_TROUBL
b050: 45 53 48 4f 4f 54 45 52 5f 50 41 52 41 4d 53 5f ESHOOTER_PARAMS_
b060: 57 20 53 50 5f 54 52 4f 55 42 4c 45 53 48 4f 4f W SP_TROUBLESHOO
b070: 54 45 52 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c TER_PARAMS;...al
b080: 69 61 73 20 53 50 5f 54 52 4f 55 42 4c 45 53 48 ias SP_TROUBLESH
b090: 4f 4f 54 45 52 5f 50 41 52 41 4d 53 5f 57 2a 20 OOTER_PARAMS_W*
b0a0: 50 53 50 5f 54 52 4f 55 42 4c 45 53 48 4f 4f 54 PSP_TROUBLESHOOT
b0b0: 45 52 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 ER_PARAMS;...ali
b0c0: 61 73 20 53 50 5f 50 4f 57 45 52 4d 45 53 53 41 as SP_POWERMESSA
b0d0: 47 45 57 41 4b 45 5f 50 41 52 41 4d 53 5f 57 20 GEWAKE_PARAMS_W
b0e0: 53 50 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 SP_POWERMESSAGEW
b0f0: 41 4b 45 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c AKE_PARAMS;...al
b100: 69 61 73 20 53 50 5f 50 4f 57 45 52 4d 45 53 53 ias SP_POWERMESS
b110: 41 47 45 57 41 4b 45 5f 50 41 52 41 4d 53 5f 57 AGEWAKE_PARAMS_W
b120: 2a 20 50 53 50 5f 50 4f 57 45 52 4d 45 53 53 41 * PSP_POWERMESSA
b130: 47 45 57 41 4b 45 5f 50 41 52 41 4d 53 3b 0d 0a GEWAKE_PARAMS;..
b140: 09 61 6c 69 61 73 20 53 50 5f 44 52 56 49 4e 46 .alias SP_DRVINF
b150: 4f 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 57 20 O_DETAIL_DATA_W
b160: 53 50 5f 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 SP_DRVINFO_DETAI
b170: 4c 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61 73 20 L_DATA;...alias
b180: 53 50 5f 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 SP_DRVINFO_DETAI
b190: 4c 5f 44 41 54 41 5f 57 2a 20 50 53 50 5f 44 52 L_DATA_W* PSP_DR
b1a0: 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 41 54 VINFO_DETAIL_DAT
b1b0: 41 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 42 41 A;...alias SP_BA
b1c0: 43 4b 55 50 5f 51 55 45 55 45 5f 50 41 52 41 4d CKUP_QUEUE_PARAM
b1d0: 53 5f 57 20 53 50 5f 42 41 43 4b 55 50 5f 51 55 S_W SP_BACKUP_QU
b1e0: 45 55 45 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c EUE_PARAMS;...al
b1f0: 69 61 73 20 53 50 5f 42 41 43 4b 55 50 5f 51 55 ias SP_BACKUP_QU
b200: 45 55 45 5f 50 41 52 41 4d 53 5f 57 2a 20 50 53 EUE_PARAMS_W* PS
b210: 50 5f 42 41 43 4b 55 50 5f 51 55 45 55 45 5f 50 P_BACKUP_QUEUE_P
b220: 41 52 41 4d 53 3b 0d 0a 7d 20 65 6c 73 65 20 7b ARAMS;..} else {
b230: 0d 0a 09 61 6c 69 61 73 20 53 50 5f 4f 52 49 47 ...alias SP_ORIG
b240: 49 4e 41 4c 5f 46 49 4c 45 5f 49 4e 46 4f 5f 41 INAL_FILE_INFO_A
b250: 20 53 50 5f 4f 52 49 47 49 4e 41 4c 5f 46 49 4c SP_ORIGINAL_FIL
b260: 45 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 E_INFO;...alias
b270: 53 50 5f 4f 52 49 47 49 4e 41 4c 5f 46 49 4c 45 SP_ORIGINAL_FILE
b280: 5f 49 4e 46 4f 5f 41 2a 20 50 53 50 5f 4f 52 49 _INFO_A* PSP_ORI
b290: 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 4e 46 4f 3b GINAL_FILE_INFO;
b2a0: 0d 0a 09 61 6c 69 61 73 20 46 49 4c 45 50 41 54 ...alias FILEPAT
b2b0: 48 53 5f 41 20 46 49 4c 45 50 41 54 48 53 3b 0d HS_A FILEPATHS;.
b2c0: 0a 09 61 6c 69 61 73 20 46 49 4c 45 50 41 54 48 ..alias FILEPATH
b2d0: 53 5f 41 2a 20 50 46 49 4c 45 50 41 54 48 53 3b S_A* PFILEPATHS;
b2e0: 0d 0a 09 61 6c 69 61 73 20 53 4f 55 52 43 45 5f ...alias SOURCE_
b2f0: 4d 45 44 49 41 5f 41 20 53 4f 55 52 43 45 5f 4d MEDIA_A SOURCE_M
b300: 45 44 49 41 3b 0d 0a 09 61 6c 69 61 73 20 53 4f EDIA;...alias SO
b310: 55 52 43 45 5f 4d 45 44 49 41 5f 41 2a 20 50 53 URCE_MEDIA_A* PS
b320: 4f 55 52 43 45 5f 4d 45 44 49 41 3b 0d 0a 09 61 OURCE_MEDIA;...a
b330: 6c 69 61 73 20 43 41 42 49 4e 45 54 5f 49 4e 46 lias CABINET_INF
b340: 4f 5f 41 20 43 41 42 49 4e 45 54 5f 49 4e 46 4f O_A CABINET_INFO
b350: 3b 0d 0a 09 61 6c 69 61 73 20 43 41 42 49 4e 45 ;...alias CABINE
b360: 54 5f 49 4e 46 4f 5f 41 2a 20 50 43 41 42 49 4e T_INFO_A* PCABIN
b370: 45 54 5f 49 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 ET_INFO;...alias
b380: 20 46 49 4c 45 5f 49 4e 5f 43 41 42 49 4e 45 54 FILE_IN_CABINET
b390: 5f 49 4e 46 4f 5f 41 20 46 49 4c 45 5f 49 4e 5f _INFO_A FILE_IN_
b3a0: 43 41 42 49 4e 45 54 5f 49 4e 46 4f 3b 0d 0a 09 CABINET_INFO;...
b3b0: 61 6c 69 61 73 20 46 49 4c 45 5f 49 4e 5f 43 41 alias FILE_IN_CA
b3c0: 42 49 4e 45 54 5f 49 4e 46 4f 5f 41 2a 20 50 46 BINET_INFO_A* PF
b3d0: 49 4c 45 5f 49 4e 5f 43 41 42 49 4e 45 54 5f 49 ILE_IN_CABINET_I
b3e0: 4e 46 4f 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f NFO;...alias SP_
b3f0: 46 49 4c 45 5f 43 4f 50 59 5f 50 41 52 41 4d 53 FILE_COPY_PARAMS
b400: 5f 41 20 53 50 5f 46 49 4c 45 5f 43 4f 50 59 5f _A SP_FILE_COPY_
b410: 50 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 PARAMS;...alias
b420: 53 50 5f 46 49 4c 45 5f 43 4f 50 59 5f 50 41 52 SP_FILE_COPY_PAR
b430: 41 4d 53 5f 41 2a 20 50 53 50 5f 46 49 4c 45 5f AMS_A* PSP_FILE_
b440: 43 4f 50 59 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 COPY_PARAMS;...a
b450: 6c 69 61 73 20 53 50 5f 44 45 56 49 43 45 5f 49 lias SP_DEVICE_I
b460: 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 4c 5f NTERFACE_DETAIL_
b470: 44 41 54 41 5f 41 20 53 50 5f 44 45 56 49 43 45 DATA_A SP_DEVICE
b480: 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 41 49 _INTERFACE_DETAI
b490: 4c 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61 73 20 L_DATA;...alias
b4a0: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
b4b0: 41 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f ACE_DETAIL_DATA_
b4c0: 41 2a 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e A* PSP_DEVICE_IN
b4d0: 54 45 52 46 41 43 45 5f 44 45 54 41 49 4c 5f 44 TERFACE_DETAIL_D
b4e0: 41 54 41 3b 0d 0a 09 64 65 70 72 65 63 61 74 65 ATA;...deprecate
b4f0: 64 20 7b 0d 0a 09 09 61 6c 69 61 73 20 53 50 5f d {....alias SP_
b500: 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 43 45 DEVICE_INTERFACE
b510: 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 41 20 53 _DETAIL_DATA_A S
b520: 50 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 56 49 P_INTERFACE_DEVI
b530: 43 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 3b 0d CE_DETAIL_DATA;.
b540: 0a 09 09 61 6c 69 61 73 20 53 50 5f 44 45 56 49 ...alias SP_DEVI
b550: 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 45 54 CE_INTERFACE_DET
b560: 41 49 4c 5f 44 41 54 41 5f 41 2a 20 50 53 50 5f AIL_DATA_A* PSP_
b570: 49 4e 54 45 52 46 41 43 45 5f 44 45 56 49 43 45 INTERFACE_DEVICE
b580: 5f 44 45 54 41 49 4c 5f 44 41 54 41 3b 0d 0a 09 _DETAIL_DATA;...
b590: 7d 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 45 56 }...alias SP_DEV
b5a0: 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 41 49 4c INFO_LIST_DETAIL
b5b0: 5f 44 41 54 41 5f 41 20 53 50 5f 44 45 56 49 4e _DATA_A SP_DEVIN
b5c0: 46 4f 5f 4c 49 53 54 5f 44 45 54 41 49 4c 5f 44 FO_LIST_DETAIL_D
b5d0: 41 54 41 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f ATA;...alias SP_
b5e0: 44 45 56 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 DEVINFO_LIST_DET
b5f0: 41 49 4c 5f 44 41 54 41 5f 41 2a 20 50 53 50 5f AIL_DATA_A* PSP_
b600: 44 45 56 49 4e 46 4f 5f 4c 49 53 54 5f 44 45 54 DEVINFO_LIST_DET
b610: 41 49 4c 5f 44 41 54 41 3b 0d 0a 09 61 6c 69 61 AIL_DATA;...alia
b620: 73 20 53 50 5f 44 45 56 49 4e 53 54 41 4c 4c 5f s SP_DEVINSTALL_
b630: 50 41 52 41 4d 53 5f 41 20 53 50 5f 44 45 56 49 PARAMS_A SP_DEVI
b640: 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 3b 0d 0a NSTALL_PARAMS;..
b650: 09 61 6c 69 61 73 20 53 50 5f 44 45 56 49 4e 53 .alias SP_DEVINS
b660: 54 41 4c 4c 5f 50 41 52 41 4d 53 5f 41 2a 20 50 TALL_PARAMS_A* P
b670: 53 50 5f 44 45 56 49 4e 53 54 41 4c 4c 5f 50 41 SP_DEVINSTALL_PA
b680: 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 50 RAMS;...alias SP
b690: 5f 53 45 4c 45 43 54 44 45 56 49 43 45 5f 50 41 _SELECTDEVICE_PA
b6a0: 52 41 4d 53 5f 41 20 53 50 5f 53 45 4c 45 43 54 RAMS_A SP_SELECT
b6b0: 44 45 56 49 43 45 5f 50 41 52 41 4d 53 3b 0d 0a DEVICE_PARAMS;..
b6c0: 09 61 6c 69 61 73 20 53 50 5f 53 45 4c 45 43 54 .alias SP_SELECT
b6d0: 44 45 56 49 43 45 5f 50 41 52 41 4d 53 5f 41 2a DEVICE_PARAMS_A*
b6e0: 20 50 53 50 5f 53 45 4c 45 43 54 44 45 56 49 43 PSP_SELECTDEVIC
b6f0: 45 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 E_PARAMS;...alia
b700: 73 20 53 50 5f 54 52 4f 55 42 4c 45 53 48 4f 4f s SP_TROUBLESHOO
b710: 54 45 52 5f 50 41 52 41 4d 53 5f 41 20 53 50 5f TER_PARAMS_A SP_
b720: 54 52 4f 55 42 4c 45 53 48 4f 4f 54 45 52 5f 50 TROUBLESHOOTER_P
b730: 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 ARAMS;...alias S
b740: 50 5f 54 52 4f 55 42 4c 45 53 48 4f 4f 54 45 52 P_TROUBLESHOOTER
b750: 5f 50 41 52 41 4d 53 5f 41 2a 20 50 53 50 5f 54 _PARAMS_A* PSP_T
b760: 52 4f 55 42 4c 45 53 48 4f 4f 54 45 52 5f 50 41 ROUBLESHOOTER_PA
b770: 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 50 RAMS;...alias SP
b780: 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 41 4b _POWERMESSAGEWAK
b790: 45 5f 50 41 52 41 4d 53 5f 41 20 53 50 5f 50 4f E_PARAMS_A SP_PO
b7a0: 57 45 52 4d 45 53 53 41 47 45 57 41 4b 45 5f 50 WERMESSAGEWAKE_P
b7b0: 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 ARAMS;...alias S
b7c0: 50 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 41 P_POWERMESSAGEWA
b7d0: 4b 45 5f 50 41 52 41 4d 53 5f 41 2a 20 50 53 50 KE_PARAMS_A* PSP
b7e0: 5f 50 4f 57 45 52 4d 45 53 53 41 47 45 57 41 4b _POWERMESSAGEWAK
b7f0: 45 5f 50 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 E_PARAMS;...alia
b800: 73 20 53 50 5f 44 52 56 49 4e 46 4f 5f 44 45 54 s SP_DRVINFO_DET
b810: 41 49 4c 5f 44 41 54 41 5f 41 20 53 50 5f 44 52 AIL_DATA_A SP_DR
b820: 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 41 54 VINFO_DETAIL_DAT
b830: 41 3b 0d 0a 09 61 6c 69 61 73 20 53 50 5f 44 52 A;...alias SP_DR
b840: 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 41 54 VINFO_DETAIL_DAT
b850: 41 5f 41 2a 20 50 53 50 5f 44 52 56 49 4e 46 4f A_A* PSP_DRVINFO
b860: 5f 44 45 54 41 49 4c 5f 44 41 54 41 3b 0d 0a 09 _DETAIL_DATA;...
b870: 61 6c 69 61 73 20 53 50 5f 42 41 43 4b 55 50 5f alias SP_BACKUP_
b880: 51 55 45 55 45 5f 50 41 52 41 4d 53 5f 41 20 53 QUEUE_PARAMS_A S
b890: 50 5f 42 41 43 4b 55 50 5f 51 55 45 55 45 5f 50 P_BACKUP_QUEUE_P
b8a0: 41 52 41 4d 53 3b 0d 0a 09 61 6c 69 61 73 20 53 ARAMS;...alias S
b8b0: 50 5f 42 41 43 4b 55 50 5f 51 55 45 55 45 5f 50 P_BACKUP_QUEUE_P
b8c0: 41 52 41 4d 53 5f 41 2a 20 50 53 50 5f 42 41 43 ARAMS_A* PSP_BAC
b8d0: 4b 55 50 5f 51 55 45 55 45 5f 50 41 52 41 4d 53 KUP_QUEUE_PARAMS
b8e0: 3b 0d 0a 7d 0d 0a 0d 0a 65 78 74 65 72 6e 20 28 ;..}....extern (
b8f0: 57 69 6e 64 6f 77 73 29 20 7b 0d 0a 09 42 4f 4f Windows) {...BOO
b900: 4c 20 53 65 74 75 70 41 64 64 49 6e 73 74 61 6c L SetupAddInstal
b910: 6c 53 65 63 74 69 6f 6e 54 6f 44 69 73 6b 53 70 lSectionToDiskSp
b920: 61 63 65 4c 69 73 74 41 28 48 44 53 4b 53 50 43 aceListA(HDSKSPC
b930: 2c 20 48 49 4e 46 2c 20 48 49 4e 46 2c 20 50 43 , HINF, HINF, PC
b940: 53 54 52 2c 20 50 56 4f 49 44 2c 20 55 49 4e 54 STR, PVOID, UINT
b950: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 41 );...BOOL SetupA
b960: 64 64 49 6e 73 74 61 6c 6c 53 65 63 74 69 6f 6e ddInstallSection
b970: 54 6f 44 69 73 6b 53 70 61 63 65 4c 69 73 74 57 ToDiskSpaceListW
b980: 28 48 44 53 4b 53 50 43 2c 20 48 49 4e 46 2c 20 (HDSKSPC, HINF,
b990: 48 49 4e 46 2c 20 50 43 57 53 54 52 2c 20 50 56 HINF, PCWSTR, PV
b9a0: 4f 49 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f OID, UINT);...BO
b9b0: 4f 4c 20 53 65 74 75 70 41 64 64 53 65 63 74 69 OL SetupAddSecti
b9c0: 6f 6e 54 6f 44 69 73 6b 53 70 61 63 65 4c 69 73 onToDiskSpaceLis
b9d0: 74 41 28 48 44 53 4b 53 50 43 2c 20 48 49 4e 46 tA(HDSKSPC, HINF
b9e0: 2c 20 48 49 4e 46 2c 20 50 43 53 54 52 2c 20 55 , HINF, PCSTR, U
b9f0: 49 4e 54 2c 20 50 56 4f 49 44 2c 20 55 49 4e 54 INT, PVOID, UINT
ba00: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 41 );...BOOL SetupA
ba10: 64 64 53 65 63 74 69 6f 6e 54 6f 44 69 73 6b 53 ddSectionToDiskS
ba20: 70 61 63 65 4c 69 73 74 57 28 48 44 53 4b 53 50 paceListW(HDSKSP
ba30: 43 2c 20 48 49 4e 46 2c 20 48 49 4e 46 2c 20 50 C, HINF, HINF, P
ba40: 43 57 53 54 52 2c 20 55 49 4e 54 2c 20 50 56 4f CWSTR, UINT, PVO
ba50: 49 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f ID, UINT);...BOO
ba60: 4c 20 53 65 74 75 70 41 64 64 54 6f 44 69 73 6b L SetupAddToDisk
ba70: 53 70 61 63 65 4c 69 73 74 41 28 48 44 53 4b 53 SpaceListA(HDSKS
ba80: 50 43 2c 20 50 43 53 54 52 2c 20 4c 4f 4e 47 4c PC, PCSTR, LONGL
ba90: 4f 4e 47 2c 20 55 49 4e 54 2c 20 50 56 4f 49 44 ONG, UINT, PVOID
baa0: 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 , UINT);...BOOL
bab0: 53 65 74 75 70 41 64 64 54 6f 44 69 73 6b 53 70 SetupAddToDiskSp
bac0: 61 63 65 4c 69 73 74 57 28 48 44 53 4b 53 50 43 aceListW(HDSKSPC
bad0: 2c 20 50 43 57 53 54 52 2c 20 4c 4f 4e 47 4c 4f , PCWSTR, LONGLO
bae0: 4e 47 2c 20 55 49 4e 54 2c 20 50 56 4f 49 44 2c NG, UINT, PVOID,
baf0: 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 UINT);...BOOL S
bb00: 65 74 75 70 41 64 64 54 6f 53 6f 75 72 63 65 4c etupAddToSourceL
bb10: 69 73 74 41 28 44 57 4f 52 44 2c 20 50 43 53 54 istA(DWORD, PCST
bb20: 52 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 R);...BOOL Setup
bb30: 41 64 64 54 6f 53 6f 75 72 63 65 4c 69 73 74 57 AddToSourceListW
bb40: 28 44 57 4f 52 44 2c 20 50 43 57 53 54 52 29 3b (DWORD, PCWSTR);
bb50: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 ...BOOL SetupQue
bb60: 72 79 53 6f 75 72 63 65 4c 69 73 74 41 28 44 57 rySourceListA(DW
bb70: 4f 52 44 2c 20 50 43 53 54 52 2a 2a 4c 69 73 74 ORD, PCSTR**List
bb80: 2c 20 50 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c , PUINT);...BOOL
bb90: 20 53 65 74 75 70 51 75 65 72 79 53 6f 75 72 63 SetupQuerySourc
bba0: 65 4c 69 73 74 57 28 44 57 4f 52 44 2c 20 50 43 eListW(DWORD, PC
bbb0: 57 53 54 52 2a 2a 4c 69 73 74 2c 20 50 55 49 4e WSTR**List, PUIN
bbc0: 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 T);...BOOL Setup
bbd0: 46 72 65 65 53 6f 75 72 63 65 4c 69 73 74 41 28 FreeSourceListA(
bbe0: 50 43 53 54 52 2a 2a 4c 69 73 74 2c 20 55 49 4e PCSTR**List, UIN
bbf0: 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 T);...BOOL Setup
bc00: 46 72 65 65 53 6f 75 72 63 65 4c 69 73 74 57 28 FreeSourceListW(
bc10: 50 43 57 53 54 52 2a 2a 4c 69 73 74 2c 20 55 49 PCWSTR**List, UI
bc20: 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 NT);...BOOL Setu
bc30: 70 41 64 6a 75 73 74 44 69 73 6b 53 70 61 63 65 pAdjustDiskSpace
bc40: 4c 69 73 74 41 28 48 44 53 4b 53 50 43 2c 20 4c ListA(HDSKSPC, L
bc50: 50 43 53 54 52 2c 20 4c 4f 4e 47 4c 4f 4e 47 2c PCSTR, LONGLONG,
bc60: 20 50 56 4f 49 44 2c 20 55 49 4e 54 29 3b 0d 0a PVOID, UINT);..
bc70: 09 42 4f 4f 4c 20 53 65 74 75 70 41 64 6a 75 73 .BOOL SetupAdjus
bc80: 74 44 69 73 6b 53 70 61 63 65 4c 69 73 74 57 28 tDiskSpaceListW(
bc90: 48 44 53 4b 53 50 43 2c 20 4c 50 43 57 53 54 52 HDSKSPC, LPCWSTR
bca0: 2c 20 4c 4f 4e 47 4c 4f 4e 47 2c 20 50 56 4f 49 , LONGLONG, PVOI
bcb0: 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 55 49 4e 54 D, UINT);...UINT
bcc0: 20 53 65 74 75 70 42 61 63 6b 75 70 45 72 72 6f SetupBackupErro
bcd0: 72 41 28 48 57 4e 44 2c 20 50 43 53 54 52 2c 20 rA(HWND, PCSTR,
bce0: 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 55 49 PCSTR, PCSTR, UI
bcf0: 4e 54 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 55 49 NT, DWORD);...UI
bd00: 4e 54 20 53 65 74 75 70 42 61 63 6b 75 70 45 72 NT SetupBackupEr
bd10: 72 6f 72 57 28 48 57 4e 44 2c 20 50 43 57 53 54 rorW(HWND, PCWST
bd20: 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 R, PCWSTR, PCWST
bd30: 52 2c 20 55 49 4e 54 2c 20 44 57 4f 52 44 29 3b R, UINT, DWORD);
bd40: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 43 61 6e ...BOOL SetupCan
bd50: 63 65 6c 54 65 6d 70 6f 72 61 72 79 28 29 3b 0d celTemporary();.
bd60: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 43 6c 6f 73 ..BOOL SetupClos
bd70: 65 46 69 6c 65 51 75 65 75 65 28 48 53 50 46 49 eFileQueue(HSPFI
bd80: 4c 45 51 29 3b 0d 0a 09 56 4f 49 44 20 53 65 74 LEQ);...VOID Set
bd90: 75 70 43 6c 6f 73 65 49 6e 66 46 69 6c 65 28 48 upCloseInfFile(H
bda0: 49 4e 46 29 3b 0d 0a 09 56 4f 49 44 20 53 65 74 INF);...VOID Set
bdb0: 75 70 43 6c 6f 73 65 4c 6f 67 28 29 3b 0d 0a 09 upCloseLog();...
bdc0: 42 4f 4f 4c 20 53 65 74 75 70 43 6f 6d 6d 69 74 BOOL SetupCommit
bdd0: 46 69 6c 65 51 75 65 75 65 41 28 48 57 4e 44 2c FileQueueA(HWND,
bde0: 20 48 53 50 46 49 4c 45 51 2c 20 50 53 50 5f 46 HSPFILEQ, PSP_F
bdf0: 49 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f 41 2c 20 ILE_CALLBACK_A,
be00: 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 PVOID);...BOOL S
be10: 65 74 75 70 43 6f 6d 6d 69 74 46 69 6c 65 51 75 etupCommitFileQu
be20: 65 75 65 57 28 48 57 4e 44 2c 20 48 53 50 46 49 eueW(HWND, HSPFI
be30: 4c 45 51 2c 20 50 53 50 5f 46 49 4c 45 5f 43 41 LEQ, PSP_FILE_CA
be40: 4c 4c 42 41 43 4b 5f 57 2c 20 50 56 4f 49 44 29 LLBACK_W, PVOID)
be50: 3b 0d 0a 09 55 49 4e 54 20 53 65 74 75 70 43 6f ;...UINT SetupCo
be60: 70 79 45 72 72 6f 72 41 28 48 57 4e 44 2c 20 50 pyErrorA(HWND, P
be70: 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 43 53 CSTR, PCSTR, PCS
be80: 54 52 2c 20 50 43 53 54 52 2c 20 50 43 53 54 52 TR, PCSTR, PCSTR
be90: 2c 20 55 49 4e 54 2c 20 44 57 4f 52 44 2c 20 50 , UINT, DWORD, P
bea0: 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f STR, DWORD, PDWO
beb0: 52 44 29 3b 0d 0a 09 55 49 4e 54 20 53 65 74 75 RD);...UINT Setu
bec0: 70 43 6f 70 79 45 72 72 6f 72 57 28 48 57 4e 44 pCopyErrorW(HWND
bed0: 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 , PCWSTR, PCWSTR
bee0: 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 , PCWSTR, PCWSTR
bef0: 2c 20 50 43 57 53 54 52 2c 20 55 49 4e 54 2c 20 , PCWSTR, UINT,
bf00: 44 57 4f 52 44 2c 20 50 57 53 54 52 2c 20 44 57 DWORD, PWSTR, DW
bf10: 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 ORD, PDWORD);...
bf20: 42 4f 4f 4c 20 53 65 74 75 70 43 6f 70 79 4f 45 BOOL SetupCopyOE
bf30: 4d 49 6e 66 41 28 50 43 53 54 52 2c 20 50 43 53 MInfA(PCSTR, PCS
bf40: 54 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 TR, DWORD, DWORD
bf50: 2c 20 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 , PSTR, DWORD, P
bf60: 44 57 4f 52 44 2c 20 50 53 54 52 2a 29 3b 0d 0a DWORD, PSTR*);..
bf70: 09 42 4f 4f 4c 20 53 65 74 75 70 43 6f 70 79 4f .BOOL SetupCopyO
bf80: 45 4d 49 6e 66 57 28 50 43 57 53 54 52 2c 20 50 EMInfW(PCWSTR, P
bf90: 43 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 44 57 CWSTR, DWORD, DW
bfa0: 4f 52 44 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 ORD, PWSTR, DWOR
bfb0: 44 2c 20 50 44 57 4f 52 44 2c 20 50 57 53 54 52 D, PDWORD, PWSTR
bfc0: 2a 29 3b 0d 0a 09 48 44 53 4b 53 50 43 20 53 65 *);...HDSKSPC Se
bfd0: 74 75 70 43 72 65 61 74 65 44 69 73 6b 53 70 61 tupCreateDiskSpa
bfe0: 63 65 4c 69 73 74 41 28 50 56 4f 49 44 2c 20 44 ceListA(PVOID, D
bff0: 57 4f 52 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 48 WORD, UINT);...H
c000: 44 53 4b 53 50 43 20 53 65 74 75 70 43 72 65 61 DSKSPC SetupCrea
c010: 74 65 44 69 73 6b 53 70 61 63 65 4c 69 73 74 57 teDiskSpaceListW
c020: 28 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 55 (PVOID, DWORD, U
c030: 49 4e 54 29 3b 0d 0a 09 44 57 4f 52 44 20 53 65 INT);...DWORD Se
c040: 74 75 70 44 65 63 6f 6d 70 72 65 73 73 4f 72 43 tupDecompressOrC
c050: 6f 70 79 46 69 6c 65 41 28 50 43 53 54 52 2c 20 opyFileA(PCSTR,
c060: 50 43 53 54 52 2c 20 50 55 49 4e 54 29 3b 0d 0a PCSTR, PUINT);..
c070: 09 44 57 4f 52 44 20 53 65 74 75 70 44 65 63 6f .DWORD SetupDeco
c080: 6d 70 72 65 73 73 4f 72 43 6f 70 79 46 69 6c 65 mpressOrCopyFile
c090: 57 28 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 W(PCWSTR, PCWSTR
c0a0: 2c 20 50 55 49 4e 54 29 3b 0d 0a 09 55 49 4e 54 , PUINT);...UINT
c0b0: 20 53 65 74 75 70 44 65 66 61 75 6c 74 51 75 65 SetupDefaultQue
c0c0: 75 65 43 61 6c 6c 62 61 63 6b 41 28 50 56 4f 49 ueCallbackA(PVOI
c0d0: 44 2c 20 55 49 4e 54 2c 20 55 49 4e 54 5f 50 54 D, UINT, UINT_PT
c0e0: 52 2c 20 55 49 4e 54 5f 50 54 52 29 3b 0d 0a 09 R, UINT_PTR);...
c0f0: 55 49 4e 54 20 53 65 74 75 70 44 65 66 61 75 6c UINT SetupDefaul
c100: 74 51 75 65 75 65 43 61 6c 6c 62 61 63 6b 57 28 tQueueCallbackW(
c110: 50 56 4f 49 44 2c 20 55 49 4e 54 2c 20 55 49 4e PVOID, UINT, UIN
c120: 54 5f 50 54 52 2c 20 55 49 4e 54 5f 50 54 52 29 T_PTR, UINT_PTR)
c130: 3b 0d 0a 09 55 49 4e 54 20 53 65 74 75 70 44 65 ;...UINT SetupDe
c140: 6c 65 74 65 45 72 72 6f 72 41 28 48 57 4e 44 2c leteErrorA(HWND,
c150: 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 55 PCSTR, PCSTR, U
c160: 49 4e 54 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 55 INT, DWORD);...U
c170: 49 4e 54 20 53 65 74 75 70 44 65 6c 65 74 65 45 INT SetupDeleteE
c180: 72 72 6f 72 57 28 48 57 4e 44 2c 20 50 43 57 53 rrorW(HWND, PCWS
c190: 54 52 2c 20 50 43 57 53 54 52 2c 20 55 49 4e 54 TR, PCWSTR, UINT
c1a0: 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c , DWORD);...BOOL
c1b0: 20 53 65 74 75 70 44 65 73 74 72 6f 79 44 69 73 SetupDestroyDis
c1c0: 6b 53 70 61 63 65 4c 69 73 74 28 48 44 53 4b 53 kSpaceList(HDSKS
c1d0: 50 43 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 PC);...BOOL Setu
c1e0: 70 44 69 41 73 6b 46 6f 72 4f 45 4d 44 69 73 6b pDiAskForOEMDisk
c1f0: 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 (HDEVINFO, PSP_D
c200: 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a 09 EVINFO_DATA);...
c210: 42 4f 4f 4c 20 53 65 74 75 70 44 69 42 75 69 6c BOOL SetupDiBuil
c220: 64 43 6c 61 73 73 49 6e 66 6f 4c 69 73 74 28 44 dClassInfoList(D
c230: 57 4f 52 44 2c 20 4c 50 47 55 49 44 2c 20 44 57 WORD, LPGUID, DW
c240: 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 ORD, PDWORD);...
c250: 42 4f 4f 4c 20 53 65 74 75 70 44 69 42 75 69 6c BOOL SetupDiBuil
c260: 64 43 6c 61 73 73 49 6e 66 6f 4c 69 73 74 45 78 dClassInfoListEx
c270: 41 28 44 57 4f 52 44 2c 20 4c 50 47 55 49 44 2c A(DWORD, LPGUID,
c280: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 DWORD, PDWORD,
c290: 50 43 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a PCSTR, PVOID);..
c2a0: 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 42 75 69 .BOOL SetupDiBui
c2b0: 6c 64 43 6c 61 73 73 49 6e 66 6f 4c 69 73 74 45 ldClassInfoListE
c2c0: 78 57 28 44 57 4f 52 44 2c 20 4c 50 47 55 49 44 xW(DWORD, LPGUID
c2d0: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c , DWORD, PDWORD,
c2e0: 20 50 43 57 53 54 52 2c 20 50 56 4f 49 44 29 3b PCWSTR, PVOID);
c2f0: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 42 ...BOOL SetupDiB
c300: 75 69 6c 64 44 72 69 76 65 72 49 6e 66 6f 4c 69 uildDriverInfoLi
c310: 73 74 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 st(HDEVINFO, PSP
c320: 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 44 _DEVINFO_DATA, D
c330: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
c340: 74 75 70 44 69 43 61 6c 6c 43 6c 61 73 73 49 6e tupDiCallClassIn
c350: 73 74 61 6c 6c 65 72 28 44 49 5f 46 55 4e 43 54 staller(DI_FUNCT
c360: 49 4f 4e 2c 20 48 44 45 56 49 4e 46 4f 2c 20 50 ION, HDEVINFO, P
c370: 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 SP_DEVINFO_DATA)
c380: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 ;...BOOL SetupDi
c390: 43 61 6e 63 65 6c 44 72 69 76 65 72 49 6e 66 6f CancelDriverInfo
c3a0: 53 65 61 72 63 68 28 48 44 45 56 49 4e 46 4f 29 Search(HDEVINFO)
c3b0: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 ;...BOOL SetupDi
c3c0: 43 68 61 6e 67 65 53 74 61 74 65 28 48 44 45 56 ChangeState(HDEV
c3d0: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
c3e0: 4f 5f 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 O_DATA);...BOOL
c3f0: 53 65 74 75 70 44 69 43 6c 61 73 73 47 75 69 64 SetupDiClassGuid
c400: 73 46 72 6f 6d 4e 61 6d 65 41 28 50 43 53 54 52 sFromNameA(PCSTR
c410: 2c 20 4c 50 47 55 49 44 2c 20 44 57 4f 52 44 2c , LPGUID, DWORD,
c420: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c PDWORD);...BOOL
c430: 20 53 65 74 75 70 44 69 43 6c 61 73 73 47 75 69 SetupDiClassGui
c440: 64 73 46 72 6f 6d 4e 61 6d 65 57 28 50 43 57 53 dsFromNameW(PCWS
c450: 54 52 2c 20 4c 50 47 55 49 44 2c 20 44 57 4f 52 TR, LPGUID, DWOR
c460: 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f D, PDWORD);...BO
c470: 4f 4c 20 53 65 74 75 70 44 69 43 6c 61 73 73 47 OL SetupDiClassG
c480: 75 69 64 73 46 72 6f 6d 4e 61 6d 65 45 78 41 28 uidsFromNameExA(
c490: 50 43 53 54 52 2c 20 4c 50 47 55 49 44 2c 20 44 PCSTR, LPGUID, D
c4a0: 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 43 WORD, PDWORD, PC
c4b0: 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 STR, PVOID);...B
c4c0: 4f 4f 4c 20 53 65 74 75 70 44 69 43 6c 61 73 73 OOL SetupDiClass
c4d0: 47 75 69 64 73 46 72 6f 6d 4e 61 6d 65 45 78 57 GuidsFromNameExW
c4e0: 28 50 43 57 53 54 52 2c 20 4c 50 47 55 49 44 2c (PCWSTR, LPGUID,
c4f0: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 DWORD, PDWORD,
c500: 50 43 57 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d PCWSTR, PVOID);.
c510: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 43 6c ..BOOL SetupDiCl
c520: 61 73 73 4e 61 6d 65 46 72 6f 6d 47 75 69 64 41 assNameFromGuidA
c530: 28 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 50 (const(GUID)*, P
c540: 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f STR, DWORD, PDWO
c550: 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 RD);...BOOL Setu
c560: 70 44 69 43 6c 61 73 73 4e 61 6d 65 46 72 6f 6d pDiClassNameFrom
c570: 47 75 69 64 57 28 63 6f 6e 73 74 28 47 55 49 44 GuidW(const(GUID
c580: 29 2a 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 44 )*, PWSTR, DWORD
c590: 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f , PDWORD);...BOO
c5a0: 4c 20 53 65 74 75 70 44 69 43 6c 61 73 73 4e 61 L SetupDiClassNa
c5b0: 6d 65 46 72 6f 6d 47 75 69 64 45 78 41 28 63 6f meFromGuidExA(co
c5c0: 6e 73 74 28 47 55 49 44 29 2a 2c 20 50 53 54 52 nst(GUID)*, PSTR
c5d0: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c , DWORD, PDWORD,
c5e0: 20 50 43 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d PCSTR, PVOID);.
c5f0: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 43 6c ..BOOL SetupDiCl
c600: 61 73 73 4e 61 6d 65 46 72 6f 6d 47 75 69 64 45 assNameFromGuidE
c610: 78 57 28 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c xW(const(GUID)*,
c620: 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PWSTR, DWORD, P
c630: 44 57 4f 52 44 2c 20 50 43 57 53 54 52 2c 20 50 DWORD, PCWSTR, P
c640: 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 VOID);...BOOL Se
c650: 74 75 70 44 69 43 72 65 61 74 65 44 65 76 69 63 tupDiCreateDevic
c660: 65 49 6e 66 6f 41 28 48 44 45 56 49 4e 46 4f 2c eInfoA(HDEVINFO,
c670: 20 50 43 53 54 52 2c 20 63 6f 6e 73 74 28 47 55 PCSTR, const(GU
c680: 49 44 29 2a 2c 20 50 43 53 54 52 2c 20 48 57 4e ID)*, PCSTR, HWN
c690: 44 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 45 D, DWORD, PSP_DE
c6a0: 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a 09 42 VINFO_DATA);...B
c6b0: 4f 4f 4c 20 53 65 74 75 70 44 69 43 72 65 61 74 OOL SetupDiCreat
c6c0: 65 44 65 76 69 63 65 49 6e 66 6f 57 28 48 44 45 eDeviceInfoW(HDE
c6d0: 56 49 4e 46 4f 2c 20 50 43 57 53 54 52 2c 20 63 VINFO, PCWSTR, c
c6e0: 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 50 43 57 onst(GUID)*, PCW
c6f0: 53 54 52 2c 20 48 57 4e 44 2c 20 44 57 4f 52 44 STR, HWND, DWORD
c700: 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 , PSP_DEVINFO_DA
c710: 54 41 29 3b 0d 0a 09 48 44 45 56 49 4e 46 4f 20 TA);...HDEVINFO
c720: 53 65 74 75 70 44 69 43 72 65 61 74 65 44 65 76 SetupDiCreateDev
c730: 69 63 65 49 6e 66 6f 4c 69 73 74 28 63 6f 6e 73 iceInfoList(cons
c740: 74 28 47 55 49 44 29 2a 2c 20 48 57 4e 44 29 3b t(GUID)*, HWND);
c750: 0d 0a 09 48 44 45 56 49 4e 46 4f 20 53 65 74 75 ...HDEVINFO Setu
c760: 70 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 pDiCreateDeviceI
c770: 6e 66 6f 4c 69 73 74 45 78 41 28 63 6f 6e 73 74 nfoListExA(const
c780: 28 47 55 49 44 29 2a 2c 20 48 57 4e 44 2c 20 50 (GUID)*, HWND, P
c790: 43 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 CSTR, PVOID);...
c7a0: 48 44 45 56 49 4e 46 4f 20 53 65 74 75 70 44 69 HDEVINFO SetupDi
c7b0: 43 72 65 61 74 65 44 65 76 69 63 65 49 6e 66 6f CreateDeviceInfo
c7c0: 4c 69 73 74 45 78 57 28 63 6f 6e 73 74 28 47 55 ListExW(const(GU
c7d0: 49 44 29 2a 2c 20 48 57 4e 44 2c 20 50 43 57 53 ID)*, HWND, PCWS
c7e0: 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f TR, PVOID);...BO
c7f0: 4f 4c 20 53 65 74 75 70 44 69 43 72 65 61 74 65 OL SetupDiCreate
c800: 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 41 DeviceInterfaceA
c810: 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 (HDEVINFO, PSP_D
c820: 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 63 6f 6e EVINFO_DATA, con
c830: 73 74 28 47 55 49 44 29 2a 2c 20 50 43 53 54 52 st(GUID)*, PCSTR
c840: 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 45 56 , DWORD, PSP_DEV
c850: 49 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 41 ICE_INTERFACE_DA
c860: 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 TA);...BOOL Setu
c870: 70 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 pDiCreateDeviceI
c880: 6e 74 65 72 66 61 63 65 57 28 48 44 45 56 49 4e nterfaceW(HDEVIN
c890: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
c8a0: 44 41 54 41 2c 20 63 6f 6e 73 74 28 47 55 49 44 DATA, const(GUID
c8b0: 29 2a 2c 20 50 43 57 53 54 52 2c 20 44 57 4f 52 )*, PCWSTR, DWOR
c8c0: 44 2c 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e D, PSP_DEVICE_IN
c8d0: 54 45 52 46 41 43 45 5f 44 41 54 41 29 3b 0d 0a TERFACE_DATA);..
c8e0: 09 48 4b 45 59 20 53 65 74 75 70 44 69 43 72 65 .HKEY SetupDiCre
c8f0: 61 74 65 44 65 76 69 63 65 49 6e 74 65 72 66 61 ateDeviceInterfa
c900: 63 65 52 65 67 4b 65 79 41 28 48 44 45 56 49 4e ceRegKeyA(HDEVIN
c910: 46 4f 2c 20 50 53 50 5f 44 45 56 49 43 45 5f 49 FO, PSP_DEVICE_I
c920: 4e 54 45 52 46 41 43 45 5f 44 41 54 41 2c 20 44 NTERFACE_DATA, D
c930: 57 4f 52 44 2c 20 52 45 47 53 41 4d 2c 20 48 49 WORD, REGSAM, HI
c940: 4e 46 2c 20 50 43 53 54 52 29 3b 0d 0a 09 48 4b NF, PCSTR);...HK
c950: 45 59 20 53 65 74 75 70 44 69 43 72 65 61 74 65 EY SetupDiCreate
c960: 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 52 DeviceInterfaceR
c970: 65 67 4b 65 79 57 28 48 44 45 56 49 4e 46 4f 2c egKeyW(HDEVINFO,
c980: 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 PSP_DEVICE_INTE
c990: 52 46 41 43 45 5f 44 41 54 41 2c 20 44 57 4f 52 RFACE_DATA, DWOR
c9a0: 44 2c 20 52 45 47 53 41 4d 2c 20 48 49 4e 46 2c D, REGSAM, HINF,
c9b0: 20 50 43 57 53 54 52 29 3b 0d 0a 09 48 4b 45 59 PCWSTR);...HKEY
c9c0: 20 53 65 74 75 70 44 69 43 72 65 61 74 65 44 65 SetupDiCreateDe
c9d0: 76 52 65 67 4b 65 79 41 28 48 44 45 56 49 4e 46 vRegKeyA(HDEVINF
c9e0: 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 O, PSP_DEVINFO_D
c9f0: 41 54 41 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 ATA, DWORD, DWOR
ca00: 44 2c 20 44 57 4f 52 44 2c 20 48 49 4e 46 2c 20 D, DWORD, HINF,
ca10: 50 43 53 54 52 29 3b 0d 0a 09 48 4b 45 59 20 53 PCSTR);...HKEY S
ca20: 65 74 75 70 44 69 43 72 65 61 74 65 44 65 76 52 etupDiCreateDevR
ca30: 65 67 4b 65 79 57 28 48 44 45 56 49 4e 46 4f 2c egKeyW(HDEVINFO,
ca40: 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 PSP_DEVINFO_DAT
ca50: 41 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c A, DWORD, DWORD,
ca60: 20 44 57 4f 52 44 2c 20 48 49 4e 46 2c 20 50 43 DWORD, HINF, PC
ca70: 57 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WSTR);...BOOL Se
ca80: 74 75 70 44 69 44 65 6c 65 74 65 44 65 76 69 63 tupDiDeleteDevic
ca90: 65 49 6e 66 6f 28 48 44 45 56 49 4e 46 4f 2c 20 eInfo(HDEVINFO,
caa0: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 PSP_DEVINFO_DATA
cab0: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
cac0: 69 44 65 6c 65 74 65 44 65 76 69 63 65 49 6e 74 iDeleteDeviceInt
cad0: 65 72 66 61 63 65 44 61 74 61 28 48 44 45 56 49 erfaceData(HDEVI
cae0: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 43 45 5f NFO, PSP_DEVICE_
caf0: 49 4e 54 45 52 46 41 43 45 5f 44 41 54 41 29 3b INTERFACE_DATA);
cb00: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 44 ...BOOL SetupDiD
cb10: 65 6c 65 74 65 44 65 76 69 63 65 49 6e 74 65 72 eleteDeviceInter
cb20: 66 61 63 65 52 65 67 4b 65 79 28 48 44 45 56 49 faceRegKey(HDEVI
cb30: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 43 45 5f NFO, PSP_DEVICE_
cb40: 49 4e 54 45 52 46 41 43 45 5f 44 41 54 41 2c 20 INTERFACE_DATA,
cb50: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 DWORD);...BOOL S
cb60: 65 74 75 70 44 69 44 65 6c 65 74 65 44 65 76 52 etupDiDeleteDevR
cb70: 65 67 4b 65 79 28 48 44 45 56 49 4e 46 4f 2c 20 egKey(HDEVINFO,
cb80: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 PSP_DEVINFO_DATA
cb90: 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 , DWORD, DWORD,
cba0: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 DWORD);...BOOL S
cbb0: 65 74 75 70 44 69 44 65 73 74 72 6f 79 43 6c 61 etupDiDestroyCla
cbc0: 73 73 49 6d 61 67 65 4c 69 73 74 28 50 53 50 5f ssImageList(PSP_
cbd0: 43 4c 41 53 53 49 4d 41 47 45 4c 49 53 54 5f 44 CLASSIMAGELIST_D
cbe0: 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ATA);...BOOL Set
cbf0: 75 70 44 69 44 65 73 74 72 6f 79 44 65 76 69 63 upDiDestroyDevic
cc00: 65 49 6e 66 6f 4c 69 73 74 28 48 44 45 56 49 4e eInfoList(HDEVIN
cc10: 46 4f 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 FO);...BOOL Setu
cc20: 70 44 69 44 65 73 74 72 6f 79 44 72 69 76 65 72 pDiDestroyDriver
cc30: 49 6e 66 6f 4c 69 73 74 28 48 44 45 56 49 4e 46 InfoList(HDEVINF
cc40: 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 O, PSP_DEVINFO_D
cc50: 41 54 41 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 49 ATA, DWORD);...I
cc60: 4e 54 20 53 65 74 75 70 44 69 44 72 61 77 4d 69 NT SetupDiDrawMi
cc70: 6e 69 49 63 6f 6e 28 48 44 43 2c 20 52 45 43 54 niIcon(HDC, RECT
cc80: 2c 20 49 4e 54 2c 20 44 57 4f 52 44 29 3b 0d 0a , INT, DWORD);..
cc90: 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 45 6e 75 .BOOL SetupDiEnu
cca0: 6d 44 65 76 69 63 65 49 6e 66 6f 28 48 44 45 56 mDeviceInfo(HDEV
ccb0: 49 4e 46 4f 2c 20 44 57 4f 52 44 2c 20 50 53 50 INFO, DWORD, PSP
ccc0: 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d _DEVINFO_DATA);.
ccd0: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 45 6e ..BOOL SetupDiEn
cce0: 75 6d 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 umDeviceInterfac
ccf0: 65 73 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 es(HDEVINFO, PSP
cd00: 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 63 _DEVINFO_DATA, c
cd10: 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 44 57 4f onst(GUID)*, DWO
cd20: 52 44 2c 20 50 53 50 5f 44 45 56 49 43 45 5f 49 RD, PSP_DEVICE_I
cd30: 4e 54 45 52 46 41 43 45 5f 44 41 54 41 29 3b 0d NTERFACE_DATA);.
cd40: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 45 6e ..BOOL SetupDiEn
cd50: 75 6d 44 72 69 76 65 72 49 6e 66 6f 41 28 48 44 umDriverInfoA(HD
cd60: 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 EVINFO, PSP_DEVI
cd70: 4e 46 4f 5f 44 41 54 41 2c 20 44 57 4f 52 44 2c NFO_DATA, DWORD,
cd80: 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 52 56 49 DWORD, PSP_DRVI
cd90: 4e 46 4f 5f 44 41 54 41 5f 41 29 3b 0d 0a 09 42 NFO_DATA_A);...B
cda0: 4f 4f 4c 20 53 65 74 75 70 44 69 45 6e 75 6d 44 OOL SetupDiEnumD
cdb0: 72 69 76 65 72 49 6e 66 6f 57 28 48 44 45 56 49 riverInfoW(HDEVI
cdc0: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f NFO, PSP_DEVINFO
cdd0: 5f 44 41 54 41 2c 20 44 57 4f 52 44 2c 20 44 57 _DATA, DWORD, DW
cde0: 4f 52 44 2c 20 50 53 50 5f 44 52 56 49 4e 46 4f ORD, PSP_DRVINFO
cdf0: 5f 44 41 54 41 5f 57 29 3b 0d 0a 09 42 4f 4f 4c _DATA_W);...BOOL
ce00: 20 53 65 74 75 70 44 69 47 65 74 41 63 74 75 61 SetupDiGetActua
ce10: 6c 53 65 63 74 69 6f 6e 54 6f 49 6e 73 74 61 6c lSectionToInstal
ce20: 6c 41 28 48 49 4e 46 2c 20 50 43 53 54 52 2c 20 lA(HINF, PCSTR,
ce30: 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 PSTR, DWORD, PDW
ce40: 4f 52 44 2c 20 50 53 54 52 2a 29 3b 0d 0a 09 42 ORD, PSTR*);...B
ce50: 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 74 41 63 OOL SetupDiGetAc
ce60: 74 75 61 6c 53 65 63 74 69 6f 6e 54 6f 49 6e 73 tualSectionToIns
ce70: 74 61 6c 6c 57 28 48 49 4e 46 2c 20 50 43 57 53 tallW(HINF, PCWS
ce80: 54 52 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 44 TR, PWSTR, DWORD
ce90: 2c 20 50 44 57 4f 52 44 2c 20 50 57 53 54 52 2a , PDWORD, PWSTR*
cea0: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
ceb0: 69 47 65 74 43 6c 61 73 73 42 69 74 6d 61 70 49 iGetClassBitmapI
cec0: 6e 64 65 78 28 63 6f 6e 73 74 28 47 55 49 44 29 ndex(const(GUID)
ced0: 2a 2c 20 50 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c *, PINT);...BOOL
cee0: 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 SetupDiGetClass
cef0: 44 65 73 63 72 69 70 74 69 6f 6e 41 28 63 6f 6e DescriptionA(con
cf00: 73 74 28 47 55 49 44 29 2a 2c 20 50 53 54 52 2c st(GUID)*, PSTR,
cf10: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b DWORD, PDWORD);
cf20: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 ...BOOL SetupDiG
cf30: 65 74 43 6c 61 73 73 44 65 73 63 72 69 70 74 69 etClassDescripti
cf40: 6f 6e 57 28 63 6f 6e 73 74 28 47 55 49 44 29 2a onW(const(GUID)*
cf50: 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 , PWSTR, DWORD,
cf60: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
cf70: 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 SetupDiGetClassD
cf80: 65 73 63 72 69 70 74 69 6f 6e 45 78 41 28 63 6f escriptionExA(co
cf90: 6e 73 74 28 47 55 49 44 29 2a 2c 20 50 53 54 52 nst(GUID)*, PSTR
cfa0: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c , DWORD, PDWORD,
cfb0: 20 50 43 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d PCSTR, PVOID);.
cfc0: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 ..BOOL SetupDiGe
cfd0: 74 43 6c 61 73 73 44 65 73 63 72 69 70 74 69 6f tClassDescriptio
cfe0: 6e 45 78 57 28 63 6f 6e 73 74 28 47 55 49 44 29 nExW(const(GUID)
cff0: 2a 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c *, PWSTR, DWORD,
d000: 20 50 44 57 4f 52 44 2c 20 50 43 57 53 54 52 2c PDWORD, PCWSTR,
d010: 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PVOID);...BOOL
d020: 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 SetupDiGetClassD
d030: 65 76 50 72 6f 70 65 72 74 79 53 68 65 65 74 73 evPropertySheets
d040: 41 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f A(HDEVINFO, PSP_
d050: 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 4c 50 DEVINFO_DATA, LP
d060: 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 41 PROPSHEETHEADERA
d070: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c , DWORD, PDWORD,
d080: 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
d090: 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 SetupDiGetClassD
d0a0: 65 76 50 72 6f 70 65 72 74 79 53 68 65 65 74 73 evPropertySheets
d0b0: 57 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f W(HDEVINFO, PSP_
d0c0: 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 4c 50 DEVINFO_DATA, LP
d0d0: 50 52 4f 50 53 48 45 45 54 48 45 41 44 45 52 57 PROPSHEETHEADERW
d0e0: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c , DWORD, PDWORD,
d0f0: 20 44 57 4f 52 44 29 3b 0d 0a 09 48 44 45 56 49 DWORD);...HDEVI
d100: 4e 46 4f 20 53 65 74 75 70 44 69 47 65 74 43 6c NFO SetupDiGetCl
d110: 61 73 73 44 65 76 73 41 28 63 6f 6e 73 74 28 47 assDevsA(const(G
d120: 55 49 44 29 2a 2c 20 50 43 53 54 52 2c 20 48 57 UID)*, PCSTR, HW
d130: 4e 44 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 48 44 ND, DWORD);...HD
d140: 45 56 49 4e 46 4f 20 53 65 74 75 70 44 69 47 65 EVINFO SetupDiGe
d150: 74 43 6c 61 73 73 44 65 76 73 57 28 63 6f 6e 73 tClassDevsW(cons
d160: 74 28 47 55 49 44 29 2a 2c 20 50 43 57 53 54 52 t(GUID)*, PCWSTR
d170: 2c 20 48 57 4e 44 2c 20 44 57 4f 52 44 29 3b 0d , HWND, DWORD);.
d180: 0a 09 48 44 45 56 49 4e 46 4f 20 53 65 74 75 70 ..HDEVINFO Setup
d190: 44 69 47 65 74 43 6c 61 73 73 44 65 76 73 45 78 DiGetClassDevsEx
d1a0: 41 28 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 A(const(GUID)*,
d1b0: 50 43 53 54 52 2c 20 48 57 4e 44 2c 20 44 57 4f PCSTR, HWND, DWO
d1c0: 52 44 2c 20 48 44 45 56 49 4e 46 4f 2c 20 50 43 RD, HDEVINFO, PC
d1d0: 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 48 STR, PVOID);...H
d1e0: 44 45 56 49 4e 46 4f 20 53 65 74 75 70 44 69 47 DEVINFO SetupDiG
d1f0: 65 74 43 6c 61 73 73 44 65 76 73 45 78 57 28 63 etClassDevsExW(c
d200: 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 50 43 57 onst(GUID)*, PCW
d210: 53 54 52 2c 20 48 57 4e 44 2c 20 44 57 4f 52 44 STR, HWND, DWORD
d220: 2c 20 48 44 45 56 49 4e 46 4f 2c 20 50 43 57 53 , HDEVINFO, PCWS
d230: 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f TR, PVOID);...BO
d240: 4f 4c 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 OL SetupDiGetCla
d250: 73 73 49 6d 61 67 65 49 6e 64 65 78 28 50 53 50 ssImageIndex(PSP
d260: 5f 43 4c 41 53 53 49 4d 41 47 45 4c 49 53 54 5f _CLASSIMAGELIST_
d270: 44 41 54 41 2c 20 63 6f 6e 73 74 28 47 55 49 44 DATA, const(GUID
d280: 29 2a 2c 20 50 49 4e 54 29 3b 0d 0a 09 42 4f 4f )*, PINT);...BOO
d290: 4c 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 L SetupDiGetClas
d2a0: 73 49 6d 61 67 65 4c 69 73 74 28 50 53 50 5f 43 sImageList(PSP_C
d2b0: 4c 41 53 53 49 4d 41 47 45 4c 49 53 54 5f 44 41 LASSIMAGELIST_DA
d2c0: 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 TA);...BOOL Setu
d2d0: 70 44 69 47 65 74 43 6c 61 73 73 49 6d 61 67 65 pDiGetClassImage
d2e0: 4c 69 73 74 45 78 41 28 50 53 50 5f 43 4c 41 53 ListExA(PSP_CLAS
d2f0: 53 49 4d 41 47 45 4c 49 53 54 5f 44 41 54 41 2c SIMAGELIST_DATA,
d300: 20 50 43 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d PCSTR, PVOID);.
d310: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 ..BOOL SetupDiGe
d320: 74 43 6c 61 73 73 49 6d 61 67 65 4c 69 73 74 45 tClassImageListE
d330: 78 57 28 50 53 50 5f 43 4c 41 53 53 49 4d 41 47 xW(PSP_CLASSIMAG
d340: 45 4c 49 53 54 5f 44 41 54 41 2c 20 50 43 57 53 ELIST_DATA, PCWS
d350: 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f TR, PVOID);...BO
d360: 4f 4c 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 OL SetupDiGetCla
d370: 73 73 49 6e 73 74 61 6c 6c 50 61 72 61 6d 73 41 ssInstallParamsA
d380: 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 (HDEVINFO, PSP_D
d390: 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 50 53 50 EVINFO_DATA, PSP
d3a0: 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c 5f 48 45 _CLASSINSTALL_HE
d3b0: 41 44 45 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 ADER, DWORD, PDW
d3c0: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ORD);...BOOL Set
d3d0: 75 70 44 69 47 65 74 43 6c 61 73 73 49 6e 73 74 upDiGetClassInst
d3e0: 61 6c 6c 50 61 72 61 6d 73 57 28 48 44 45 56 49 allParamsW(HDEVI
d3f0: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f NFO, PSP_DEVINFO
d400: 5f 44 41 54 41 2c 20 50 53 50 5f 43 4c 41 53 53 _DATA, PSP_CLASS
d410: 49 4e 53 54 41 4c 4c 5f 48 45 41 44 45 52 2c 20 INSTALL_HEADER,
d420: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d DWORD, PDWORD);.
d430: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 ..BOOL SetupDiGe
d440: 74 43 6c 61 73 73 52 65 67 69 73 74 72 79 50 72 tClassRegistryPr
d450: 6f 70 65 72 74 79 41 28 4c 50 47 55 49 44 2c 20 opertyA(LPGUID,
d460: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 DWORD, PDWORD, P
d470: 42 59 54 45 2c 20 44 57 4f 52 44 2c 20 50 44 57 BYTE, DWORD, PDW
d480: 4f 52 44 2c 20 50 43 53 54 52 2c 20 50 56 4f 49 ORD, PCSTR, PVOI
d490: 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 D);...BOOL Setup
d4a0: 44 69 47 65 74 43 6c 61 73 73 52 65 67 69 73 74 DiGetClassRegist
d4b0: 72 79 50 72 6f 70 65 72 74 79 57 28 4c 50 47 55 ryPropertyW(LPGU
d4c0: 49 44 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 ID, DWORD, PDWOR
d4d0: 44 2c 20 50 42 59 54 45 2c 20 44 57 4f 52 44 2c D, PBYTE, DWORD,
d4e0: 20 50 44 57 4f 52 44 2c 20 50 43 57 53 54 52 2c PDWORD, PCWSTR,
d4f0: 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PVOID);...BOOL
d500: 53 65 74 75 70 44 69 47 65 74 44 65 76 69 63 65 SetupDiGetDevice
d510: 49 6e 66 6f 4c 69 73 74 43 6c 61 73 73 28 48 44 InfoListClass(HD
d520: 45 56 49 4e 46 4f 2c 20 4c 50 47 55 49 44 29 3b EVINFO, LPGUID);
d530: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 ...BOOL SetupDiG
d540: 65 74 44 65 76 69 63 65 49 6e 66 6f 4c 69 73 74 etDeviceInfoList
d550: 44 65 74 61 69 6c 41 28 48 44 45 56 49 4e 46 4f DetailA(HDEVINFO
d560: 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 4c 49 , PSP_DEVINFO_LI
d570: 53 54 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 41 ST_DETAIL_DATA_A
d580: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
d590: 69 47 65 74 44 65 76 69 63 65 49 6e 66 6f 4c 69 iGetDeviceInfoLi
d5a0: 73 74 44 65 74 61 69 6c 57 28 48 44 45 56 49 4e stDetailW(HDEVIN
d5b0: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
d5c0: 4c 49 53 54 5f 44 45 54 41 49 4c 5f 44 41 54 41 LIST_DETAIL_DATA
d5d0: 5f 57 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 _W);...BOOL Setu
d5e0: 70 44 69 47 65 74 44 65 76 69 63 65 49 6e 73 74 pDiGetDeviceInst
d5f0: 61 6c 6c 50 61 72 61 6d 73 41 28 48 44 45 56 49 allParamsA(HDEVI
d600: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f NFO, PSP_DEVINFO
d610: 5f 44 41 54 41 2c 20 50 53 50 5f 44 45 56 49 4e _DATA, PSP_DEVIN
d620: 53 54 41 4c 4c 5f 50 41 52 41 4d 53 5f 41 29 3b STALL_PARAMS_A);
d630: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 ...BOOL SetupDiG
d640: 65 74 44 65 76 69 63 65 49 6e 73 74 61 6c 6c 50 etDeviceInstallP
d650: 61 72 61 6d 73 57 28 48 44 45 56 49 4e 46 4f 2c aramsW(HDEVINFO,
d660: 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 PSP_DEVINFO_DAT
d670: 41 2c 20 50 53 50 5f 44 45 56 49 4e 53 54 41 4c A, PSP_DEVINSTAL
d680: 4c 5f 50 41 52 41 4d 53 5f 57 29 3b 0d 0a 09 42 L_PARAMS_W);...B
d690: 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 74 44 65 OOL SetupDiGetDe
d6a0: 76 69 63 65 49 6e 73 74 61 6e 63 65 49 64 41 28 viceInstanceIdA(
d6b0: 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 HDEVINFO, PSP_DE
d6c0: 56 49 4e 46 4f 5f 44 41 54 41 2c 20 50 53 54 52 VINFO_DATA, PSTR
d6d0: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 , DWORD, PDWORD)
d6e0: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 ;...BOOL SetupDi
d6f0: 47 65 74 44 65 76 69 63 65 49 6e 73 74 61 6e 63 GetDeviceInstanc
d700: 65 49 64 57 28 48 44 45 56 49 4e 46 4f 2c 20 50 eIdW(HDEVINFO, P
d710: 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c SP_DEVINFO_DATA,
d720: 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PWSTR, DWORD, P
d730: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 DWORD);...BOOL S
d740: 65 74 75 70 44 69 47 65 74 44 65 76 69 63 65 49 etupDiGetDeviceI
d750: 6e 74 65 72 66 61 63 65 41 6c 69 61 73 28 48 44 nterfaceAlias(HD
d760: 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 EVINFO, PSP_DEVI
d770: 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 41 54 CE_INTERFACE_DAT
d780: 41 2c 20 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c A, const(GUID)*,
d790: 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 PSP_DEVICE_INTE
d7a0: 52 46 41 43 45 5f 44 41 54 41 29 3b 0d 0a 09 42 RFACE_DATA);...B
d7b0: 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 74 44 65 OOL SetupDiGetDe
d7c0: 76 69 63 65 49 6e 74 65 72 66 61 63 65 44 65 74 viceInterfaceDet
d7d0: 61 69 6c 41 28 48 44 45 56 49 4e 46 4f 2c 20 50 ailA(HDEVINFO, P
d7e0: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
d7f0: 41 43 45 5f 44 41 54 41 2c 20 50 53 50 5f 44 45 ACE_DATA, PSP_DE
d800: 56 49 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 VICE_INTERFACE_D
d810: 45 54 41 49 4c 5f 44 41 54 41 5f 41 2c 20 44 57 ETAIL_DATA_A, DW
d820: 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 53 50 ORD, PDWORD, PSP
d830: 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d _DEVINFO_DATA);.
d840: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 ..BOOL SetupDiGe
d850: 74 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 tDeviceInterface
d860: 44 65 74 61 69 6c 57 28 48 44 45 56 49 4e 46 4f DetailW(HDEVINFO
d870: 2c 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 , PSP_DEVICE_INT
d880: 45 52 46 41 43 45 5f 44 41 54 41 2c 20 50 53 50 ERFACE_DATA, PSP
d890: 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 43 _DEVICE_INTERFAC
d8a0: 45 5f 44 45 54 41 49 4c 5f 44 41 54 41 5f 57 2c E_DETAIL_DATA_W,
d8b0: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 DWORD, PDWORD,
d8c0: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 PSP_DEVINFO_DATA
d8d0: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
d8e0: 69 47 65 74 44 65 76 69 63 65 52 65 67 69 73 74 iGetDeviceRegist
d8f0: 72 79 50 72 6f 70 65 72 74 79 41 28 48 44 45 56 ryPropertyA(HDEV
d900: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
d910: 4f 5f 44 41 54 41 2c 20 44 57 4f 52 44 2c 20 50 O_DATA, DWORD, P
d920: 44 57 4f 52 44 2c 20 50 42 59 54 45 2c 20 44 57 DWORD, PBYTE, DW
d930: 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 ORD, PDWORD);...
d940: 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 65 74 44 BOOL SetupDiGetD
d950: 65 76 69 63 65 52 65 67 69 73 74 72 79 50 72 6f eviceRegistryPro
d960: 70 65 72 74 79 57 28 48 44 45 56 49 4e 46 4f 2c pertyW(HDEVINFO,
d970: 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 PSP_DEVINFO_DAT
d980: 41 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 A, DWORD, PDWORD
d990: 2c 20 50 42 59 54 45 2c 20 44 57 4f 52 44 2c 20 , PBYTE, DWORD,
d9a0: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
d9b0: 53 65 74 75 70 44 69 47 65 74 44 72 69 76 65 72 SetupDiGetDriver
d9c0: 49 6e 66 6f 44 65 74 61 69 6c 41 28 48 44 45 56 InfoDetailA(HDEV
d9d0: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
d9e0: 4f 5f 44 41 54 41 2c 20 50 53 50 5f 44 52 56 49 O_DATA, PSP_DRVI
d9f0: 4e 46 4f 5f 44 41 54 41 5f 41 2c 20 50 53 50 5f NFO_DATA_A, PSP_
da00: 44 52 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 DRVINFO_DETAIL_D
da10: 41 54 41 5f 41 2c 20 44 57 4f 52 44 2c 20 50 44 ATA_A, DWORD, PD
da20: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
da30: 74 75 70 44 69 47 65 74 44 72 69 76 65 72 49 6e tupDiGetDriverIn
da40: 66 6f 44 65 74 61 69 6c 57 28 48 44 45 56 49 4e foDetailW(HDEVIN
da50: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
da60: 44 41 54 41 2c 20 50 53 50 5f 44 52 56 49 4e 46 DATA, PSP_DRVINF
da70: 4f 5f 44 41 54 41 5f 57 2c 20 50 53 50 5f 44 52 O_DATA_W, PSP_DR
da80: 56 49 4e 46 4f 5f 44 45 54 41 49 4c 5f 44 41 54 VINFO_DETAIL_DAT
da90: 41 5f 57 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f A_W, DWORD, PDWO
daa0: 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 RD);...BOOL Setu
dab0: 70 44 69 47 65 74 44 72 69 76 65 72 49 6e 73 74 pDiGetDriverInst
dac0: 61 6c 6c 50 61 72 61 6d 73 41 28 48 44 45 56 49 allParamsA(HDEVI
dad0: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f NFO, PSP_DEVINFO
dae0: 5f 44 41 54 41 2c 20 50 53 50 5f 44 52 56 49 4e _DATA, PSP_DRVIN
daf0: 46 4f 5f 44 41 54 41 5f 41 2c 20 50 53 50 5f 44 FO_DATA_A, PSP_D
db00: 52 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 RVINSTALL_PARAMS
db10: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
db20: 69 47 65 74 44 72 69 76 65 72 49 6e 73 74 61 6c iGetDriverInstal
db30: 6c 50 61 72 61 6d 73 57 28 48 44 45 56 49 4e 46 lParamsW(HDEVINF
db40: 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 O, PSP_DEVINFO_D
db50: 41 54 41 2c 20 50 53 50 5f 44 52 56 49 4e 46 4f ATA, PSP_DRVINFO
db60: 5f 44 41 54 41 5f 57 2c 20 50 53 50 5f 44 52 56 _DATA_W, PSP_DRV
db70: 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 29 3b INSTALL_PARAMS);
db80: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 47 ...BOOL SetupDiG
db90: 65 74 48 77 50 72 6f 66 69 6c 65 46 72 69 65 6e etHwProfileFrien
dba0: 64 6c 79 4e 61 6d 65 41 28 44 57 4f 52 44 2c 20 dlyNameA(DWORD,
dbb0: 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 PSTR, DWORD, PDW
dbc0: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ORD);...BOOL Set
dbd0: 75 70 44 69 47 65 74 48 77 50 72 6f 66 69 6c 65 upDiGetHwProfile
dbe0: 46 72 69 65 6e 64 6c 79 4e 61 6d 65 45 78 41 28 FriendlyNameExA(
dbf0: 44 57 4f 52 44 2c 20 50 53 54 52 2c 20 44 57 4f DWORD, PSTR, DWO
dc00: 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 43 53 54 RD, PDWORD, PCST
dc10: 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f R, PVOID);...BOO
dc20: 4c 20 53 65 74 75 70 44 69 47 65 74 48 77 50 72 L SetupDiGetHwPr
dc30: 6f 66 69 6c 65 46 72 69 65 6e 64 6c 79 4e 61 6d ofileFriendlyNam
dc40: 65 45 78 57 28 44 57 4f 52 44 2c 20 50 57 53 54 eExW(DWORD, PWST
dc50: 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 R, DWORD, PDWORD
dc60: 2c 20 50 43 57 53 54 52 2c 20 50 56 4f 49 44 29 , PCWSTR, PVOID)
dc70: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 ;...BOOL SetupDi
dc80: 47 65 74 48 77 50 72 6f 66 69 6c 65 46 72 69 65 GetHwProfileFrie
dc90: 6e 64 6c 79 4e 61 6d 65 57 28 44 57 4f 52 44 2c ndlyNameW(DWORD,
dca0: 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PWSTR, DWORD, P
dcb0: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 DWORD);...BOOL S
dcc0: 65 74 75 70 44 69 47 65 74 48 77 50 72 6f 66 69 etupDiGetHwProfi
dcd0: 6c 65 4c 69 73 74 28 50 44 57 4f 52 44 2c 20 44 leList(PDWORD, D
dce0: 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 44 WORD, PDWORD, PD
dcf0: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
dd00: 74 75 70 44 69 47 65 74 48 77 50 72 6f 66 69 6c tupDiGetHwProfil
dd10: 65 4c 69 73 74 45 78 41 28 50 44 57 4f 52 44 2c eListExA(PDWORD,
dd20: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 DWORD, PDWORD,
dd30: 50 44 57 4f 52 44 2c 20 50 43 53 54 52 2c 20 50 PDWORD, PCSTR, P
dd40: 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 VOID);...BOOL Se
dd50: 74 75 70 44 69 47 65 74 48 77 50 72 6f 66 69 6c tupDiGetHwProfil
dd60: 65 4c 69 73 74 45 78 57 28 50 44 57 4f 52 44 2c eListExW(PDWORD,
dd70: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 DWORD, PDWORD,
dd80: 50 44 57 4f 52 44 2c 20 50 43 57 53 54 52 2c 20 PDWORD, PCWSTR,
dd90: 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 PVOID);...BOOL S
dda0: 65 74 75 70 44 69 47 65 74 49 4e 46 43 6c 61 73 etupDiGetINFClas
ddb0: 73 41 28 50 43 53 54 52 2c 20 4c 50 47 55 49 44 sA(PCSTR, LPGUID
ddc0: 2c 20 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 , PSTR, DWORD, P
ddd0: 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 DWORD);...BOOL S
dde0: 65 74 75 70 44 69 47 65 74 49 4e 46 43 6c 61 73 etupDiGetINFClas
ddf0: 73 57 28 50 43 57 53 54 52 2c 20 4c 50 47 55 49 sW(PCWSTR, LPGUI
de00: 44 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c D, PWSTR, DWORD,
de10: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c PDWORD);...BOOL
de20: 20 53 65 74 75 70 44 69 47 65 74 53 65 6c 65 63 SetupDiGetSelec
de30: 74 65 64 44 65 76 69 63 65 28 48 44 45 56 49 4e tedDevice(HDEVIN
de40: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
de50: 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 DATA);...BOOL Se
de60: 74 75 70 44 69 47 65 74 53 65 6c 65 63 74 65 64 tupDiGetSelected
de70: 44 72 69 76 65 72 41 28 48 44 45 56 49 4e 46 4f DriverA(HDEVINFO
de80: 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 , PSP_DEVINFO_DA
de90: 54 41 2c 20 50 53 50 5f 44 52 56 49 4e 46 4f 5f TA, PSP_DRVINFO_
dea0: 44 41 54 41 5f 41 29 3b 0d 0a 09 42 4f 4f 4c 20 DATA_A);...BOOL
deb0: 53 65 74 75 70 44 69 47 65 74 53 65 6c 65 63 74 SetupDiGetSelect
dec0: 65 64 44 72 69 76 65 72 57 28 48 44 45 56 49 4e edDriverW(HDEVIN
ded0: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
dee0: 44 41 54 41 2c 20 50 53 50 5f 44 52 56 49 4e 46 DATA, PSP_DRVINF
def0: 4f 5f 44 41 54 41 5f 57 29 3b 0d 0a 09 48 50 52 O_DATA_W);...HPR
df00: 4f 50 53 48 45 45 54 50 41 47 45 20 53 65 74 75 OPSHEETPAGE Setu
df10: 70 44 69 47 65 74 57 69 7a 61 72 64 61 67 65 28 pDiGetWizardage(
df20: 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 HDEVINFO, PSP_DE
df30: 56 49 4e 46 4f 5f 44 41 54 41 2c 20 50 53 50 5f VINFO_DATA, PSP_
df40: 49 4e 53 54 41 4c 4c 57 49 5a 41 52 44 5f 44 41 INSTALLWIZARD_DA
df50: 54 41 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 TA, DWORD, DWORD
df60: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
df70: 69 49 6e 73 74 61 6c 6c 43 6c 61 73 73 41 28 48 iInstallClassA(H
df80: 57 4e 44 2c 20 50 43 53 54 52 2c 20 44 57 4f 52 WND, PCSTR, DWOR
df90: 44 2c 20 48 53 50 46 49 4c 45 51 29 3b 0d 0a 09 D, HSPFILEQ);...
dfa0: 42 4f 4f 4c 20 53 65 74 75 70 44 69 49 6e 73 74 BOOL SetupDiInst
dfb0: 61 6c 6c 43 6c 61 73 73 57 28 48 57 4e 44 2c 20 allClassW(HWND,
dfc0: 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 48 PCWSTR, DWORD, H
dfd0: 53 50 46 49 4c 45 51 29 3b 0d 0a 09 42 4f 4f 4c SPFILEQ);...BOOL
dfe0: 20 53 65 74 75 70 44 69 49 6e 73 74 61 6c 6c 43 SetupDiInstallC
dff0: 6c 61 73 73 45 78 41 28 48 57 4e 44 2c 20 50 43 lassExA(HWND, PC
e000: 53 54 52 2c 20 44 57 4f 52 44 2c 20 48 53 50 46 STR, DWORD, HSPF
e010: 49 4c 45 51 2c 20 63 6f 6e 73 74 28 47 55 49 44 ILEQ, const(GUID
e020: 29 2a 2c 20 50 56 4f 49 44 2c 20 50 56 4f 49 44 )*, PVOID, PVOID
e030: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
e040: 69 49 6e 73 74 61 6c 6c 43 6c 61 73 73 45 78 57 iInstallClassExW
e050: 28 48 57 4e 44 2c 20 50 43 57 53 54 52 2c 20 44 (HWND, PCWSTR, D
e060: 57 4f 52 44 2c 20 48 53 50 46 49 4c 45 51 2c 20 WORD, HSPFILEQ,
e070: 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 50 56 const(GUID)*, PV
e080: 4f 49 44 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 OID, PVOID);...B
e090: 4f 4f 4c 20 53 65 74 75 70 44 69 49 6e 73 74 61 OOL SetupDiInsta
e0a0: 6c 6c 44 65 76 69 63 65 28 48 44 45 56 49 4e 46 llDevice(HDEVINF
e0b0: 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 O, PSP_DEVINFO_D
e0c0: 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ATA);...BOOL Set
e0d0: 75 70 44 69 49 6e 73 74 61 6c 6c 44 65 76 69 63 upDiInstallDevic
e0e0: 65 49 6e 74 65 72 66 61 63 65 73 28 48 44 45 56 eInterfaces(HDEV
e0f0: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
e100: 4f 5f 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 O_DATA);...BOOL
e110: 53 65 74 75 70 44 69 49 6e 73 74 61 6c 6c 44 72 SetupDiInstallDr
e120: 69 76 65 72 46 69 6c 65 73 28 48 44 45 56 49 4e iverFiles(HDEVIN
e130: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
e140: 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 DATA);...BOOL Se
e150: 74 75 70 44 69 4c 6f 61 64 43 6c 61 73 73 49 63 tupDiLoadClassIc
e160: 6f 6e 28 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c on(const(GUID)*,
e170: 20 48 49 43 4f 4e 2a 2c 20 50 49 4e 54 29 3b 0d HICON*, PINT);.
e180: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 4d 6f ..BOOL SetupDiMo
e190: 76 65 44 75 70 6c 69 63 61 74 65 44 65 76 69 63 veDuplicateDevic
e1a0: 65 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f e(HDEVINFO, PSP_
e1b0: 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a DEVINFO_DATA);..
e1c0: 09 48 4b 45 59 20 53 65 74 75 70 44 69 4f 70 65 .HKEY SetupDiOpe
e1d0: 6e 43 6c 61 73 73 52 65 67 4b 65 79 28 63 6f 6e nClassRegKey(con
e1e0: 73 74 28 47 55 49 44 29 2a 2c 20 52 45 47 53 41 st(GUID)*, REGSA
e1f0: 4d 29 3b 0d 0a 09 48 4b 45 59 20 53 65 74 75 70 M);...HKEY Setup
e200: 44 69 4f 70 65 6e 43 6c 61 73 73 52 65 67 4b 65 DiOpenClassRegKe
e210: 79 45 78 41 28 63 6f 6e 73 74 28 47 55 49 44 29 yExA(const(GUID)
e220: 2a 2c 20 52 45 47 53 41 4d 2c 20 44 57 4f 52 44 *, REGSAM, DWORD
e230: 2c 20 50 43 53 54 52 2c 20 50 56 4f 49 44 29 3b , PCSTR, PVOID);
e240: 0d 0a 09 48 4b 45 59 20 53 65 74 75 70 44 69 4f ...HKEY SetupDiO
e250: 70 65 6e 43 6c 61 73 73 52 65 67 4b 65 79 45 78 penClassRegKeyEx
e260: 57 28 63 6f 6e 73 74 28 47 55 49 44 29 2a 2c 20 W(const(GUID)*,
e270: 52 45 47 53 41 4d 2c 20 44 57 4f 52 44 2c 20 50 REGSAM, DWORD, P
e280: 43 57 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a CWSTR, PVOID);..
e290: 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 4f 70 65 .BOOL SetupDiOpe
e2a0: 6e 44 65 76 69 63 65 49 6e 66 6f 41 28 48 44 45 nDeviceInfoA(HDE
e2b0: 56 49 4e 46 4f 2c 20 50 43 53 54 52 2c 20 48 57 VINFO, PCSTR, HW
e2c0: 4e 44 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 ND, DWORD, PSP_D
e2d0: 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a 09 EVINFO_DATA);...
e2e0: 42 4f 4f 4c 20 53 65 74 75 70 44 69 4f 70 65 6e BOOL SetupDiOpen
e2f0: 44 65 76 69 63 65 49 6e 66 6f 57 28 48 44 45 56 DeviceInfoW(HDEV
e300: 49 4e 46 4f 2c 20 50 43 57 53 54 52 2c 20 48 57 INFO, PCWSTR, HW
e310: 4e 44 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 ND, DWORD, PSP_D
e320: 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a 09 EVINFO_DATA);...
e330: 42 4f 4f 4c 20 53 65 74 75 70 44 69 4f 70 65 6e BOOL SetupDiOpen
e340: 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 41 DeviceInterfaceA
e350: 28 48 44 45 56 49 4e 46 4f 2c 20 50 43 53 54 52 (HDEVINFO, PCSTR
e360: 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 45 56 , DWORD, PSP_DEV
e370: 49 43 45 5f 49 4e 54 45 52 46 41 43 45 5f 44 41 ICE_INTERFACE_DA
e380: 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 TA);...BOOL Setu
e390: 70 44 69 4f 70 65 6e 44 65 76 69 63 65 49 6e 74 pDiOpenDeviceInt
e3a0: 65 72 66 61 63 65 57 28 48 44 45 56 49 4e 46 4f erfaceW(HDEVINFO
e3b0: 2c 20 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c , PCWSTR, DWORD,
e3c0: 20 50 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 PSP_DEVICE_INTE
e3d0: 52 46 41 43 45 5f 44 41 54 41 29 3b 0d 0a 09 48 RFACE_DATA);...H
e3e0: 4b 45 59 20 53 65 74 75 70 44 69 4f 70 65 6e 44 KEY SetupDiOpenD
e3f0: 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 52 65 eviceInterfaceRe
e400: 67 4b 65 79 28 48 44 45 56 49 4e 46 4f 2c 20 50 gKey(HDEVINFO, P
e410: 53 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 SP_DEVICE_INTERF
e420: 41 43 45 5f 44 41 54 41 2c 20 44 57 4f 52 44 2c ACE_DATA, DWORD,
e430: 20 52 45 47 53 41 4d 29 3b 0d 0a 09 48 4b 45 59 REGSAM);...HKEY
e440: 20 53 65 74 75 70 44 69 4f 70 65 6e 44 65 76 52 SetupDiOpenDevR
e450: 65 67 4b 65 79 28 48 44 45 56 49 4e 46 4f 2c 20 egKey(HDEVINFO,
e460: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 PSP_DEVINFO_DATA
e470: 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 44 2c 20 , DWORD, DWORD,
e480: 44 57 4f 52 44 2c 20 52 45 47 53 41 4d 29 3b 0d DWORD, REGSAM);.
e490: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 52 65 ..BOOL SetupDiRe
e4a0: 67 69 73 74 65 72 43 6f 44 65 76 69 63 65 49 6e gisterCoDeviceIn
e4b0: 73 74 61 6c 6c 65 72 73 28 48 44 45 56 49 4e 46 stallers(HDEVINF
e4c0: 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 O, PSP_DEVINFO_D
e4d0: 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ATA);...BOOL Set
e4e0: 75 70 44 69 52 65 67 69 73 74 65 72 44 65 76 69 upDiRegisterDevi
e4f0: 63 65 49 6e 66 6f 28 48 44 45 56 49 4e 46 4f 2c ceInfo(HDEVINFO,
e500: 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 PSP_DEVINFO_DAT
e510: 41 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 44 45 A, DWORD, PSP_DE
e520: 54 53 49 47 5f 43 4d 50 50 52 4f 43 2c 20 50 56 TSIG_CMPPROC, PV
e530: 4f 49 44 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f OID, PSP_DEVINFO
e540: 5f 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 _DATA);...BOOL S
e550: 65 74 75 70 44 69 52 65 6d 6f 76 65 44 65 76 69 etupDiRemoveDevi
e560: 63 65 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 ce(HDEVINFO, PSP
e570: 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d _DEVINFO_DATA);.
e580: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 52 65 ..BOOL SetupDiRe
e590: 6d 6f 76 65 44 65 76 69 63 65 49 6e 74 65 72 66 moveDeviceInterf
e5a0: 61 63 65 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 ace(HDEVINFO, PS
e5b0: 50 5f 44 45 56 49 43 45 5f 49 4e 54 45 52 46 41 P_DEVICE_INTERFA
e5c0: 43 45 5f 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c CE_DATA);...BOOL
e5d0: 20 53 65 74 75 70 44 69 53 65 6c 65 63 74 42 65 SetupDiSelectBe
e5e0: 73 74 43 6f 6d 70 61 74 44 72 76 28 48 44 45 56 stCompatDrv(HDEV
e5f0: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
e600: 4f 5f 44 41 54 41 29 3b 0d 0a 09 42 4f 4f 4c 20 O_DATA);...BOOL
e610: 53 65 74 75 70 44 69 53 65 6c 65 63 74 44 65 76 SetupDiSelectDev
e620: 69 63 65 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 ice(HDEVINFO, PS
e630: 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b P_DEVINFO_DATA);
e640: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 53 ...BOOL SetupDiS
e650: 65 6c 65 63 74 4f 45 4d 44 72 76 28 48 57 4e 44 electOEMDrv(HWND
e660: 2c 20 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f , HDEVINFO, PSP_
e670: 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a DEVINFO_DATA);..
e680: 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 53 65 74 .BOOL SetupDiSet
e690: 43 6c 61 73 73 49 6e 73 74 61 6c 6c 50 61 72 61 ClassInstallPara
e6a0: 6d 73 41 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 msA(HDEVINFO, PS
e6b0: 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 P_DEVINFO_DATA,
e6c0: 50 53 50 5f 43 4c 41 53 53 49 4e 53 54 41 4c 4c PSP_CLASSINSTALL
e6d0: 5f 48 45 41 44 45 52 2c 20 44 57 4f 52 44 29 3b _HEADER, DWORD);
e6e0: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 53 ...BOOL SetupDiS
e6f0: 65 74 43 6c 61 73 73 49 6e 73 74 61 6c 6c 50 61 etClassInstallPa
e700: 72 61 6d 73 57 28 48 44 45 56 49 4e 46 4f 2c 20 ramsW(HDEVINFO,
e710: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 PSP_DEVINFO_DATA
e720: 2c 20 50 53 50 5f 43 4c 41 53 53 49 4e 53 54 41 , PSP_CLASSINSTA
e730: 4c 4c 5f 48 45 41 44 45 52 2c 20 44 57 4f 52 44 LL_HEADER, DWORD
e740: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
e750: 69 53 65 74 43 6c 61 73 73 52 65 67 69 73 74 72 iSetClassRegistr
e760: 79 50 72 6f 70 65 72 74 79 41 28 4c 50 47 55 49 yPropertyA(LPGUI
e770: 44 2c 20 44 57 4f 52 44 2c 20 63 6f 6e 73 74 28 D, DWORD, const(
e780: 42 59 54 45 29 2a 2c 20 44 57 4f 52 44 2c 20 50 BYTE)*, DWORD, P
e790: 43 53 54 52 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 CSTR, PVOID);...
e7a0: 42 4f 4f 4c 20 53 65 74 75 70 44 69 53 65 74 43 BOOL SetupDiSetC
e7b0: 6c 61 73 73 52 65 67 69 73 74 72 79 50 72 6f 70 lassRegistryProp
e7c0: 65 72 74 79 57 28 4c 50 47 55 49 44 2c 20 44 57 ertyW(LPGUID, DW
e7d0: 4f 52 44 2c 20 63 6f 6e 73 74 28 42 59 54 45 29 ORD, const(BYTE)
e7e0: 2a 2c 20 44 57 4f 52 44 2c 20 50 43 57 53 54 52 *, DWORD, PCWSTR
e7f0: 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c , PVOID);...BOOL
e800: 20 53 65 74 75 70 44 69 53 65 74 44 65 76 69 63 SetupDiSetDevic
e810: 65 49 6e 73 74 61 6c 6c 50 61 72 61 6d 73 41 28 eInstallParamsA(
e820: 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 HDEVINFO, PSP_DE
e830: 56 49 4e 46 4f 5f 44 41 54 41 2c 20 50 53 50 5f VINFO_DATA, PSP_
e840: 44 45 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d DEVINSTALL_PARAM
e850: 53 5f 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 S_A);...BOOL Set
e860: 75 70 44 69 53 65 74 44 65 76 69 63 65 49 6e 73 upDiSetDeviceIns
e870: 74 61 6c 6c 50 61 72 61 6d 73 57 28 48 44 45 56 tallParamsW(HDEV
e880: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
e890: 4f 5f 44 41 54 41 2c 20 50 53 50 5f 44 45 56 49 O_DATA, PSP_DEVI
e8a0: 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 5f 57 29 NSTALL_PARAMS_W)
e8b0: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 ;...BOOL SetupDi
e8c0: 53 65 74 44 65 76 69 63 65 52 65 67 69 73 74 72 SetDeviceRegistr
e8d0: 79 50 72 6f 70 65 72 74 79 41 28 48 44 45 56 49 yPropertyA(HDEVI
e8e0: 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f NFO, PSP_DEVINFO
e8f0: 5f 44 41 54 41 2c 20 44 57 4f 52 44 2c 20 63 6f _DATA, DWORD, co
e900: 6e 73 74 28 42 59 54 45 29 2a 2c 20 44 57 4f 52 nst(BYTE)*, DWOR
e910: 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 D);...BOOL Setup
e920: 44 69 53 65 74 44 65 76 69 63 65 52 65 67 69 73 DiSetDeviceRegis
e930: 74 72 79 50 72 6f 70 65 72 74 79 57 28 48 44 45 tryPropertyW(HDE
e940: 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e VINFO, PSP_DEVIN
e950: 46 4f 5f 44 41 54 41 2c 20 44 57 4f 52 44 2c 20 FO_DATA, DWORD,
e960: 63 6f 6e 73 74 28 42 59 54 45 29 2a 2c 20 44 57 const(BYTE)*, DW
e970: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ORD);...BOOL Set
e980: 75 70 44 69 53 65 74 44 72 69 76 65 72 49 6e 73 upDiSetDriverIns
e990: 74 61 6c 6c 50 61 72 61 6d 73 41 28 48 44 45 56 tallParamsA(HDEV
e9a0: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
e9b0: 4f 5f 44 41 54 41 2c 20 50 53 50 5f 44 52 56 49 O_DATA, PSP_DRVI
e9c0: 4e 46 4f 5f 44 41 54 41 5f 41 2c 20 50 53 50 5f NFO_DATA_A, PSP_
e9d0: 44 52 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d DRVINSTALL_PARAM
e9e0: 53 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 S);...BOOL Setup
e9f0: 44 69 53 65 74 44 72 69 76 65 72 49 6e 73 74 61 DiSetDriverInsta
ea00: 6c 6c 50 61 72 61 6d 73 57 28 48 44 45 56 49 4e llParamsW(HDEVIN
ea10: 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 4f 5f FO, PSP_DEVINFO_
ea20: 44 41 54 41 2c 20 50 53 50 5f 44 52 56 49 4e 46 DATA, PSP_DRVINF
ea30: 4f 5f 44 41 54 41 5f 57 2c 20 50 53 50 5f 44 52 O_DATA_W, PSP_DR
ea40: 56 49 4e 53 54 41 4c 4c 5f 50 41 52 41 4d 53 29 VINSTALL_PARAMS)
ea50: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 ;...BOOL SetupDi
ea60: 53 65 74 53 65 6c 65 63 74 65 64 44 65 76 69 63 SetSelectedDevic
ea70: 65 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f e(HDEVINFO, PSP_
ea80: 44 45 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a DEVINFO_DATA);..
ea90: 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 53 65 74 .BOOL SetupDiSet
eaa0: 53 65 6c 65 63 74 65 64 44 72 69 76 65 72 41 28 SelectedDriverA(
eab0: 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 HDEVINFO, PSP_DE
eac0: 56 49 4e 46 4f 5f 44 41 54 41 2c 20 50 53 50 5f VINFO_DATA, PSP_
ead0: 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 41 29 3b DRVINFO_DATA_A);
eae0: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 69 53 ...BOOL SetupDiS
eaf0: 65 74 53 65 6c 65 63 74 65 64 44 72 69 76 65 72 etSelectedDriver
eb00: 57 28 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f W(HDEVINFO, PSP_
eb10: 44 45 56 49 4e 46 4f 5f 44 41 54 41 2c 20 50 53 DEVINFO_DATA, PS
eb20: 50 5f 44 52 56 49 4e 46 4f 5f 44 41 54 41 5f 57 P_DRVINFO_DATA_W
eb30: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 44 );...BOOL SetupD
eb40: 69 55 6e 72 65 6d 6f 76 65 44 65 76 69 63 65 28 iUnremoveDevice(
eb50: 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 HDEVINFO, PSP_DE
eb60: 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a 09 48 VINFO_DATA);...H
eb70: 44 53 4b 53 50 43 20 53 65 74 75 70 44 75 70 6c DSKSPC SetupDupl
eb80: 69 63 61 74 65 44 69 73 6b 53 70 61 63 65 4c 69 icateDiskSpaceLi
eb90: 73 74 41 28 48 44 53 4b 53 50 43 2c 20 50 56 4f stA(HDSKSPC, PVO
eba0: 49 44 2c 20 44 57 4f 52 44 2c 20 55 49 4e 54 29 ID, DWORD, UINT)
ebb0: 3b 0d 0a 09 48 44 53 4b 53 50 43 20 53 65 74 75 ;...HDSKSPC Setu
ebc0: 70 44 75 70 6c 69 63 61 74 65 44 69 73 6b 53 70 pDuplicateDiskSp
ebd0: 61 63 65 4c 69 73 74 57 28 48 44 53 4b 53 50 43 aceListW(HDSKSPC
ebe0: 2c 20 50 56 4f 49 44 2c 20 44 57 4f 52 44 2c 20 , PVOID, DWORD,
ebf0: 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 UINT);...BOOL Se
ec00: 74 75 70 46 69 6e 64 46 69 72 73 74 4c 69 6e 65 tupFindFirstLine
ec10: 41 28 48 49 4e 46 2c 20 50 43 53 54 52 2c 20 50 A(HINF, PCSTR, P
ec20: 43 53 54 52 2c 20 50 49 4e 46 43 4f 4e 54 45 58 CSTR, PINFCONTEX
ec30: 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 T);...BOOL Setup
ec40: 46 69 6e 64 46 69 72 73 74 4c 69 6e 65 57 28 48 FindFirstLineW(H
ec50: 49 4e 46 2c 20 50 43 57 53 54 52 2c 20 50 43 57 INF, PCWSTR, PCW
ec60: 53 54 52 2c 20 50 49 4e 46 43 4f 4e 54 45 58 54 STR, PINFCONTEXT
ec70: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 46 );...BOOL SetupF
ec80: 69 6e 64 4e 65 78 74 4c 69 6e 65 28 50 49 4e 46 indNextLine(PINF
ec90: 43 4f 4e 54 45 58 54 2c 20 50 49 4e 46 43 4f 4e CONTEXT, PINFCON
eca0: 54 45 58 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 TEXT);...BOOL Se
ecb0: 74 75 70 46 69 6e 64 4e 65 78 74 4d 61 74 63 68 tupFindNextMatch
ecc0: 4c 69 6e 65 41 28 50 49 4e 46 43 4f 4e 54 45 58 LineA(PINFCONTEX
ecd0: 54 2c 20 50 43 53 54 52 2c 20 50 49 4e 46 43 4f T, PCSTR, PINFCO
ece0: 4e 54 45 58 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 NTEXT);...BOOL S
ecf0: 65 74 75 70 46 69 6e 64 4e 65 78 74 4d 61 74 63 etupFindNextMatc
ed00: 68 4c 69 6e 65 57 28 50 49 4e 46 43 4f 4e 54 45 hLineW(PINFCONTE
ed10: 58 54 2c 20 50 43 57 53 54 52 2c 20 50 49 4e 46 XT, PCWSTR, PINF
ed20: 43 4f 4e 54 45 58 54 29 3b 0d 0a 09 42 4f 4f 4c CONTEXT);...BOOL
ed30: 20 53 65 74 75 70 46 72 65 65 41 28 50 43 53 54 SetupFreeA(PCST
ed40: 52 2a 2a 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f R**, UINT);...BO
ed50: 4f 4c 20 53 65 74 75 70 46 72 65 65 57 28 50 43 OL SetupFreeW(PC
ed60: 57 53 54 52 2a 2a 2c 20 55 49 4e 54 29 3b 0d 0a WSTR**, UINT);..
ed70: 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 74 42 61 .BOOL SetupGetBa
ed80: 63 6b 75 70 49 6e 66 6f 72 6d 61 74 69 6f 6e 41 ckupInformationA
ed90: 28 48 53 50 46 49 4c 45 51 2c 20 50 53 50 5f 42 (HSPFILEQ, PSP_B
eda0: 41 43 4b 55 50 5f 51 55 45 55 45 5f 50 41 52 41 ACKUP_QUEUE_PARA
edb0: 4d 53 5f 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 MS_A);...BOOL Se
edc0: 74 75 70 47 65 74 42 61 63 6b 75 70 49 6e 66 6f tupGetBackupInfo
edd0: 72 6d 61 74 69 6f 6e 57 28 48 53 50 46 49 4c 45 rmationW(HSPFILE
ede0: 51 2c 20 50 53 50 5f 42 41 43 4b 55 50 5f 51 55 Q, PSP_BACKUP_QU
edf0: 45 55 45 5f 50 41 52 41 4d 53 5f 57 29 3b 0d 0a EUE_PARAMS_W);..
ee00: 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 74 42 69 .BOOL SetupGetBi
ee10: 6e 61 72 79 46 69 65 6c 64 28 50 49 4e 46 43 4f naryField(PINFCO
ee20: 4e 54 45 58 54 2c 20 44 57 4f 52 44 2c 20 50 42 NTEXT, DWORD, PB
ee30: 59 54 45 2c 20 44 57 4f 52 44 2c 20 4c 50 44 57 YTE, DWORD, LPDW
ee40: 4f 52 44 29 3b 0d 0a 09 44 57 4f 52 44 20 53 65 ORD);...DWORD Se
ee50: 74 75 70 47 65 74 46 69 65 6c 64 43 6f 75 6e 74 tupGetFieldCount
ee60: 28 50 49 4e 46 43 4f 4e 54 45 58 54 29 3b 0d 0a (PINFCONTEXT);..
ee70: 09 44 57 4f 52 44 20 53 65 74 75 70 47 65 74 46 .DWORD SetupGetF
ee80: 69 6c 65 43 6f 6d 70 72 65 73 73 69 6f 6e 49 6e ileCompressionIn
ee90: 66 6f 41 28 50 43 53 54 52 2c 20 50 53 54 52 2a foA(PCSTR, PSTR*
eea0: 2c 20 50 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 , PDWORD, PDWORD
eeb0: 2c 20 50 55 49 4e 54 29 3b 0d 0a 09 44 57 4f 52 , PUINT);...DWOR
eec0: 44 20 53 65 74 75 70 47 65 74 46 69 6c 65 43 6f D SetupGetFileCo
eed0: 6d 70 72 65 73 73 69 6f 6e 49 6e 66 6f 57 28 50 mpressionInfoW(P
eee0: 43 57 53 54 52 2c 20 50 57 53 54 52 2a 2c 20 50 CWSTR, PWSTR*, P
eef0: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 2c 20 50 DWORD, PDWORD, P
ef00: 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 UINT);...BOOL Se
ef10: 74 75 70 47 65 74 49 6e 66 46 69 6c 65 4c 69 73 tupGetInfFileLis
ef20: 74 41 28 50 43 53 54 52 2c 20 44 57 4f 52 44 2c tA(PCSTR, DWORD,
ef30: 20 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 PSTR, DWORD, PD
ef40: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
ef50: 74 75 70 47 65 74 49 6e 66 46 69 6c 65 4c 69 73 tupGetInfFileLis
ef60: 74 57 28 50 43 57 53 54 52 2c 20 44 57 4f 52 44 tW(PCWSTR, DWORD
ef70: 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 , PWSTR, DWORD,
ef80: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
ef90: 53 65 74 75 70 47 65 74 49 6e 66 49 6e 66 6f 72 SetupGetInfInfor
efa0: 6d 61 74 69 6f 6e 41 28 4c 50 43 56 4f 49 44 2c mationA(LPCVOID,
efb0: 20 44 57 4f 52 44 2c 20 50 53 50 5f 49 4e 46 5f DWORD, PSP_INF_
efc0: 49 4e 46 4f 52 4d 41 54 49 4f 4e 2c 20 44 57 4f INFORMATION, DWO
efd0: 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 RD, PDWORD);...B
efe0: 4f 4f 4c 20 53 65 74 75 70 47 65 74 49 6e 66 49 OOL SetupGetInfI
eff0: 6e 66 6f 72 6d 61 74 69 6f 6e 57 28 4c 50 43 56 nformationW(LPCV
f000: 4f 49 44 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f OID, DWORD, PSP_
f010: 49 4e 46 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2c INF_INFORMATION,
f020: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b DWORD, PDWORD);
f030: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 74 ...BOOL SetupGet
f040: 49 6e 74 46 69 65 6c 64 28 50 49 4e 46 43 4f 4e IntField(PINFCON
f050: 54 45 58 54 2c 20 44 57 4f 52 44 2c 20 50 49 4e TEXT, DWORD, PIN
f060: 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 T);...BOOL Setup
f070: 47 65 74 4c 69 6e 65 42 79 49 6e 64 65 78 41 28 GetLineByIndexA(
f080: 48 49 4e 46 2c 20 50 43 53 54 52 2c 20 44 57 4f HINF, PCSTR, DWO
f090: 52 44 2c 20 50 49 4e 46 43 4f 4e 54 45 58 54 29 RD, PINFCONTEXT)
f0a0: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 ;...BOOL SetupGe
f0b0: 74 4c 69 6e 65 42 79 49 6e 64 65 78 57 28 48 49 tLineByIndexW(HI
f0c0: 4e 46 2c 20 50 43 57 53 54 52 2c 20 44 57 4f 52 NF, PCWSTR, DWOR
f0d0: 44 2c 20 50 49 4e 46 43 4f 4e 54 45 58 54 29 3b D, PINFCONTEXT);
f0e0: 0d 0a 09 4c 4f 4e 47 20 53 65 74 75 70 47 65 74 ...LONG SetupGet
f0f0: 4c 69 6e 65 43 6f 75 6e 74 41 28 48 49 4e 46 2c LineCountA(HINF,
f100: 20 50 43 53 54 52 29 3b 0d 0a 09 4c 4f 4e 47 20 PCSTR);...LONG
f110: 53 65 74 75 70 47 65 74 4c 69 6e 65 43 6f 75 6e SetupGetLineCoun
f120: 74 57 28 48 49 4e 46 2c 20 50 43 57 53 54 52 29 tW(HINF, PCWSTR)
f130: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 ;...BOOL SetupGe
f140: 74 4c 69 6e 65 54 65 78 74 41 28 50 49 4e 46 43 tLineTextA(PINFC
f150: 4f 4e 54 45 58 54 2c 20 48 49 4e 46 2c 20 50 43 ONTEXT, HINF, PC
f160: 53 54 52 2c 20 50 43 53 54 52 2c 20 50 53 54 52 STR, PCSTR, PSTR
f170: 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 , DWORD, PDWORD)
f180: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 ;...BOOL SetupGe
f190: 74 4c 69 6e 65 54 65 78 74 57 28 50 49 4e 46 43 tLineTextW(PINFC
f1a0: 4f 4e 54 45 58 54 2c 20 48 49 4e 46 2c 20 50 43 ONTEXT, HINF, PC
f1b0: 57 53 54 52 2c 20 50 43 57 53 54 52 2c 20 50 57 WSTR, PCWSTR, PW
f1c0: 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f STR, DWORD, PDWO
f1d0: 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 RD);...BOOL Setu
f1e0: 70 47 65 74 4d 75 6c 74 69 53 7a 46 69 65 6c 64 pGetMultiSzField
f1f0: 41 28 50 49 4e 46 43 4f 4e 54 45 58 54 2c 20 44 A(PINFCONTEXT, D
f200: 57 4f 52 44 2c 20 50 53 54 52 2c 20 44 57 4f 52 WORD, PSTR, DWOR
f210: 44 2c 20 4c 50 44 57 4f 52 44 29 3b 0d 0a 09 42 D, LPDWORD);...B
f220: 4f 4f 4c 20 53 65 74 75 70 47 65 74 4d 75 6c 74 OOL SetupGetMult
f230: 69 53 7a 46 69 65 6c 64 57 28 50 49 4e 46 43 4f iSzFieldW(PINFCO
f240: 4e 54 45 58 54 2c 20 44 57 4f 52 44 2c 20 50 57 NTEXT, DWORD, PW
f250: 53 54 52 2c 20 44 57 4f 52 44 2c 20 4c 50 44 57 STR, DWORD, LPDW
f260: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ORD);...BOOL Set
f270: 75 70 47 65 74 53 6f 75 72 63 65 46 69 6c 65 4c upGetSourceFileL
f280: 6f 63 61 74 69 6f 6e 41 28 48 49 4e 46 2c 20 50 ocationA(HINF, P
f290: 49 4e 46 43 4f 4e 54 45 58 54 2c 20 50 43 53 54 INFCONTEXT, PCST
f2a0: 52 2c 20 50 55 49 4e 54 2c 20 50 53 54 52 2c 20 R, PUINT, PSTR,
f2b0: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d DWORD, PDWORD);.
f2c0: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 74 53 ..BOOL SetupGetS
f2d0: 6f 75 72 63 65 46 69 6c 65 4c 6f 63 61 74 69 6f ourceFileLocatio
f2e0: 6e 57 28 48 49 4e 46 2c 20 50 49 4e 46 43 4f 4e nW(HINF, PINFCON
f2f0: 54 45 58 54 2c 20 50 43 57 53 54 52 2c 20 50 55 TEXT, PCWSTR, PU
f300: 49 4e 54 2c 20 50 57 53 54 52 2c 20 44 57 4f 52 INT, PWSTR, DWOR
f310: 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f D, PDWORD);...BO
f320: 4f 4c 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 OL SetupGetSourc
f330: 65 46 69 6c 65 53 69 7a 65 41 28 48 49 4e 46 2c eFileSizeA(HINF,
f340: 20 50 49 4e 46 43 4f 4e 54 45 58 54 2c 20 50 43 PINFCONTEXT, PC
f350: 53 54 52 2c 20 50 43 53 54 52 2c 20 50 44 57 4f STR, PCSTR, PDWO
f360: 52 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f RD, UINT);...BOO
f370: 4c 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 65 L SetupGetSource
f380: 46 69 6c 65 53 69 7a 65 57 28 48 49 4e 46 2c 20 FileSizeW(HINF,
f390: 50 49 4e 46 43 4f 4e 54 45 58 54 2c 20 50 43 57 PINFCONTEXT, PCW
f3a0: 53 54 52 2c 20 50 43 57 53 54 52 2c 20 50 44 57 STR, PCWSTR, PDW
f3b0: 4f 52 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f ORD, UINT);...BO
f3c0: 4f 4c 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 OL SetupGetSourc
f3d0: 65 49 6e 66 6f 41 28 48 49 4e 46 2c 20 55 49 4e eInfoA(HINF, UIN
f3e0: 54 2c 20 55 49 4e 54 2c 20 50 53 54 52 2c 20 44 T, UINT, PSTR, D
f3f0: 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a WORD, PDWORD);..
f400: 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 74 53 6f .BOOL SetupGetSo
f410: 75 72 63 65 49 6e 66 6f 57 28 48 49 4e 46 2c 20 urceInfoW(HINF,
f420: 55 49 4e 54 2c 20 55 49 4e 54 2c 20 50 57 53 54 UINT, UINT, PWST
f430: 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 R, DWORD, PDWORD
f440: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 );...BOOL SetupG
f450: 65 74 53 74 72 69 6e 67 46 69 65 6c 64 41 28 50 etStringFieldA(P
f460: 49 4e 46 43 4f 4e 54 45 58 54 2c 20 44 57 4f 52 INFCONTEXT, DWOR
f470: 44 2c 20 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 D, PSTR, DWORD,
f480: 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 PDWORD);...BOOL
f490: 53 65 74 75 70 47 65 74 53 74 72 69 6e 67 46 69 SetupGetStringFi
f4a0: 65 6c 64 57 28 50 49 4e 46 43 4f 4e 54 45 58 54 eldW(PINFCONTEXT
f4b0: 2c 20 44 57 4f 52 44 2c 20 50 57 53 54 52 2c 20 , DWORD, PWSTR,
f4c0: 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d DWORD, PDWORD);.
f4d0: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 47 65 74 54 ..BOOL SetupGetT
f4e0: 61 72 67 65 74 50 61 74 68 41 28 48 49 4e 46 2c argetPathA(HINF,
f4f0: 20 50 49 4e 46 43 4f 4e 54 45 58 54 2c 20 50 43 PINFCONTEXT, PC
f500: 53 54 52 2c 20 50 53 54 52 2c 20 44 57 4f 52 44 STR, PSTR, DWORD
f510: 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f , PDWORD);...BOO
f520: 4c 20 53 65 74 75 70 47 65 74 54 61 72 67 65 74 L SetupGetTarget
f530: 50 61 74 68 57 28 48 49 4e 46 2c 20 50 49 4e 46 PathW(HINF, PINF
f540: 43 4f 4e 54 45 58 54 2c 20 50 43 57 53 54 52 2c CONTEXT, PCWSTR,
f550: 20 50 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PWSTR, DWORD, P
f560: 44 57 4f 52 44 29 3b 0d 0a 09 50 56 4f 49 44 20 DWORD);...PVOID
f570: 53 65 74 75 70 49 6e 69 74 44 65 66 61 75 6c 74 SetupInitDefault
f580: 51 75 65 75 65 43 61 6c 6c 62 61 63 6b 28 48 57 QueueCallback(HW
f590: 4e 44 29 3b 0d 0a 09 50 56 4f 49 44 20 53 65 74 ND);...PVOID Set
f5a0: 75 70 49 6e 69 74 44 65 66 61 75 6c 74 51 75 65 upInitDefaultQue
f5b0: 75 65 43 61 6c 6c 62 61 63 6b 45 78 28 48 57 4e ueCallbackEx(HWN
f5c0: 44 2c 20 48 57 4e 44 2c 20 55 49 4e 54 2c 20 44 D, HWND, UINT, D
f5d0: 57 4f 52 44 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 WORD, PVOID);...
f5e0: 48 53 50 46 49 4c 45 4c 4f 47 20 53 65 74 75 70 HSPFILELOG Setup
f5f0: 49 6e 69 74 69 61 6c 69 7a 65 46 69 6c 65 4c 6f InitializeFileLo
f600: 67 41 28 50 43 53 54 52 2c 20 44 57 4f 52 44 29 gA(PCSTR, DWORD)
f610: 3b 0d 0a 09 48 53 50 46 49 4c 45 4c 4f 47 20 53 ;...HSPFILELOG S
f620: 65 74 75 70 49 6e 69 74 69 61 6c 69 7a 65 46 69 etupInitializeFi
f630: 6c 65 4c 6f 67 57 28 50 43 57 53 54 52 2c 20 44 leLogW(PCWSTR, D
f640: 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
f650: 74 75 70 49 6e 73 74 61 6c 6c 46 69 6c 65 41 28 tupInstallFileA(
f660: 48 49 4e 46 2c 20 50 49 4e 46 43 4f 4e 54 45 58 HINF, PINFCONTEX
f670: 54 2c 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c T, PCSTR, PCSTR,
f680: 20 50 43 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PCSTR, DWORD, P
f690: 53 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 43 4b SP_FILE_CALLBACK
f6a0: 5f 41 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f _A, PVOID);...BO
f6b0: 4f 4c 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 46 OL SetupInstallF
f6c0: 69 6c 65 57 28 48 49 4e 46 2c 20 50 49 4e 46 43 ileW(HINF, PINFC
f6d0: 4f 4e 54 45 58 54 2c 20 50 43 57 53 54 52 2c 20 ONTEXT, PCWSTR,
f6e0: 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 2c 20 PCWSTR, PCWSTR,
f6f0: 44 57 4f 52 44 2c 20 50 53 50 5f 46 49 4c 45 5f DWORD, PSP_FILE_
f700: 43 41 4c 4c 42 41 43 4b 5f 57 2c 20 50 56 4f 49 CALLBACK_W, PVOI
f710: 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 D);...BOOL Setup
f720: 49 6e 73 74 61 6c 6c 46 69 6c 65 45 78 41 28 48 InstallFileExA(H
f730: 49 4e 46 2c 20 50 49 4e 46 43 4f 4e 54 45 58 54 INF, PINFCONTEXT
f740: 2c 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 , PCSTR, PCSTR,
f750: 50 43 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 53 PCSTR, DWORD, PS
f760: 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f P_FILE_CALLBACK_
f770: 41 2c 20 50 56 4f 49 44 2c 20 50 42 4f 4f 4c 29 A, PVOID, PBOOL)
f780: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 49 6e ;...BOOL SetupIn
f790: 73 74 61 6c 6c 46 69 6c 65 45 78 57 28 48 49 4e stallFileExW(HIN
f7a0: 46 2c 20 50 49 4e 46 43 4f 4e 54 45 58 54 2c 20 F, PINFCONTEXT,
f7b0: 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 2c 20 PCWSTR, PCWSTR,
f7c0: 50 43 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 PCWSTR, DWORD, P
f7d0: 53 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 43 4b SP_FILE_CALLBACK
f7e0: 5f 57 2c 20 50 56 4f 49 44 2c 20 50 42 4f 4f 4c _W, PVOID, PBOOL
f7f0: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 49 );...BOOL SetupI
f800: 6e 73 74 61 6c 6c 46 69 6c 65 73 46 72 6f 6d 49 nstallFilesFromI
f810: 6e 66 53 65 63 74 69 6f 6e 41 28 48 49 4e 46 2c nfSectionA(HINF,
f820: 20 48 49 4e 46 2c 20 48 53 50 46 49 4c 45 51 2c HINF, HSPFILEQ,
f830: 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 55 PCSTR, PCSTR, U
f840: 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 INT);...BOOL Set
f850: 75 70 49 6e 73 74 61 6c 6c 46 69 6c 65 73 46 72 upInstallFilesFr
f860: 6f 6d 49 6e 66 53 65 63 74 69 6f 6e 57 28 48 49 omInfSectionW(HI
f870: 4e 46 2c 20 48 49 4e 46 2c 20 48 53 50 46 49 4c NF, HINF, HSPFIL
f880: 45 51 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 EQ, PCWSTR, PCWS
f890: 54 52 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f TR, UINT);...BOO
f8a0: 4c 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 46 72 L SetupInstallFr
f8b0: 6f 6d 49 6e 66 53 65 63 74 69 6f 6e 41 28 48 57 omInfSectionA(HW
f8c0: 4e 44 2c 20 48 49 4e 46 2c 20 50 43 53 54 52 2c ND, HINF, PCSTR,
f8d0: 20 55 49 4e 54 2c 20 48 4b 45 59 2c 20 50 43 53 UINT, HKEY, PCS
f8e0: 54 52 2c 20 55 49 4e 54 2c 20 50 53 50 5f 46 49 TR, UINT, PSP_FI
f8f0: 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f 41 2c 20 50 LE_CALLBACK_A, P
f900: 56 4f 49 44 2c 20 48 44 45 56 49 4e 46 4f 2c 20 VOID, HDEVINFO,
f910: 50 53 50 5f 44 45 56 49 4e 46 4f 5f 44 41 54 41 PSP_DEVINFO_DATA
f920: 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 49 );...BOOL SetupI
f930: 6e 73 74 61 6c 6c 46 72 6f 6d 49 6e 66 53 65 63 nstallFromInfSec
f940: 74 69 6f 6e 57 28 48 57 4e 44 2c 20 48 49 4e 46 tionW(HWND, HINF
f950: 2c 20 50 43 57 53 54 52 2c 20 55 49 4e 54 2c 20 , PCWSTR, UINT,
f960: 48 4b 45 59 2c 20 50 43 57 53 54 52 2c 20 55 49 HKEY, PCWSTR, UI
f970: 4e 54 2c 20 50 53 50 5f 46 49 4c 45 5f 43 41 4c NT, PSP_FILE_CAL
f980: 4c 42 41 43 4b 5f 57 2c 20 50 56 4f 49 44 2c 20 LBACK_W, PVOID,
f990: 48 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 HDEVINFO, PSP_DE
f9a0: 56 49 4e 46 4f 5f 44 41 54 41 29 3b 0d 0a 09 42 VINFO_DATA);...B
f9b0: 4f 4f 4c 20 53 65 74 75 70 49 6e 73 74 61 6c 6c OOL SetupInstall
f9c0: 53 65 72 76 69 63 65 73 46 72 6f 6d 49 6e 66 53 ServicesFromInfS
f9d0: 65 63 74 69 6f 6e 41 28 48 49 4e 46 2c 20 50 43 ectionA(HINF, PC
f9e0: 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 STR, DWORD);...B
f9f0: 4f 4f 4c 20 53 65 74 75 70 49 6e 73 74 61 6c 6c OOL SetupInstall
fa00: 53 65 72 76 69 63 65 73 46 72 6f 6d 49 6e 66 53 ServicesFromInfS
fa10: 65 63 74 69 6f 6e 57 28 48 49 4e 46 2c 20 50 43 ectionW(HINF, PC
fa20: 57 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 WSTR, DWORD);...
fa30: 42 4f 4f 4c 20 53 65 74 75 70 49 6e 73 74 61 6c BOOL SetupInstal
fa40: 6c 53 65 72 76 69 63 65 73 46 72 6f 6d 49 6e 66 lServicesFromInf
fa50: 53 65 63 74 69 6f 6e 45 78 41 28 48 49 4e 46 2c SectionExA(HINF,
fa60: 20 50 43 53 54 52 2c 20 44 57 4f 52 44 2c 20 48 PCSTR, DWORD, H
fa70: 44 45 56 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 DEVINFO, PSP_DEV
fa80: 49 4e 46 4f 5f 44 41 54 41 2c 20 50 56 4f 49 44 INFO_DATA, PVOID
fa90: 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c , PVOID);...BOOL
faa0: 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 53 65 72 SetupInstallSer
fab0: 76 69 63 65 73 46 72 6f 6d 49 6e 66 53 65 63 74 vicesFromInfSect
fac0: 69 6f 6e 45 78 57 28 48 49 4e 46 2c 20 50 43 57 ionExW(HINF, PCW
fad0: 53 54 52 2c 20 44 57 4f 52 44 2c 20 48 44 45 56 STR, DWORD, HDEV
fae0: 49 4e 46 4f 2c 20 50 53 50 5f 44 45 56 49 4e 46 INFO, PSP_DEVINF
faf0: 4f 5f 44 41 54 41 2c 20 50 56 4f 49 44 2c 20 50 O_DATA, PVOID, P
fb00: 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 VOID);...BOOL Se
fb10: 74 75 70 49 74 65 72 61 74 65 43 61 62 69 6e 65 tupIterateCabine
fb20: 74 41 28 50 43 53 54 52 2c 20 44 57 4f 52 44 2c tA(PCSTR, DWORD,
fb30: 20 50 53 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 PSP_FILE_CALLBA
fb40: 43 4b 5f 41 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 CK_A, PVOID);...
fb50: 42 4f 4f 4c 20 53 65 74 75 70 49 74 65 72 61 74 BOOL SetupIterat
fb60: 65 43 61 62 69 6e 65 74 57 28 50 43 57 53 54 52 eCabinetW(PCWSTR
fb70: 2c 20 44 57 4f 52 44 2c 20 50 53 50 5f 46 49 4c , DWORD, PSP_FIL
fb80: 45 5f 43 41 4c 4c 42 41 43 4b 5f 57 2c 20 50 56 E_CALLBACK_W, PV
fb90: 4f 49 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 OID);...BOOL Set
fba0: 75 70 4c 6f 67 45 72 72 6f 72 41 28 4c 50 43 53 upLogErrorA(LPCS
fbb0: 54 52 2c 20 4c 6f 67 53 65 76 65 72 69 74 79 29 TR, LogSeverity)
fbc0: 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 4c 6f ;...BOOL SetupLo
fbd0: 67 45 72 72 6f 72 57 28 4c 50 43 57 53 54 52 2c gErrorW(LPCWSTR,
fbe0: 20 4c 6f 67 53 65 76 65 72 69 74 79 29 3b 0d 0a LogSeverity);..
fbf0: 09 42 4f 4f 4c 20 53 65 74 75 70 4c 6f 67 46 69 .BOOL SetupLogFi
fc00: 6c 65 41 28 48 53 50 46 49 4c 45 4c 4f 47 2c 20 leA(HSPFILELOG,
fc10: 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 43 PCSTR, PCSTR, PC
fc20: 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 43 53 54 STR, DWORD, PCST
fc30: 52 2c 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c R, PCSTR, PCSTR,
fc40: 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
fc50: 53 65 74 75 70 4c 6f 67 46 69 6c 65 57 28 48 53 SetupLogFileW(HS
fc60: 50 46 49 4c 45 4c 4f 47 2c 20 50 43 57 53 54 52 PFILELOG, PCWSTR
fc70: 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 , PCWSTR, PCWSTR
fc80: 2c 20 44 57 4f 52 44 2c 20 50 43 57 53 54 52 2c , DWORD, PCWSTR,
fc90: 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 2c PCWSTR, PCWSTR,
fca0: 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
fcb0: 53 65 74 75 70 4f 70 65 6e 41 70 70 65 6e 64 49 SetupOpenAppendI
fcc0: 6e 66 46 69 6c 65 41 28 50 43 53 54 52 2c 20 48 nfFileA(PCSTR, H
fcd0: 49 4e 46 2c 20 50 55 49 4e 54 29 3b 0d 0a 09 42 INF, PUINT);...B
fce0: 4f 4f 4c 20 53 65 74 75 70 4f 70 65 6e 41 70 70 OOL SetupOpenApp
fcf0: 65 6e 64 49 6e 66 46 69 6c 65 57 28 50 43 57 53 endInfFileW(PCWS
fd00: 54 52 2c 20 48 49 4e 46 2c 20 50 55 49 4e 54 29 TR, HINF, PUINT)
fd10: 3b 0d 0a 09 48 53 50 46 49 4c 45 51 20 53 65 74 ;...HSPFILEQ Set
fd20: 75 70 4f 70 65 6e 46 69 6c 65 51 75 65 75 65 28 upOpenFileQueue(
fd30: 29 3b 0d 0a 09 48 49 4e 46 20 53 65 74 75 70 4f );...HINF SetupO
fd40: 70 65 6e 49 6e 66 46 69 6c 65 41 28 50 43 53 54 penInfFileA(PCST
fd50: 52 2c 20 50 43 53 54 52 2c 20 44 57 4f 52 44 2c R, PCSTR, DWORD,
fd60: 20 50 55 49 4e 54 29 3b 0d 0a 09 48 49 4e 46 20 PUINT);...HINF
fd70: 53 65 74 75 70 4f 70 65 6e 49 6e 66 46 69 6c 65 SetupOpenInfFile
fd80: 57 28 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 W(PCWSTR, PCWSTR
fd90: 2c 20 44 57 4f 52 44 2c 20 50 55 49 4e 54 29 3b , DWORD, PUINT);
fda0: 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 4f 70 65 ...BOOL SetupOpe
fdb0: 6e 4c 6f 67 28 42 4f 4f 4c 29 3b 0d 0a 09 48 49 nLog(BOOL);...HI
fdc0: 4e 46 20 53 65 74 75 70 4f 70 65 6e 4d 61 73 74 NF SetupOpenMast
fdd0: 65 72 49 6e 66 28 29 3b 0d 0a 09 55 49 4e 54 20 erInf();...UINT
fde0: 53 65 74 75 70 50 72 6f 6d 70 74 46 6f 72 44 69 SetupPromptForDi
fdf0: 73 6b 41 28 48 57 4e 44 2c 20 50 43 53 54 52 2c skA(HWND, PCSTR,
fe00: 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 PCSTR, PCSTR, P
fe10: 43 53 54 52 2c 20 50 43 53 54 52 2c 20 44 57 4f CSTR, PCSTR, DWO
fe20: 52 44 2c 20 50 53 54 52 2c 20 44 57 4f 52 44 2c RD, PSTR, DWORD,
fe30: 20 50 44 57 4f 52 44 29 3b 0d 0a 09 55 49 4e 54 PDWORD);...UINT
fe40: 20 53 65 74 75 70 50 72 6f 6d 70 74 46 6f 72 44 SetupPromptForD
fe50: 69 73 6b 57 28 48 57 4e 44 2c 20 50 43 57 53 54 iskW(HWND, PCWST
fe60: 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 R, PCWSTR, PCWST
fe70: 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 R, PCWSTR, PCWST
fe80: 52 2c 20 44 57 4f 52 44 2c 20 50 57 53 54 52 2c R, DWORD, PWSTR,
fe90: 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b DWORD, PDWORD);
fea0: 0d 0a 09 49 4e 54 20 53 65 74 75 70 50 72 6f 6d ...INT SetupProm
feb0: 70 74 52 65 62 6f 6f 74 28 48 53 50 46 49 4c 45 ptReboot(HSPFILE
fec0: 51 2c 20 48 57 4e 44 2c 20 42 4f 4f 4c 29 3b 0d Q, HWND, BOOL);.
fed0: 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 72 ..BOOL SetupQuer
fee0: 79 41 28 44 57 4f 52 44 2c 20 50 43 53 54 52 2a yA(DWORD, PCSTR*
fef0: 2a 2c 20 50 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f *, PUINT);...BOO
ff00: 4c 20 53 65 74 75 70 51 75 65 72 79 57 28 44 57 L SetupQueryW(DW
ff10: 4f 52 44 2c 20 50 43 57 53 54 52 2a 2a 2c 20 50 ORD, PCWSTR**, P
ff20: 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 UINT);...BOOL Se
ff30: 74 75 70 51 75 65 72 79 44 72 69 76 65 73 49 6e tupQueryDrivesIn
ff40: 44 69 73 6b 53 70 61 63 65 4c 69 73 74 41 28 48 DiskSpaceListA(H
ff50: 44 53 4b 53 50 43 2c 20 50 53 54 52 2c 20 44 57 DSKSPC, PSTR, DW
ff60: 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 ORD, PDWORD);...
ff70: 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 72 79 44 BOOL SetupQueryD
ff80: 72 69 76 65 73 49 6e 44 69 73 6b 53 70 61 63 65 rivesInDiskSpace
ff90: 4c 69 73 74 57 28 48 44 53 4b 53 50 43 2c 20 50 ListW(HDSKSPC, P
ffa0: 57 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 57 WSTR, DWORD, PDW
ffb0: 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 ORD);...BOOL Set
ffc0: 75 70 51 75 65 72 79 46 69 6c 65 4c 6f 67 41 28 upQueryFileLogA(
ffd0: 48 53 50 46 49 4c 45 4c 4f 47 2c 20 50 43 53 54 HSPFILELOG, PCST
ffe0: 52 2c 20 50 43 53 54 52 2c 20 53 65 74 75 70 46 R, PCSTR, SetupF
fff0: 69 6c 65 4c 6f 67 49 6e 66 6f 2c 20 50 53 54 52 ileLogInfo, PSTR
10000 2c 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 , DWORD, PDWORD)
10010 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 ;...BOOL SetupQu
10020 65 72 79 46 69 6c 65 4c 6f 67 57 28 48 53 50 46 eryFileLogW(HSPF
10030 49 4c 45 4c 4f 47 2c 20 50 43 57 53 54 52 2c 20 ILELOG, PCWSTR,
10040 50 43 57 53 54 52 2c 20 53 65 74 75 70 46 69 6c PCWSTR, SetupFil
10050 65 4c 6f 67 49 6e 66 6f 2c 20 50 57 53 54 52 2c eLogInfo, PWSTR,
10060 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b DWORD, PDWORD);
10070 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 ...BOOL SetupQue
10080 72 79 49 6e 66 46 69 6c 65 49 6e 66 6f 72 6d 61 ryInfFileInforma
10090 74 69 6f 6e 41 28 50 53 50 5f 49 4e 46 5f 49 4e tionA(PSP_INF_IN
100a0 46 4f 52 4d 41 54 49 4f 4e 2c 20 55 49 4e 54 2c FORMATION, UINT,
100b0 20 50 53 54 52 2c 20 44 57 4f 52 44 2c 20 50 44 PSTR, DWORD, PD
100c0 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
100d0 74 75 70 51 75 65 72 79 49 6e 66 46 69 6c 65 49 tupQueryInfFileI
100e0 6e 66 6f 72 6d 61 74 69 6f 6e 57 28 50 53 50 5f nformationW(PSP_
100f0 49 4e 46 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2c INF_INFORMATION,
10100 20 55 49 4e 54 2c 20 50 57 53 54 52 2c 20 44 57 UINT, PWSTR, DW
10110 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a 09 ORD, PDWORD);...
10120 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 72 79 49 BOOL SetupQueryI
10130 6e 66 4f 72 69 67 69 6e 61 6c 46 69 6c 65 49 6e nfOriginalFileIn
10140 66 6f 72 6d 61 74 69 6f 6e 41 28 50 53 50 5f 49 formationA(PSP_I
10150 4e 46 5f 49 4e 46 4f 52 4d 41 54 49 4f 4e 2c 20 NF_INFORMATION,
10160 55 49 4e 54 2c 20 50 53 50 5f 41 4c 54 50 4c 41 UINT, PSP_ALTPLA
10170 54 46 4f 52 4d 5f 49 4e 46 4f 2c 20 50 53 50 5f TFORM_INFO, PSP_
10180 4f 52 49 47 49 4e 41 4c 5f 46 49 4c 45 5f 49 4e ORIGINAL_FILE_IN
10190 46 4f 5f 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 FO_A);...BOOL Se
101a0 74 75 70 51 75 65 72 79 49 6e 66 4f 72 69 67 69 tupQueryInfOrigi
101b0 6e 61 6c 46 69 6c 65 49 6e 66 6f 72 6d 61 74 69 nalFileInformati
101c0 6f 6e 57 28 50 53 50 5f 49 4e 46 5f 49 4e 46 4f onW(PSP_INF_INFO
101d0 52 4d 41 54 49 4f 4e 2c 20 55 49 4e 54 2c 20 50 RMATION, UINT, P
101e0 53 50 5f 41 4c 54 50 4c 41 54 46 4f 52 4d 5f 49 SP_ALTPLATFORM_I
101f0 4e 46 4f 2c 20 50 53 50 5f 4f 52 49 47 49 4e 41 NFO, PSP_ORIGINA
10200 4c 5f 46 49 4c 45 5f 49 4e 46 4f 5f 57 29 3b 0d L_FILE_INFO_W);.
10210 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 72 ..BOOL SetupQuer
10220 79 49 6e 66 56 65 72 73 69 6f 6e 49 6e 66 6f 72 yInfVersionInfor
10230 6d 61 74 69 6f 6e 41 28 50 53 50 5f 49 4e 46 5f mationA(PSP_INF_
10240 49 4e 46 4f 52 4d 41 54 49 4f 4e 2c 20 55 49 4e INFORMATION, UIN
10250 54 2c 20 50 53 54 52 2c 20 50 53 54 52 2c 20 44 T, PSTR, PSTR, D
10260 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b 0d 0a WORD, PDWORD);..
10270 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 72 79 .BOOL SetupQuery
10280 49 6e 66 56 65 72 73 69 6f 6e 49 6e 66 6f 72 6d InfVersionInform
10290 61 74 69 6f 6e 57 28 50 53 50 5f 49 4e 46 5f 49 ationW(PSP_INF_I
102a0 4e 46 4f 52 4d 41 54 49 4f 4e 2c 20 55 49 4e 54 NFORMATION, UINT
102b0 2c 20 50 43 57 53 54 52 2c 20 50 57 53 54 52 2c , PCWSTR, PWSTR,
102c0 20 44 57 4f 52 44 2c 20 50 44 57 4f 52 44 29 3b DWORD, PDWORD);
102d0 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 ...BOOL SetupQue
102e0 72 79 53 70 61 63 65 52 65 71 75 69 72 65 64 4f rySpaceRequiredO
102f0 6e 44 72 69 76 65 41 28 48 44 53 4b 53 50 43 2c nDriveA(HDSKSPC,
10300 20 50 43 53 54 52 2c 20 4c 4f 4e 47 4c 4f 4e 47 PCSTR, LONGLONG
10310 2a 2c 20 50 56 4f 49 44 2c 20 55 49 4e 54 29 3b *, PVOID, UINT);
10320 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 ...BOOL SetupQue
10330 72 79 53 70 61 63 65 52 65 71 75 69 72 65 64 4f rySpaceRequiredO
10340 6e 44 72 69 76 65 57 28 48 44 53 4b 53 50 43 2c nDriveW(HDSKSPC,
10350 20 50 43 57 53 54 52 2c 20 4c 4f 4e 47 4c 4f 4e PCWSTR, LONGLON
10360 47 2a 2c 20 50 56 4f 49 44 2c 20 55 49 4e 54 29 G*, PVOID, UINT)
10370 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 ;...BOOL SetupQu
10380 65 75 65 43 6f 70 79 41 28 48 53 50 46 49 4c 45 eueCopyA(HSPFILE
10390 51 2c 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c Q, PCSTR, PCSTR,
103a0 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 PCSTR, PCSTR, P
103b0 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 43 53 CSTR, PCSTR, PCS
103c0 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f TR, DWORD);...BO
103d0 4f 4c 20 53 65 74 75 70 51 75 65 75 65 43 6f 70 OL SetupQueueCop
103e0 79 57 28 48 53 50 46 49 4c 45 51 2c 20 50 43 57 yW(HSPFILEQ, PCW
103f0 53 54 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 STR, PCWSTR, PCW
10400 53 54 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 STR, PCWSTR, PCW
10410 53 54 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 STR, PCWSTR, PCW
10420 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 STR, DWORD);...B
10430 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 65 43 6f OOL SetupQueueCo
10440 70 79 49 6e 64 69 72 65 63 74 41 28 50 53 50 5f pyIndirectA(PSP_
10450 46 49 4c 45 5f 43 4f 50 59 5f 50 41 52 41 4d 53 FILE_COPY_PARAMS
10460 5f 41 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 _A);...BOOL Setu
10470 70 51 75 65 75 65 43 6f 70 79 49 6e 64 69 72 65 pQueueCopyIndire
10480 63 74 57 28 50 53 50 5f 46 49 4c 45 5f 43 4f 50 ctW(PSP_FILE_COP
10490 59 5f 50 41 52 41 4d 53 5f 57 29 3b 0d 0a 09 42 Y_PARAMS_W);...B
104a0 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 65 43 6f OOL SetupQueueCo
104b0 70 79 53 65 63 74 69 6f 6e 41 28 48 53 50 46 49 pySectionA(HSPFI
104c0 4c 45 51 2c 20 50 43 53 54 52 2c 20 48 49 4e 46 LEQ, PCSTR, HINF
104d0 2c 20 48 49 4e 46 2c 20 50 43 53 54 52 2c 20 44 , HINF, PCSTR, D
104e0 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
104f0 74 75 70 51 75 65 75 65 43 6f 70 79 53 65 63 74 tupQueueCopySect
10500 69 6f 6e 57 28 48 53 50 46 49 4c 45 51 2c 20 50 ionW(HSPFILEQ, P
10510 43 57 53 54 52 2c 20 48 49 4e 46 2c 20 48 49 4e CWSTR, HINF, HIN
10520 46 2c 20 50 43 57 53 54 52 2c 20 44 57 4f 52 44 F, PCWSTR, DWORD
10530 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 );...BOOL SetupQ
10540 75 65 75 65 44 65 66 61 75 6c 74 43 6f 70 79 41 ueueDefaultCopyA
10550 28 48 53 50 46 49 4c 45 51 2c 20 48 49 4e 46 2c (HSPFILEQ, HINF,
10560 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 PCSTR, PCSTR, P
10570 43 53 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 CSTR, DWORD);...
10580 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 65 44 BOOL SetupQueueD
10590 65 66 61 75 6c 74 43 6f 70 79 57 28 48 53 50 46 efaultCopyW(HSPF
105a0 49 4c 45 51 2c 20 48 49 4e 46 2c 20 50 43 57 53 ILEQ, HINF, PCWS
105b0 54 52 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 TR, PCWSTR, PCWS
105c0 54 52 2c 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f TR, DWORD);...BO
105d0 4f 4c 20 53 65 74 75 70 51 75 65 75 65 44 65 6c OL SetupQueueDel
105e0 65 74 65 41 28 48 53 50 46 49 4c 45 51 2c 20 50 eteA(HSPFILEQ, P
105f0 43 53 54 52 2c 20 50 43 53 54 52 29 3b 0d 0a 09 CSTR, PCSTR);...
10600 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 65 44 BOOL SetupQueueD
10610 65 6c 65 74 65 57 28 48 53 50 46 49 4c 45 51 2c eleteW(HSPFILEQ,
10620 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 29 PCWSTR, PCWSTR)
10630 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 ;...BOOL SetupQu
10640 65 75 65 44 65 6c 65 74 65 53 65 63 74 69 6f 6e eueDeleteSection
10650 41 28 48 53 50 46 49 4c 45 51 2c 20 48 49 4e 46 A(HSPFILEQ, HINF
10660 2c 20 48 49 4e 46 2c 20 50 43 53 54 52 29 3b 0d , HINF, PCSTR);.
10670 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 ..BOOL SetupQueu
10680 65 44 65 6c 65 74 65 53 65 63 74 69 6f 6e 57 28 eDeleteSectionW(
10690 48 53 50 46 49 4c 45 51 2c 20 48 49 4e 46 2c 20 HSPFILEQ, HINF,
106a0 48 49 4e 46 2c 20 50 43 57 53 54 52 29 3b 0d 0a HINF, PCWSTR);..
106b0 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 65 .BOOL SetupQueue
106c0 52 65 6e 61 6d 65 41 28 48 53 50 46 49 4c 45 51 RenameA(HSPFILEQ
106d0 2c 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 , PCSTR, PCSTR,
106e0 50 43 53 54 52 2c 20 50 43 53 54 52 29 3b 0d 0a PCSTR, PCSTR);..
106f0 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 75 65 .BOOL SetupQueue
10700 52 65 6e 61 6d 65 57 28 48 53 50 46 49 4c 45 51 RenameW(HSPFILEQ
10710 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 , PCWSTR, PCWSTR
10720 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 52 , PCWSTR, PCWSTR
10730 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 );...BOOL SetupQ
10740 75 65 75 65 52 65 6e 61 6d 65 53 65 63 74 69 6f ueueRenameSectio
10750 6e 41 28 48 53 50 46 49 4c 45 51 2c 20 48 49 4e nA(HSPFILEQ, HIN
10760 46 2c 20 48 49 4e 46 2c 20 50 43 53 54 52 29 3b F, HINF, PCSTR);
10770 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 51 75 65 ...BOOL SetupQue
10780 75 65 52 65 6e 61 6d 65 53 65 63 74 69 6f 6e 57 ueRenameSectionW
10790 28 48 53 50 46 49 4c 45 51 2c 20 48 49 4e 46 2c (HSPFILEQ, HINF,
107a0 20 48 49 4e 46 2c 20 50 43 57 53 54 52 29 3b 0d HINF, PCWSTR);.
107b0 0a 09 42 4f 4f 4c 20 53 65 74 75 70 52 65 6d 6f ..BOOL SetupRemo
107c0 76 65 46 69 6c 65 4c 6f 67 45 6e 74 72 79 41 28 veFileLogEntryA(
107d0 48 53 50 46 49 4c 45 4c 4f 47 2c 20 50 43 53 54 HSPFILELOG, PCST
107e0 52 2c 20 50 43 53 54 52 29 3b 0d 0a 09 42 4f 4f R, PCSTR);...BOO
107f0 4c 20 53 65 74 75 70 52 65 6d 6f 76 65 46 69 6c L SetupRemoveFil
10800 65 4c 6f 67 45 6e 74 72 79 57 28 48 53 50 46 49 eLogEntryW(HSPFI
10810 4c 45 4c 4f 47 2c 20 50 43 57 53 54 52 2c 20 50 LELOG, PCWSTR, P
10820 43 57 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 53 CWSTR);...BOOL S
10830 65 74 75 70 52 65 6d 6f 76 65 46 72 6f 6d 44 69 etupRemoveFromDi
10840 73 6b 53 70 61 63 65 4c 69 73 74 41 28 48 44 53 skSpaceListA(HDS
10850 4b 53 50 43 2c 20 50 43 53 54 52 2c 20 55 49 4e KSPC, PCSTR, UIN
10860 54 2c 20 50 56 4f 49 44 2c 20 55 49 4e 54 29 3b T, PVOID, UINT);
10870 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 52 65 6d ...BOOL SetupRem
10880 6f 76 65 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 oveFromDiskSpace
10890 4c 69 73 74 57 28 48 44 53 4b 53 50 43 2c 20 50 ListW(HDSKSPC, P
108a0 43 57 53 54 52 2c 20 55 49 4e 54 2c 20 50 56 4f CWSTR, UINT, PVO
108b0 49 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f ID, UINT);...BOO
108c0 4c 20 53 65 74 75 70 52 65 6d 6f 76 65 46 72 6f L SetupRemoveFro
108d0 6d 53 6f 75 72 63 65 4c 69 73 74 41 28 44 57 4f mSourceListA(DWO
108e0 52 44 2c 20 50 43 53 54 52 29 3b 0d 0a 09 42 4f RD, PCSTR);...BO
108f0 4f 4c 20 53 65 74 75 70 52 65 6d 6f 76 65 46 72 OL SetupRemoveFr
10900 6f 6d 53 6f 75 72 63 65 4c 69 73 74 57 28 44 57 omSourceListW(DW
10910 4f 52 44 2c 20 50 43 57 53 54 52 29 3b 0d 0a 09 ORD, PCWSTR);...
10920 42 4f 4f 4c 20 53 65 74 75 70 52 65 6d 6f 76 65 BOOL SetupRemove
10930 49 6e 73 74 61 6c 6c 53 65 63 74 69 6f 6e 46 72 InstallSectionFr
10940 6f 6d 44 69 73 6b 53 70 61 63 65 4c 69 73 74 41 omDiskSpaceListA
10950 28 48 44 53 4b 53 50 43 2c 20 48 49 4e 46 2c 20 (HDSKSPC, HINF,
10960 48 49 4e 46 2c 20 50 43 53 54 52 2c 20 50 56 4f HINF, PCSTR, PVO
10970 49 44 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f ID, UINT);...BOO
10980 4c 20 53 65 74 75 70 52 65 6d 6f 76 65 49 6e 73 L SetupRemoveIns
10990 74 61 6c 6c 53 65 63 74 69 6f 6e 46 72 6f 6d 44 tallSectionFromD
109a0 69 73 6b 53 70 61 63 65 4c 69 73 74 57 28 48 44 iskSpaceListW(HD
109b0 53 4b 53 50 43 2c 20 48 49 4e 46 2c 20 48 49 4e SKSPC, HINF, HIN
109c0 46 2c 20 50 43 57 53 54 52 2c 20 50 56 4f 49 44 F, PCWSTR, PVOID
109d0 2c 20 55 49 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 , UINT);...BOOL
109e0 53 65 74 75 70 52 65 6d 6f 76 65 53 65 63 74 69 SetupRemoveSecti
109f0 6f 6e 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c onFromDiskSpaceL
10a00 69 73 74 41 28 48 44 53 4b 53 50 43 2c 20 48 49 istA(HDSKSPC, HI
10a10 4e 46 2c 20 48 49 4e 46 2c 20 50 43 53 54 52 2c NF, HINF, PCSTR,
10a20 20 55 49 4e 54 2c 20 50 56 4f 49 44 2c 20 55 49 UINT, PVOID, UI
10a30 4e 54 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 NT);...BOOL Setu
10a40 70 52 65 6d 6f 76 65 53 65 63 74 69 6f 6e 46 72 pRemoveSectionFr
10a50 6f 6d 44 69 73 6b 53 70 61 63 65 4c 69 73 74 57 omDiskSpaceListW
10a60 28 48 44 53 4b 53 50 43 2c 20 48 49 4e 46 2c 20 (HDSKSPC, HINF,
10a70 48 49 4e 46 2c 20 50 43 57 53 54 52 2c 20 55 49 HINF, PCWSTR, UI
10a80 4e 54 2c 20 50 56 4f 49 44 2c 20 55 49 4e 54 29 NT, PVOID, UINT)
10a90 3b 0d 0a 09 55 49 4e 54 20 53 65 74 75 70 52 65 ;...UINT SetupRe
10aa0 6e 61 6d 65 45 72 72 6f 72 41 28 48 57 4e 44 2c nameErrorA(HWND,
10ab0 20 50 43 53 54 52 2c 20 50 43 53 54 52 2c 20 50 PCSTR, PCSTR, P
10ac0 43 53 54 52 2c 20 55 49 4e 54 2c 20 44 57 4f 52 CSTR, UINT, DWOR
10ad0 44 29 3b 0d 0a 09 55 49 4e 54 20 53 65 74 75 70 D);...UINT Setup
10ae0 52 65 6e 61 6d 65 45 72 72 6f 72 57 28 48 57 4e RenameErrorW(HWN
10af0 44 2c 20 50 43 57 53 54 52 2c 20 50 43 57 53 54 D, PCWSTR, PCWST
10b00 52 2c 20 50 43 57 53 54 52 2c 20 55 49 4e 54 2c R, PCWSTR, UINT,
10b10 20 44 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 DWORD);...BOOL
10b20 53 65 74 75 70 53 63 61 6e 46 69 6c 65 51 75 65 SetupScanFileQue
10b30 75 65 41 28 48 53 50 46 49 4c 45 51 2c 20 44 57 ueA(HSPFILEQ, DW
10b40 4f 52 44 2c 20 48 57 4e 44 2c 20 50 53 50 5f 46 ORD, HWND, PSP_F
10b50 49 4c 45 5f 43 41 4c 4c 42 41 43 4b 5f 41 2c 20 ILE_CALLBACK_A,
10b60 50 56 4f 49 44 2c 20 50 44 57 4f 52 44 29 3b 0d PVOID, PDWORD);.
10b70 0a 09 42 4f 4f 4c 20 53 65 74 75 70 53 63 61 6e ..BOOL SetupScan
10b80 46 69 6c 65 51 75 65 75 65 57 28 48 53 50 46 49 FileQueueW(HSPFI
10b90 4c 45 51 2c 20 44 57 4f 52 44 2c 20 48 57 4e 44 LEQ, DWORD, HWND
10ba0 2c 20 50 53 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 , PSP_FILE_CALLB
10bb0 41 43 4b 5f 57 2c 20 50 56 4f 49 44 2c 20 50 44 ACK_W, PVOID, PD
10bc0 57 4f 52 44 29 3b 0d 0a 09 42 4f 4f 4c 20 53 65 WORD);...BOOL Se
10bd0 74 75 70 53 65 74 44 69 72 65 63 74 6f 72 79 49 tupSetDirectoryI
10be0 64 41 28 48 49 4e 46 2c 20 44 57 4f 52 44 2c 20 dA(HINF, DWORD,
10bf0 50 43 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c 20 53 PCSTR);...BOOL S
10c00 65 74 75 70 53 65 74 44 69 72 65 63 74 6f 72 79 etupSetDirectory
10c10 49 64 57 28 48 49 4e 46 2c 20 44 57 4f 52 44 2c IdW(HINF, DWORD,
10c20 20 50 43 57 53 54 52 29 3b 0d 0a 09 42 4f 4f 4c PCWSTR);...BOOL
10c30 20 53 65 74 75 70 53 65 74 44 69 72 65 63 74 6f SetupSetDirecto
10c40 72 79 49 64 45 78 41 28 48 49 4e 46 2c 20 44 57 ryIdExA(HINF, DW
10c50 4f 52 44 2c 20 50 43 53 54 52 2c 20 44 57 4f 52 ORD, PCSTR, DWOR
10c60 44 2c 20 44 57 4f 52 44 2c 20 50 56 4f 49 44 29 D, DWORD, PVOID)
10c70 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 53 65 ;...BOOL SetupSe
10c80 74 44 69 72 65 63 74 6f 72 79 49 64 45 78 57 28 tDirectoryIdExW(
10c90 48 49 4e 46 2c 20 44 57 4f 52 44 2c 20 50 43 57 HINF, DWORD, PCW
10ca0 53 54 52 2c 20 44 57 4f 52 44 2c 20 44 57 4f 52 STR, DWORD, DWOR
10cb0 44 2c 20 50 56 4f 49 44 29 3b 0d 0a 09 42 4f 4f D, PVOID);...BOO
10cc0 4c 20 53 65 74 75 70 53 65 74 46 69 6c 65 51 75 L SetupSetFileQu
10cd0 65 75 65 41 6c 74 65 72 6e 61 74 65 50 6c 61 74 eueAlternatePlat
10ce0 66 6f 72 6d 41 28 48 53 50 46 49 4c 45 51 2c 20 formA(HSPFILEQ,
10cf0 50 53 50 5f 41 4c 54 50 4c 41 54 46 4f 52 4d 5f PSP_ALTPLATFORM_
10d00 49 4e 46 4f 2c 20 50 43 53 54 52 29 3b 0d 0a 09 INFO, PCSTR);...
10d10 42 4f 4f 4c 20 53 65 74 75 70 53 65 74 46 69 6c BOOL SetupSetFil
10d20 65 51 75 65 75 65 41 6c 74 65 72 6e 61 74 65 50 eQueueAlternateP
10d30 6c 61 74 66 6f 72 6d 57 28 48 53 50 46 49 4c 45 latformW(HSPFILE
10d40 51 2c 20 50 53 50 5f 41 4c 54 50 4c 41 54 46 4f Q, PSP_ALTPLATFO
10d50 52 4d 5f 49 4e 46 4f 2c 20 50 43 57 53 54 52 29 RM_INFO, PCWSTR)
10d60 3b 0d 0a 09 42 4f 4f 4c 20 53 65 74 75 70 53 65 ;...BOOL SetupSe
10d70 74 50 6c 61 74 66 6f 72 6d 50 61 74 68 4f 76 65 tPlatformPathOve
10d80 72 72 69 64 65 41 28 50 43 53 54 52 29 3b 0d 0a rrideA(PCSTR);..
10d90 09 42 4f 4f 4c 20 53 65 74 75 70 53 65 74 50 6c .BOOL SetupSetPl
10da0 61 74 66 6f 72 6d 50 61 74 68 4f 76 65 72 72 69 atformPathOverri
10db0 64 65 57 28 50 43 57 53 54 52 29 3b 0d 0a 09 42 deW(PCWSTR);...B
10dc0 4f 4f 4c 20 53 65 74 75 70 53 65 74 53 6f 75 72 OOL SetupSetSour
10dd0 63 65 4c 69 73 74 41 28 44 57 4f 52 44 2c 20 50 ceListA(DWORD, P
10de0 43 53 54 52 2a 2c 20 55 49 4e 54 29 3b 0d 0a 09 CSTR*, UINT);...
10df0 42 4f 4f 4c 20 53 65 74 75 70 53 65 74 53 6f 75 BOOL SetupSetSou
10e00 72 63 65 4c 69 73 74 57 28 44 57 4f 52 44 2c 20 rceListW(DWORD,
10e10 50 43 57 53 54 52 2a 2c 20 55 49 4e 54 29 3b 0d PCWSTR*, UINT);.
10e20 0a 09 56 4f 49 44 20 53 65 74 75 70 54 65 72 6d ..VOID SetupTerm
10e30 44 65 66 61 75 6c 74 51 75 65 75 65 43 61 6c 6c DefaultQueueCall
10e40 62 61 63 6b 28 50 56 4f 49 44 29 3b 0d 0a 09 42 back(PVOID);...B
10e50 4f 4f 4c 20 53 65 74 75 70 54 65 72 6d 69 6e 61 OOL SetupTermina
10e60 74 65 46 69 6c 65 4c 6f 67 28 48 53 50 46 49 4c teFileLog(HSPFIL
10e70 45 4c 4f 47 29 3b 0d 0a 7d 0d 0a 0d 0a 64 65 70 ELOG);..}....dep
10e80 72 65 63 61 74 65 64 20 7b 0d 0a 09 61 6c 69 61 recated {...alia
10e90 73 20 53 65 74 75 70 44 69 43 72 65 61 74 65 44 s SetupDiCreateD
10ea0 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 57 20 eviceInterfaceW
10eb0 53 65 74 75 70 44 69 43 72 65 61 74 65 49 6e 74 SetupDiCreateInt
10ec0 65 72 66 61 63 65 44 65 76 69 63 65 57 3b 0d 0a erfaceDeviceW;..
10ed0 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 43 72 .alias SetupDiCr
10ee0 65 61 74 65 44 65 76 69 63 65 49 6e 74 65 72 66 eateDeviceInterf
10ef0 61 63 65 52 65 67 4b 65 79 57 20 53 65 74 75 70 aceRegKeyW Setup
10f00 44 69 43 72 65 61 74 65 49 6e 74 65 72 66 61 63 DiCreateInterfac
10f10 65 44 65 76 69 63 65 52 65 67 4b 65 79 57 3b 0d eDeviceRegKeyW;.
10f20 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 4f ..alias SetupDiO
10f30 70 65 6e 44 65 76 69 63 65 49 6e 74 65 72 66 61 penDeviceInterfa
10f40 63 65 57 20 53 65 74 75 70 44 69 4f 70 65 6e 49 ceW SetupDiOpenI
10f50 6e 74 65 72 66 61 63 65 44 65 76 69 63 65 57 3b nterfaceDeviceW;
10f60 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 ...alias SetupDi
10f70 47 65 74 44 65 76 69 63 65 49 6e 74 65 72 66 61 GetDeviceInterfa
10f80 63 65 44 65 74 61 69 6c 57 20 53 65 74 75 70 44 ceDetailW SetupD
10f90 69 47 65 74 49 6e 74 65 72 66 61 63 65 44 65 76 iGetInterfaceDev
10fa0 69 63 65 44 65 74 61 69 6c 57 3b 0d 0a 09 61 6c iceDetailW;...al
10fb0 69 61 73 20 53 65 74 75 70 44 69 43 72 65 61 74 ias SetupDiCreat
10fc0 65 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 eDeviceInterface
10fd0 41 20 53 65 74 75 70 44 69 43 72 65 61 74 65 49 A SetupDiCreateI
10fe0 6e 74 65 72 66 61 63 65 44 65 76 69 63 65 41 3b nterfaceDeviceA;
10ff0 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 ...alias SetupDi
11000 43 72 65 61 74 65 44 65 76 69 63 65 49 6e 74 65 CreateDeviceInte
11010 72 66 61 63 65 52 65 67 4b 65 79 41 20 53 65 74 rfaceRegKeyA Set
11020 75 70 44 69 43 72 65 61 74 65 49 6e 74 65 72 66 upDiCreateInterf
11030 61 63 65 44 65 76 69 63 65 52 65 67 4b 65 79 41 aceDeviceRegKeyA
11040 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 ;...alias SetupD
11050 69 4f 70 65 6e 44 65 76 69 63 65 49 6e 74 65 72 iOpenDeviceInter
11060 66 61 63 65 41 20 53 65 74 75 70 44 69 4f 70 65 faceA SetupDiOpe
11070 6e 49 6e 74 65 72 66 61 63 65 44 65 76 69 63 65 nInterfaceDevice
11080 41 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 A;...alias Setup
11090 44 69 47 65 74 44 65 76 69 63 65 49 6e 74 65 72 DiGetDeviceInter
110a0 66 61 63 65 44 65 74 61 69 6c 41 20 53 65 74 75 faceDetailA Setu
110b0 70 44 69 47 65 74 49 6e 74 65 72 66 61 63 65 44 pDiGetInterfaceD
110c0 65 76 69 63 65 44 65 74 61 69 6c 41 3b 0d 0a 7d eviceDetailA;..}
110d0 0d 0a 0d 0a 76 65 72 73 69 6f 6e 20 28 55 6e 69 ....version (Uni
110e0 63 6f 64 65 29 20 7b 0d 0a 09 61 6c 69 61 73 20 code) {...alias
110f0 50 53 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 43 PSP_FILE_CALLBAC
11100 4b 5f 57 20 50 53 50 5f 46 49 4c 45 5f 43 41 4c K_W PSP_FILE_CAL
11110 4c 42 41 43 4b 3b 0d 0a 09 61 6c 69 61 73 20 53 LBACK;...alias S
11120 65 74 75 70 41 64 64 49 6e 73 74 61 6c 6c 53 65 etupAddInstallSe
11130 63 74 69 6f 6e 54 6f 44 69 73 6b 53 70 61 63 65 ctionToDiskSpace
11140 4c 69 73 74 57 20 53 65 74 75 70 41 64 64 49 6e ListW SetupAddIn
11150 73 74 61 6c 6c 53 65 63 74 69 6f 6e 54 6f 44 69 stallSectionToDi
11160 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d 0a 09 61 skSpaceList;...a
11170 6c 69 61 73 20 53 65 74 75 70 41 64 64 53 65 63 lias SetupAddSec
11180 74 69 6f 6e 54 6f 44 69 73 6b 53 70 61 63 65 4c tionToDiskSpaceL
11190 69 73 74 57 20 53 65 74 75 70 41 64 64 53 65 63 istW SetupAddSec
111a0 74 69 6f 6e 54 6f 44 69 73 6b 53 70 61 63 65 4c tionToDiskSpaceL
111b0 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ist;...alias Set
111c0 75 70 41 64 64 54 6f 44 69 73 6b 53 70 61 63 65 upAddToDiskSpace
111d0 4c 69 73 74 57 20 53 65 74 75 70 41 64 64 54 6f ListW SetupAddTo
111e0 44 69 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d 0a DiskSpaceList;..
111f0 09 61 6c 69 61 73 20 53 65 74 75 70 41 64 64 54 .alias SetupAddT
11200 6f 53 6f 75 72 63 65 4c 69 73 74 57 20 53 65 74 oSourceListW Set
11210 75 70 41 64 64 54 6f 53 6f 75 72 63 65 4c 69 73 upAddToSourceLis
11220 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 t;...alias Setup
11230 41 64 6a 75 73 74 44 69 73 6b 53 70 61 63 65 4c AdjustDiskSpaceL
11240 69 73 74 57 20 53 65 74 75 70 41 64 6a 75 73 74 istW SetupAdjust
11250 44 69 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d 0a DiskSpaceList;..
11260 09 61 6c 69 61 73 20 53 65 74 75 70 42 61 63 6b .alias SetupBack
11270 75 70 45 72 72 6f 72 57 20 53 65 74 75 70 42 61 upErrorW SetupBa
11280 63 6b 75 70 45 72 72 6f 72 3b 0d 0a 09 61 6c 69 ckupError;...ali
11290 61 73 20 53 65 74 75 70 43 6f 6d 6d 69 74 46 69 as SetupCommitFi
112a0 6c 65 51 75 65 75 65 57 20 53 65 74 75 70 43 6f leQueueW SetupCo
112b0 6d 6d 69 74 46 69 6c 65 51 75 65 75 65 3b 0d 0a mmitFileQueue;..
112c0 09 61 6c 69 61 73 20 53 65 74 75 70 43 6f 70 79 .alias SetupCopy
112d0 45 72 72 6f 72 57 20 53 65 74 75 70 43 6f 70 79 ErrorW SetupCopy
112e0 45 72 72 6f 72 3b 0d 0a 09 61 6c 69 61 73 20 53 Error;...alias S
112f0 65 74 75 70 43 6f 70 79 4f 45 4d 49 6e 66 57 20 etupCopyOEMInfW
11300 53 65 74 75 70 43 6f 70 79 4f 45 4d 49 6e 66 3b SetupCopyOEMInf;
11310 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 43 72 ...alias SetupCr
11320 65 61 74 65 44 69 73 6b 53 70 61 63 65 4c 69 73 eateDiskSpaceLis
11330 74 57 20 53 65 74 75 70 43 72 65 61 74 65 44 69 tW SetupCreateDi
11340 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d 0a 09 61 skSpaceList;...a
11350 6c 69 61 73 20 53 65 74 75 70 44 65 63 6f 6d 70 lias SetupDecomp
11360 72 65 73 73 4f 72 43 6f 70 79 46 69 6c 65 57 20 ressOrCopyFileW
11370 53 65 74 75 70 44 65 63 6f 6d 70 72 65 73 73 4f SetupDecompressO
11380 72 43 6f 70 79 46 69 6c 65 3b 0d 0a 09 61 6c 69 rCopyFile;...ali
11390 61 73 20 53 65 74 75 70 44 65 66 61 75 6c 74 51 as SetupDefaultQ
113a0 75 65 75 65 43 61 6c 6c 62 61 63 6b 57 20 53 65 ueueCallbackW Se
113b0 74 75 70 44 65 66 61 75 6c 74 51 75 65 75 65 43 tupDefaultQueueC
113c0 61 6c 6c 62 61 63 6b 3b 0d 0a 09 61 6c 69 61 73 allback;...alias
113d0 20 53 65 74 75 70 44 65 6c 65 74 65 45 72 72 6f SetupDeleteErro
113e0 72 57 20 53 65 74 75 70 44 65 6c 65 74 65 45 72 rW SetupDeleteEr
113f0 72 6f 72 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ror;...alias Set
11400 75 70 44 69 42 75 69 6c 64 43 6c 61 73 73 49 6e upDiBuildClassIn
11410 66 6f 4c 69 73 74 45 78 57 20 53 65 74 75 70 44 foListExW SetupD
11420 69 42 75 69 6c 64 43 6c 61 73 73 49 6e 66 6f 4c iBuildClassInfoL
11430 69 73 74 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 istEx;...alias S
11440 65 74 75 70 44 69 43 6c 61 73 73 47 75 69 64 73 etupDiClassGuids
11450 46 72 6f 6d 4e 61 6d 65 45 78 57 20 53 65 74 75 FromNameExW Setu
11460 70 44 69 43 6c 61 73 73 47 75 69 64 73 46 72 6f pDiClassGuidsFro
11470 6d 4e 61 6d 65 45 78 3b 0d 0a 09 61 6c 69 61 73 mNameEx;...alias
11480 20 53 65 74 75 70 44 69 43 6c 61 73 73 47 75 69 SetupDiClassGui
11490 64 73 46 72 6f 6d 4e 61 6d 65 57 20 53 65 74 75 dsFromNameW Setu
114a0 70 44 69 43 6c 61 73 73 47 75 69 64 73 46 72 6f pDiClassGuidsFro
114b0 6d 4e 61 6d 65 3b 0d 0a 09 61 6c 69 61 73 20 53 mName;...alias S
114c0 65 74 75 70 44 69 43 6c 61 73 73 4e 61 6d 65 46 etupDiClassNameF
114d0 72 6f 6d 47 75 69 64 45 78 57 20 53 65 74 75 70 romGuidExW Setup
114e0 44 69 43 6c 61 73 73 4e 61 6d 65 46 72 6f 6d 47 DiClassNameFromG
114f0 75 69 64 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 uidEx;...alias S
11500 65 74 75 70 44 69 43 6c 61 73 73 4e 61 6d 65 46 etupDiClassNameF
11510 72 6f 6d 47 75 69 64 57 20 53 65 74 75 70 44 69 romGuidW SetupDi
11520 43 6c 61 73 73 4e 61 6d 65 46 72 6f 6d 47 75 69 ClassNameFromGui
11530 64 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 d;...alias Setup
11540 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e DiCreateDeviceIn
11550 66 6f 4c 69 73 74 45 78 57 20 53 65 74 75 70 44 foListExW SetupD
11560 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e 66 iCreateDeviceInf
11570 6f 4c 69 73 74 45 78 3b 0d 0a 09 61 6c 69 61 73 oListEx;...alias
11580 20 53 65 74 75 70 44 69 43 72 65 61 74 65 44 65 SetupDiCreateDe
11590 76 69 63 65 49 6e 66 6f 57 20 53 65 74 75 70 44 viceInfoW SetupD
115a0 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e 66 iCreateDeviceInf
115b0 6f 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 o;...alias Setup
115c0 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e DiCreateDeviceIn
115d0 74 65 72 66 61 63 65 52 65 67 4b 65 79 57 20 53 terfaceRegKeyW S
115e0 65 74 75 70 44 69 43 72 65 61 74 65 44 65 76 69 etupDiCreateDevi
115f0 63 65 49 6e 74 65 72 66 61 63 65 52 65 67 4b 65 ceInterfaceRegKe
11600 79 3b 0d 0a 09 64 65 70 72 65 63 61 74 65 64 20 y;...deprecated
11610 61 6c 69 61 73 20 53 65 74 75 70 44 69 43 72 65 alias SetupDiCre
11620 61 74 65 44 65 76 69 63 65 49 6e 74 65 72 66 61 ateDeviceInterfa
11630 63 65 52 65 67 4b 65 79 57 20 53 65 74 75 70 44 ceRegKeyW SetupD
11640 69 43 72 65 61 74 65 49 6e 74 65 72 66 61 63 65 iCreateInterface
11650 44 65 76 69 63 65 52 65 67 4b 65 79 3b 0d 0a 09 DeviceRegKey;...
11660 61 6c 69 61 73 20 53 65 74 75 70 44 69 43 72 65 alias SetupDiCre
11670 61 74 65 44 65 76 69 63 65 49 6e 74 65 72 66 61 ateDeviceInterfa
11680 63 65 57 20 53 65 74 75 70 44 69 43 72 65 61 74 ceW SetupDiCreat
11690 65 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 eDeviceInterface
116a0 3b 0d 0a 09 64 65 70 72 65 63 61 74 65 64 20 61 ;...deprecated a
116b0 6c 69 61 73 20 53 65 74 75 70 44 69 43 72 65 61 lias SetupDiCrea
116c0 74 65 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 teDeviceInterfac
116d0 65 57 20 53 65 74 75 70 44 69 43 72 65 61 74 65 eW SetupDiCreate
116e0 49 6e 74 65 72 66 61 63 65 44 65 76 69 63 65 3b InterfaceDevice;
116f0 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 ...alias SetupDi
11700 43 72 65 61 74 65 44 65 76 52 65 67 4b 65 79 57 CreateDevRegKeyW
11710 20 53 65 74 75 70 44 69 43 72 65 61 74 65 44 65 SetupDiCreateDe
11720 76 52 65 67 4b 65 79 3b 0d 0a 09 61 6c 69 61 73 vRegKey;...alias
11730 20 53 65 74 75 70 44 69 45 6e 75 6d 44 72 69 76 SetupDiEnumDriv
11740 65 72 49 6e 66 6f 57 20 53 65 74 75 70 44 69 45 erInfoW SetupDiE
11750 6e 75 6d 44 72 69 76 65 72 49 6e 66 6f 3b 0d 0a numDriverInfo;..
11760 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
11770 74 41 63 74 75 61 6c 53 65 63 74 69 6f 6e 54 6f tActualSectionTo
11780 49 6e 73 74 61 6c 6c 57 20 53 65 74 75 70 44 69 InstallW SetupDi
11790 47 65 74 41 63 74 75 61 6c 53 65 63 74 69 6f 6e GetActualSection
117a0 54 6f 49 6e 73 74 61 6c 6c 3b 0d 0a 09 61 6c 69 ToInstall;...ali
117b0 61 73 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 as SetupDiGetCla
117c0 73 73 44 65 73 63 72 69 70 74 69 6f 6e 45 78 57 ssDescriptionExW
117d0 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 SetupDiGetClass
117e0 44 65 73 63 72 69 70 74 69 6f 6e 45 78 3b 0d 0a DescriptionEx;..
117f0 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
11800 74 43 6c 61 73 73 44 65 73 63 72 69 70 74 69 6f tClassDescriptio
11810 6e 57 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 nW SetupDiGetCla
11820 73 73 44 65 73 63 72 69 70 74 69 6f 6e 3b 0d 0a ssDescription;..
11830 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
11840 74 43 6c 61 73 73 44 65 76 50 72 6f 70 65 72 74 tClassDevPropert
11850 79 53 68 65 65 74 73 57 20 53 65 74 75 70 44 69 ySheetsW SetupDi
11860 47 65 74 43 6c 61 73 73 44 65 76 50 72 6f 70 65 GetClassDevPrope
11870 72 74 79 53 68 65 65 74 73 3b 0d 0a 09 61 6c 69 rtySheets;...ali
11880 61 73 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 as SetupDiGetCla
11890 73 73 44 65 76 73 45 78 57 20 53 65 74 75 70 44 ssDevsExW SetupD
118a0 69 47 65 74 43 6c 61 73 73 44 65 76 73 45 78 3b iGetClassDevsEx;
118b0 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 ...alias SetupDi
118c0 47 65 74 43 6c 61 73 73 44 65 76 73 57 20 53 65 GetClassDevsW Se
118d0 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 65 76 tupDiGetClassDev
118e0 73 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 s;...alias Setup
118f0 44 69 47 65 74 43 6c 61 73 73 49 6d 61 67 65 4c DiGetClassImageL
11900 69 73 74 45 78 57 20 53 65 74 75 70 44 69 47 65 istExW SetupDiGe
11910 74 43 6c 61 73 73 49 6d 61 67 65 4c 69 73 74 45 tClassImageListE
11920 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 x;...alias Setup
11930 44 69 47 65 74 43 6c 61 73 73 49 6e 73 74 61 6c DiGetClassInstal
11940 6c 50 61 72 61 6d 73 57 20 53 65 74 75 70 44 69 lParamsW SetupDi
11950 47 65 74 43 6c 61 73 73 49 6e 73 74 61 6c 6c 50 GetClassInstallP
11960 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 61 73 20 53 arams;...alias S
11970 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 52 65 etupDiGetClassRe
11980 67 69 73 74 72 79 50 72 6f 70 65 72 74 79 57 20 gistryPropertyW
11990 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 52 SetupDiGetClassR
119a0 65 67 69 73 74 72 79 50 72 6f 70 65 72 74 79 3b egistryProperty;
119b0 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 ...alias SetupDi
119c0 47 65 74 44 65 76 69 63 65 49 6e 66 6f 4c 69 73 GetDeviceInfoLis
119d0 74 44 65 74 61 69 6c 57 20 53 65 74 75 70 44 69 tDetailW SetupDi
119e0 47 65 74 44 65 76 69 63 65 49 6e 66 6f 4c 69 73 GetDeviceInfoLis
119f0 74 44 65 74 61 69 6c 3b 0d 0a 09 61 6c 69 61 73 tDetail;...alias
11a00 20 53 65 74 75 70 44 69 47 65 74 44 65 76 69 63 SetupDiGetDevic
11a10 65 49 6e 73 74 61 6c 6c 50 61 72 61 6d 73 57 20 eInstallParamsW
11a20 53 65 74 75 70 44 69 47 65 74 44 65 76 69 63 65 SetupDiGetDevice
11a30 49 6e 73 74 61 6c 6c 50 61 72 61 6d 73 3b 0d 0a InstallParams;..
11a40 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
11a50 74 44 65 76 69 63 65 49 6e 73 74 61 6e 63 65 49 tDeviceInstanceI
11a60 64 57 20 53 65 74 75 70 44 69 47 65 74 44 65 76 dW SetupDiGetDev
11a70 69 63 65 49 6e 73 74 61 6e 63 65 49 64 3b 0d 0a iceInstanceId;..
11a80 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
11a90 74 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 tDeviceInterface
11aa0 44 65 74 61 69 6c 57 20 53 65 74 75 70 44 69 47 DetailW SetupDiG
11ab0 65 74 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 etDeviceInterfac
11ac0 65 44 65 74 61 69 6c 3b 0d 0a 09 64 65 70 72 65 eDetail;...depre
11ad0 63 61 74 65 64 20 61 6c 69 61 73 20 53 65 74 75 cated alias Setu
11ae0 70 44 69 47 65 74 44 65 76 69 63 65 49 6e 74 65 pDiGetDeviceInte
11af0 72 66 61 63 65 44 65 74 61 69 6c 57 20 53 65 74 rfaceDetailW Set
11b00 75 70 44 69 47 65 74 49 6e 74 65 72 66 61 63 65 upDiGetInterface
11b10 44 65 76 69 63 65 44 65 74 61 69 6c 3b 0d 0a 09 DeviceDetail;...
11b20 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 74 alias SetupDiGet
11b30 44 65 76 69 63 65 52 65 67 69 73 74 72 79 50 72 DeviceRegistryPr
11b40 6f 70 65 72 74 79 57 20 53 65 74 75 70 44 69 47 opertyW SetupDiG
11b50 65 74 44 65 76 69 63 65 52 65 67 69 73 74 72 79 etDeviceRegistry
11b60 50 72 6f 70 65 72 74 79 3b 0d 0a 09 61 6c 69 61 Property;...alia
11b70 73 20 53 65 74 75 70 44 69 47 65 74 44 72 69 76 s SetupDiGetDriv
11b80 65 72 49 6e 66 6f 44 65 74 61 69 6c 57 20 53 65 erInfoDetailW Se
11b90 74 75 70 44 69 47 65 74 44 72 69 76 65 72 49 6e tupDiGetDriverIn
11ba0 66 6f 44 65 74 61 69 6c 3b 0d 0a 09 61 6c 69 61 foDetail;...alia
11bb0 73 20 53 65 74 75 70 44 69 47 65 74 44 72 69 76 s SetupDiGetDriv
11bc0 65 72 49 6e 73 74 61 6c 6c 50 61 72 61 6d 73 57 erInstallParamsW
11bd0 20 53 65 74 75 70 44 69 47 65 74 44 72 69 76 65 SetupDiGetDrive
11be0 72 49 6e 73 74 61 6c 6c 50 61 72 61 6d 73 3b 0d rInstallParams;.
11bf0 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 ..alias SetupDiG
11c00 65 74 48 77 50 72 6f 66 69 6c 65 46 72 69 65 6e etHwProfileFrien
11c10 64 6c 79 4e 61 6d 65 45 78 57 20 53 65 74 75 70 dlyNameExW Setup
11c20 44 69 47 65 74 48 77 50 72 6f 66 69 6c 65 46 72 DiGetHwProfileFr
11c30 69 65 6e 64 6c 79 4e 61 6d 65 45 78 3b 0d 0a 09 iendlyNameEx;...
11c40 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 74 alias SetupDiGet
11c50 48 77 50 72 6f 66 69 6c 65 46 72 69 65 6e 64 6c HwProfileFriendl
11c60 79 4e 61 6d 65 57 20 53 65 74 75 70 44 69 47 65 yNameW SetupDiGe
11c70 74 48 77 50 72 6f 66 69 6c 65 46 72 69 65 6e 64 tHwProfileFriend
11c80 6c 79 4e 61 6d 65 3b 0d 0a 09 61 6c 69 61 73 20 lyName;...alias
11c90 53 65 74 75 70 44 69 47 65 74 48 77 50 72 6f 66 SetupDiGetHwProf
11ca0 69 6c 65 4c 69 73 74 45 78 57 20 53 65 74 75 70 ileListExW Setup
11cb0 44 69 47 65 74 48 77 50 72 6f 66 69 6c 65 4c 69 DiGetHwProfileLi
11cc0 73 74 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 stEx;...alias Se
11cd0 74 75 70 44 69 47 65 74 49 4e 46 43 6c 61 73 73 tupDiGetINFClass
11ce0 57 20 53 65 74 75 70 44 69 47 65 74 49 4e 46 43 W SetupDiGetINFC
11cf0 6c 61 73 73 3b 0d 0a 09 61 6c 69 61 73 20 53 65 lass;...alias Se
11d00 74 75 70 44 69 47 65 74 53 65 6c 65 63 74 65 64 tupDiGetSelected
11d10 44 72 69 76 65 72 57 20 53 65 74 75 70 44 69 47 DriverW SetupDiG
11d20 65 74 53 65 6c 65 63 74 65 64 44 72 69 76 65 72 etSelectedDriver
11d30 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 ;...alias SetupD
11d40 69 49 6e 73 74 61 6c 6c 43 6c 61 73 73 45 78 57 iInstallClassExW
11d50 20 53 65 74 75 70 44 69 49 6e 73 74 61 6c 6c 43 SetupDiInstallC
11d60 6c 61 73 73 45 78 3b 0d 0a 09 61 6c 69 61 73 20 lassEx;...alias
11d70 53 65 74 75 70 44 69 49 6e 73 74 61 6c 6c 43 6c SetupDiInstallCl
11d80 61 73 73 57 20 53 65 74 75 70 44 69 49 6e 73 74 assW SetupDiInst
11d90 61 6c 6c 43 6c 61 73 73 3b 0d 0a 09 61 6c 69 61 allClass;...alia
11da0 73 20 53 65 74 75 70 44 69 4f 70 65 6e 43 6c 61 s SetupDiOpenCla
11db0 73 73 52 65 67 4b 65 79 45 78 57 20 53 65 74 75 ssRegKeyExW Setu
11dc0 70 44 69 4f 70 65 6e 43 6c 61 73 73 52 65 67 4b pDiOpenClassRegK
11dd0 65 79 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 eyEx;...alias Se
11de0 74 75 70 44 69 4f 70 65 6e 44 65 76 69 63 65 49 tupDiOpenDeviceI
11df0 6e 66 6f 57 20 53 65 74 75 70 44 69 4f 70 65 6e nfoW SetupDiOpen
11e00 44 65 76 69 63 65 49 6e 66 6f 3b 0d 0a 09 61 6c DeviceInfo;...al
11e10 69 61 73 20 53 65 74 75 70 44 69 4f 70 65 6e 44 ias SetupDiOpenD
11e20 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 57 20 eviceInterfaceW
11e30 53 65 74 75 70 44 69 4f 70 65 6e 44 65 76 69 63 SetupDiOpenDevic
11e40 65 49 6e 74 65 72 66 61 63 65 3b 0d 0a 09 64 65 eInterface;...de
11e50 70 72 65 63 61 74 65 64 20 61 6c 69 61 73 20 53 precated alias S
11e60 65 74 75 70 44 69 4f 70 65 6e 44 65 76 69 63 65 etupDiOpenDevice
11e70 49 6e 74 65 72 66 61 63 65 57 20 53 65 74 75 70 InterfaceW Setup
11e80 44 69 4f 70 65 6e 49 6e 74 65 72 66 61 63 65 44 DiOpenInterfaceD
11e90 65 76 69 63 65 3b 0d 0a 09 61 6c 69 61 73 20 53 evice;...alias S
11ea0 65 74 75 70 44 69 53 65 74 43 6c 61 73 73 49 6e etupDiSetClassIn
11eb0 73 74 61 6c 6c 50 61 72 61 6d 73 57 20 53 65 74 stallParamsW Set
11ec0 75 70 44 69 53 65 74 43 6c 61 73 73 49 6e 73 74 upDiSetClassInst
11ed0 61 6c 6c 50 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 allParams;...ali
11ee0 61 73 20 53 65 74 75 70 44 69 53 65 74 43 6c 61 as SetupDiSetCla
11ef0 73 73 52 65 67 69 73 74 72 79 50 72 6f 70 65 72 ssRegistryProper
11f00 74 79 57 20 53 65 74 75 70 44 69 53 65 74 43 6c tyW SetupDiSetCl
11f10 61 73 73 52 65 67 69 73 74 72 79 50 72 6f 70 65 assRegistryPrope
11f20 72 74 79 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 rty;...alias Set
11f30 75 70 44 69 53 65 74 44 65 76 69 63 65 49 6e 73 upDiSetDeviceIns
11f40 74 61 6c 6c 50 61 72 61 6d 73 57 20 53 65 74 75 tallParamsW Setu
11f50 70 44 69 53 65 74 44 65 76 69 63 65 49 6e 73 74 pDiSetDeviceInst
11f60 61 6c 6c 50 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 allParams;...ali
11f70 61 73 20 53 65 74 75 70 44 69 53 65 74 44 65 76 as SetupDiSetDev
11f80 69 63 65 52 65 67 69 73 74 72 79 50 72 6f 70 65 iceRegistryPrope
11f90 72 74 79 57 20 53 65 74 75 70 44 69 53 65 74 44 rtyW SetupDiSetD
11fa0 65 76 69 63 65 52 65 67 69 73 74 72 79 50 72 6f eviceRegistryPro
11fb0 70 65 72 74 79 3b 0d 0a 09 61 6c 69 61 73 20 53 perty;...alias S
11fc0 65 74 75 70 44 69 53 65 74 44 72 69 76 65 72 49 etupDiSetDriverI
11fd0 6e 73 74 61 6c 6c 50 61 72 61 6d 73 57 20 53 65 nstallParamsW Se
11fe0 74 75 70 44 69 53 65 74 44 72 69 76 65 72 49 6e tupDiSetDriverIn
11ff0 73 74 61 6c 6c 50 61 72 61 6d 73 3b 0d 0a 09 61 stallParams;...a
12000 6c 69 61 73 20 53 65 74 75 70 44 69 53 65 74 53 lias SetupDiSetS
12010 65 6c 65 63 74 65 64 44 72 69 76 65 72 57 20 53 electedDriverW S
12020 65 74 75 70 44 69 53 65 74 53 65 6c 65 63 74 65 etupDiSetSelecte
12030 64 44 72 69 76 65 72 3b 0d 0a 09 61 6c 69 61 73 dDriver;...alias
12040 20 53 65 74 75 70 44 75 70 6c 69 63 61 74 65 44 SetupDuplicateD
12050 69 73 6b 53 70 61 63 65 4c 69 73 74 57 20 53 65 iskSpaceListW Se
12060 74 75 70 44 75 70 6c 69 63 61 74 65 44 69 73 6b tupDuplicateDisk
12070 53 70 61 63 65 4c 69 73 74 3b 0d 0a 09 61 6c 69 SpaceList;...ali
12080 61 73 20 53 65 74 75 70 46 69 6e 64 46 69 72 73 as SetupFindFirs
12090 74 4c 69 6e 65 57 20 53 65 74 75 70 46 69 6e 64 tLineW SetupFind
120a0 46 69 72 73 74 4c 69 6e 65 3b 0d 0a 09 61 6c 69 FirstLine;...ali
120b0 61 73 20 53 65 74 75 70 46 69 6e 64 4e 65 78 74 as SetupFindNext
120c0 4d 61 74 63 68 4c 69 6e 65 57 20 53 65 74 75 70 MatchLineW Setup
120d0 46 69 6e 64 4e 65 78 74 4d 61 74 63 68 4c 69 6e FindNextMatchLin
120e0 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 e;...alias Setup
120f0 46 72 65 65 53 6f 75 72 63 65 4c 69 73 74 57 20 FreeSourceListW
12100 53 65 74 75 70 46 72 65 65 53 6f 75 72 63 65 4c SetupFreeSourceL
12110 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ist;...alias Set
12120 75 70 47 65 74 42 61 63 6b 75 70 49 6e 66 6f 72 upGetBackupInfor
12130 6d 61 74 69 6f 6e 57 20 53 65 74 75 70 47 65 74 mationW SetupGet
12140 42 61 63 6b 75 70 49 6e 66 6f 72 6d 61 74 69 6f BackupInformatio
12150 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 n;...alias Setup
12160 47 65 74 46 69 6c 65 43 6f 6d 70 72 65 73 73 69 GetFileCompressi
12170 6f 6e 49 6e 66 6f 57 20 53 65 74 75 70 47 65 74 onInfoW SetupGet
12180 46 69 6c 65 43 6f 6d 70 72 65 73 73 69 6f 6e 49 FileCompressionI
12190 6e 66 6f 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 nfo;...alias Set
121a0 75 70 47 65 74 49 6e 66 46 69 6c 65 4c 69 73 74 upGetInfFileList
121b0 57 20 53 65 74 75 70 47 65 74 49 6e 66 46 69 6c W SetupGetInfFil
121c0 65 4c 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 eList;...alias S
121d0 65 74 75 70 47 65 74 49 6e 66 49 6e 66 6f 72 6d etupGetInfInform
121e0 61 74 69 6f 6e 57 20 53 65 74 75 70 47 65 74 49 ationW SetupGetI
121f0 6e 66 49 6e 66 6f 72 6d 61 74 69 6f 6e 3b 0d 0a nfInformation;..
12200 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 74 4c .alias SetupGetL
12210 69 6e 65 42 79 49 6e 64 65 78 57 20 53 65 74 75 ineByIndexW Setu
12220 70 47 65 74 4c 69 6e 65 42 79 49 6e 64 65 78 3b pGetLineByIndex;
12230 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 ...alias SetupGe
12240 74 4c 69 6e 65 43 6f 75 6e 74 57 20 53 65 74 75 tLineCountW Setu
12250 70 47 65 74 4c 69 6e 65 43 6f 75 6e 74 3b 0d 0a pGetLineCount;..
12260 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 74 4c .alias SetupGetL
12270 69 6e 65 54 65 78 74 57 20 53 65 74 75 70 47 65 ineTextW SetupGe
12280 74 4c 69 6e 65 54 65 78 74 3b 0d 0a 09 61 6c 69 tLineText;...ali
12290 61 73 20 53 65 74 75 70 47 65 74 4d 75 6c 74 69 as SetupGetMulti
122a0 53 7a 46 69 65 6c 64 57 20 53 65 74 75 70 47 65 SzFieldW SetupGe
122b0 74 4d 75 6c 74 69 53 7a 46 69 65 6c 64 3b 0d 0a tMultiSzField;..
122c0 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 74 53 .alias SetupGetS
122d0 6f 75 72 63 65 46 69 6c 65 4c 6f 63 61 74 69 6f ourceFileLocatio
122e0 6e 57 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 nW SetupGetSourc
122f0 65 46 69 6c 65 4c 6f 63 61 74 69 6f 6e 3b 0d 0a eFileLocation;..
12300 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 74 53 .alias SetupGetS
12310 6f 75 72 63 65 46 69 6c 65 53 69 7a 65 57 20 53 ourceFileSizeW S
12320 65 74 75 70 47 65 74 53 6f 75 72 63 65 46 69 6c etupGetSourceFil
12330 65 53 69 7a 65 3b 0d 0a 09 61 6c 69 61 73 20 53 eSize;...alias S
12340 65 74 75 70 47 65 74 53 6f 75 72 63 65 49 6e 66 etupGetSourceInf
12350 6f 57 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 oW SetupGetSourc
12360 65 49 6e 66 6f 3b 0d 0a 09 61 6c 69 61 73 20 53 eInfo;...alias S
12370 65 74 75 70 47 65 74 53 74 72 69 6e 67 46 69 65 etupGetStringFie
12380 6c 64 57 20 53 65 74 75 70 47 65 74 53 74 72 69 ldW SetupGetStri
12390 6e 67 46 69 65 6c 64 3b 0d 0a 09 61 6c 69 61 73 ngField;...alias
123a0 20 53 65 74 75 70 47 65 74 54 61 72 67 65 74 50 SetupGetTargetP
123b0 61 74 68 57 20 53 65 74 75 70 47 65 74 54 61 72 athW SetupGetTar
123c0 67 65 74 50 61 74 68 3b 0d 0a 09 61 6c 69 61 73 getPath;...alias
123d0 20 53 65 74 75 70 49 6e 69 74 69 61 6c 69 7a 65 SetupInitialize
123e0 46 69 6c 65 4c 6f 67 57 20 53 65 74 75 70 49 6e FileLogW SetupIn
123f0 69 74 69 61 6c 69 7a 65 46 69 6c 65 4c 6f 67 3b itializeFileLog;
12400 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 49 6e ...alias SetupIn
12410 73 74 61 6c 6c 46 69 6c 65 45 78 57 20 53 65 74 stallFileExW Set
12420 75 70 49 6e 73 74 61 6c 6c 46 69 6c 65 45 78 3b upInstallFileEx;
12430 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 49 6e ...alias SetupIn
12440 73 74 61 6c 6c 46 69 6c 65 73 46 72 6f 6d 49 6e stallFilesFromIn
12450 66 53 65 63 74 69 6f 6e 57 20 53 65 74 75 70 49 fSectionW SetupI
12460 6e 73 74 61 6c 6c 46 69 6c 65 73 46 72 6f 6d 49 nstallFilesFromI
12470 6e 66 53 65 63 74 69 6f 6e 3b 0d 0a 09 61 6c 69 nfSection;...ali
12480 61 73 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 46 as SetupInstallF
12490 69 6c 65 57 20 53 65 74 75 70 49 6e 73 74 61 6c ileW SetupInstal
124a0 6c 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 53 lFile;...alias S
124b0 65 74 75 70 49 6e 73 74 61 6c 6c 46 72 6f 6d 49 etupInstallFromI
124c0 6e 66 53 65 63 74 69 6f 6e 57 20 53 65 74 75 70 nfSectionW Setup
124d0 49 6e 73 74 61 6c 6c 46 72 6f 6d 49 6e 66 53 65 InstallFromInfSe
124e0 63 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 ction;...alias S
124f0 65 74 75 70 49 6e 73 74 61 6c 6c 53 65 72 76 69 etupInstallServi
12500 63 65 73 46 72 6f 6d 49 6e 66 53 65 63 74 69 6f cesFromInfSectio
12510 6e 45 78 57 20 53 65 74 75 70 49 6e 73 74 61 6c nExW SetupInstal
12520 6c 53 65 72 76 69 63 65 73 46 72 6f 6d 49 6e 66 lServicesFromInf
12530 53 65 63 74 69 6f 6e 45 78 3b 0d 0a 09 61 6c 69 SectionEx;...ali
12540 61 73 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 53 as SetupInstallS
12550 65 72 76 69 63 65 73 46 72 6f 6d 49 6e 66 53 65 ervicesFromInfSe
12560 63 74 69 6f 6e 57 20 53 65 74 75 70 49 6e 73 74 ctionW SetupInst
12570 61 6c 6c 53 65 72 76 69 63 65 73 46 72 6f 6d 49 allServicesFromI
12580 6e 66 53 65 63 74 69 6f 6e 3b 0d 0a 09 61 6c 69 nfSection;...ali
12590 61 73 20 53 65 74 75 70 49 74 65 72 61 74 65 43 as SetupIterateC
125a0 61 62 69 6e 65 74 57 20 53 65 74 75 70 49 74 65 abinetW SetupIte
125b0 72 61 74 65 43 61 62 69 6e 65 74 3b 0d 0a 09 61 rateCabinet;...a
125c0 6c 69 61 73 20 53 65 74 75 70 4c 6f 67 45 72 72 lias SetupLogErr
125d0 6f 72 57 20 53 65 74 75 70 4c 6f 67 45 72 72 6f orW SetupLogErro
125e0 72 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 r;...alias Setup
125f0 4c 6f 67 46 69 6c 65 57 20 53 65 74 75 70 4c 6f LogFileW SetupLo
12600 67 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 53 gFile;...alias S
12610 65 74 75 70 4f 70 65 6e 41 70 70 65 6e 64 49 6e etupOpenAppendIn
12620 66 46 69 6c 65 57 20 53 65 74 75 70 4f 70 65 6e fFileW SetupOpen
12630 41 70 70 65 6e 64 49 6e 66 46 69 6c 65 3b 0d 0a AppendInfFile;..
12640 09 61 6c 69 61 73 20 53 65 74 75 70 4f 70 65 6e .alias SetupOpen
12650 49 6e 66 46 69 6c 65 57 20 53 65 74 75 70 4f 70 InfFileW SetupOp
12660 65 6e 49 6e 66 46 69 6c 65 3b 0d 0a 09 61 6c 69 enInfFile;...ali
12670 61 73 20 53 65 74 75 70 50 72 6f 6d 70 74 46 6f as SetupPromptFo
12680 72 44 69 73 6b 57 20 53 65 74 75 70 50 72 6f 6d rDiskW SetupProm
12690 70 74 46 6f 72 44 69 73 6b 3b 0d 0a 09 61 6c 69 ptForDisk;...ali
126a0 61 73 20 53 65 74 75 70 51 75 65 72 79 44 72 69 as SetupQueryDri
126b0 76 65 73 49 6e 44 69 73 6b 53 70 61 63 65 4c 69 vesInDiskSpaceLi
126c0 73 74 57 20 53 65 74 75 70 51 75 65 72 79 44 72 stW SetupQueryDr
126d0 69 76 65 73 49 6e 44 69 73 6b 53 70 61 63 65 4c ivesInDiskSpaceL
126e0 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ist;...alias Set
126f0 75 70 51 75 65 72 79 46 69 6c 65 4c 6f 67 57 20 upQueryFileLogW
12700 53 65 74 75 70 51 75 65 72 79 46 69 6c 65 4c 6f SetupQueryFileLo
12710 67 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 g;...alias Setup
12720 51 75 65 72 79 49 6e 66 46 69 6c 65 49 6e 66 6f QueryInfFileInfo
12730 72 6d 61 74 69 6f 6e 57 20 53 65 74 75 70 51 75 rmationW SetupQu
12740 65 72 79 49 6e 66 46 69 6c 65 49 6e 66 6f 72 6d eryInfFileInform
12750 61 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 ation;...alias S
12760 65 74 75 70 51 75 65 72 79 49 6e 66 4f 72 69 67 etupQueryInfOrig
12770 69 6e 61 6c 46 69 6c 65 49 6e 66 6f 72 6d 61 74 inalFileInformat
12780 69 6f 6e 57 20 53 65 74 75 70 51 75 65 72 79 49 ionW SetupQueryI
12790 6e 66 4f 72 69 67 69 6e 61 6c 46 69 6c 65 49 6e nfOriginalFileIn
127a0 66 6f 72 6d 61 74 69 6f 6e 3b 0d 0a 09 61 6c 69 formation;...ali
127b0 61 73 20 53 65 74 75 70 51 75 65 72 79 49 6e 66 as SetupQueryInf
127c0 56 65 72 73 69 6f 6e 49 6e 66 6f 72 6d 61 74 69 VersionInformati
127d0 6f 6e 57 20 53 65 74 75 70 51 75 65 72 79 49 6e onW SetupQueryIn
127e0 66 56 65 72 73 69 6f 6e 49 6e 66 6f 72 6d 61 74 fVersionInformat
127f0 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ion;...alias Set
12800 75 70 51 75 65 72 79 53 6f 75 72 63 65 4c 69 73 upQuerySourceLis
12810 74 57 20 53 65 74 75 70 51 75 65 72 79 53 6f 75 tW SetupQuerySou
12820 72 63 65 4c 69 73 74 3b 0d 0a 09 61 6c 69 61 73 rceList;...alias
12830 20 53 65 74 75 70 51 75 65 72 79 53 70 61 63 65 SetupQuerySpace
12840 52 65 71 75 69 72 65 64 4f 6e 44 72 69 76 65 57 RequiredOnDriveW
12850 20 53 65 74 75 70 51 75 65 72 79 53 70 61 63 65 SetupQuerySpace
12860 52 65 71 75 69 72 65 64 4f 6e 44 72 69 76 65 3b RequiredOnDrive;
12870 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 51 75 ...alias SetupQu
12880 65 75 65 43 6f 70 79 49 6e 64 69 72 65 63 74 57 eueCopyIndirectW
12890 20 53 65 74 75 70 51 75 65 75 65 43 6f 70 79 49 SetupQueueCopyI
128a0 6e 64 69 72 65 63 74 3b 0d 0a 09 61 6c 69 61 73 ndirect;...alias
128b0 20 53 65 74 75 70 51 75 65 75 65 43 6f 70 79 53 SetupQueueCopyS
128c0 65 63 74 69 6f 6e 57 20 53 65 74 75 70 51 75 65 ectionW SetupQue
128d0 75 65 43 6f 70 79 53 65 63 74 69 6f 6e 3b 0d 0a ueCopySection;..
128e0 09 61 6c 69 61 73 20 53 65 74 75 70 51 75 65 75 .alias SetupQueu
128f0 65 43 6f 70 79 57 20 53 65 74 75 70 51 75 65 75 eCopyW SetupQueu
12900 65 43 6f 70 79 3b 0d 0a 09 61 6c 69 61 73 20 53 eCopy;...alias S
12910 65 74 75 70 51 75 65 75 65 44 65 66 61 75 6c 74 etupQueueDefault
12920 43 6f 70 79 57 20 53 65 74 75 70 51 75 65 75 65 CopyW SetupQueue
12930 44 65 66 61 75 6c 74 43 6f 70 79 3b 0d 0a 09 61 DefaultCopy;...a
12940 6c 69 61 73 20 53 65 74 75 70 51 75 65 75 65 44 lias SetupQueueD
12950 65 6c 65 74 65 53 65 63 74 69 6f 6e 57 20 53 65 eleteSectionW Se
12960 74 75 70 51 75 65 75 65 44 65 6c 65 74 65 53 65 tupQueueDeleteSe
12970 63 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 ction;...alias S
12980 65 74 75 70 51 75 65 75 65 44 65 6c 65 74 65 57 etupQueueDeleteW
12990 20 53 65 74 75 70 51 75 65 75 65 44 65 6c 65 74 SetupQueueDelet
129a0 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 e;...alias Setup
129b0 51 75 65 75 65 52 65 6e 61 6d 65 53 65 63 74 69 QueueRenameSecti
129c0 6f 6e 57 20 53 65 74 75 70 51 75 65 75 65 52 65 onW SetupQueueRe
129d0 6e 61 6d 65 53 65 63 74 69 6f 6e 3b 0d 0a 09 61 nameSection;...a
129e0 6c 69 61 73 20 53 65 74 75 70 51 75 65 75 65 52 lias SetupQueueR
129f0 65 6e 61 6d 65 57 20 53 65 74 75 70 51 75 65 75 enameW SetupQueu
12a00 65 52 65 6e 61 6d 65 3b 0d 0a 09 61 6c 69 61 73 eRename;...alias
12a10 20 53 65 74 75 70 52 65 6d 6f 76 65 46 69 6c 65 SetupRemoveFile
12a20 4c 6f 67 45 6e 74 72 79 57 20 53 65 74 75 70 52 LogEntryW SetupR
12a30 65 6d 6f 76 65 46 69 6c 65 4c 6f 67 45 6e 74 72 emoveFileLogEntr
12a40 79 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 y;...alias Setup
12a50 52 65 6d 6f 76 65 46 72 6f 6d 44 69 73 6b 53 70 RemoveFromDiskSp
12a60 61 63 65 4c 69 73 74 57 20 53 65 74 75 70 52 65 aceListW SetupRe
12a70 6d 6f 76 65 46 72 6f 6d 44 69 73 6b 53 70 61 63 moveFromDiskSpac
12a80 65 4c 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 eList;...alias S
12a90 65 74 75 70 52 65 6d 6f 76 65 46 72 6f 6d 53 6f etupRemoveFromSo
12aa0 75 72 63 65 4c 69 73 74 57 20 53 65 74 75 70 52 urceListW SetupR
12ab0 65 6d 6f 76 65 46 72 6f 6d 53 6f 75 72 63 65 4c emoveFromSourceL
12ac0 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ist;...alias Set
12ad0 75 70 52 65 6d 6f 76 65 49 6e 73 74 61 6c 6c 53 upRemoveInstallS
12ae0 65 63 74 69 6f 6e 46 72 6f 6d 44 69 73 6b 53 70 ectionFromDiskSp
12af0 61 63 65 4c 69 73 74 57 20 53 65 74 75 70 52 65 aceListW SetupRe
12b00 6d 6f 76 65 49 6e 73 74 61 6c 6c 53 65 63 74 69 moveInstallSecti
12b10 6f 6e 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c onFromDiskSpaceL
12b20 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ist;...alias Set
12b30 75 70 52 65 6d 6f 76 65 53 65 63 74 69 6f 6e 46 upRemoveSectionF
12b40 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c 69 73 74 romDiskSpaceList
12b50 57 20 53 65 74 75 70 52 65 6d 6f 76 65 53 65 63 W SetupRemoveSec
12b60 74 69 6f 6e 46 72 6f 6d 44 69 73 6b 53 70 61 63 tionFromDiskSpac
12b70 65 4c 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 eList;...alias S
12b80 65 74 75 70 52 65 6e 61 6d 65 45 72 72 6f 72 57 etupRenameErrorW
12b90 20 53 65 74 75 70 52 65 6e 61 6d 65 45 72 72 6f SetupRenameErro
12ba0 72 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 r;...alias Setup
12bb0 53 63 61 6e 46 69 6c 65 51 75 65 75 65 57 20 53 ScanFileQueueW S
12bc0 65 74 75 70 53 63 61 6e 46 69 6c 65 51 75 65 75 etupScanFileQueu
12bd0 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 e;...alias Setup
12be0 53 65 74 44 69 72 65 63 74 6f 72 79 49 64 45 78 SetDirectoryIdEx
12bf0 57 20 53 65 74 75 70 53 65 74 44 69 72 65 63 74 W SetupSetDirect
12c00 6f 72 79 49 64 45 78 3b 0d 0a 09 61 6c 69 61 73 oryIdEx;...alias
12c10 20 53 65 74 75 70 53 65 74 44 69 72 65 63 74 6f SetupSetDirecto
12c20 72 79 49 64 57 20 53 65 74 75 70 53 65 74 44 69 ryIdW SetupSetDi
12c30 72 65 63 74 6f 72 79 49 64 3b 0d 0a 09 61 6c 69 rectoryId;...ali
12c40 61 73 20 53 65 74 75 70 53 65 74 46 69 6c 65 51 as SetupSetFileQ
12c50 75 65 75 65 41 6c 74 65 72 6e 61 74 65 50 6c 61 ueueAlternatePla
12c60 74 66 6f 72 6d 57 20 53 65 74 75 70 53 65 74 46 tformW SetupSetF
12c70 69 6c 65 51 75 65 75 65 41 6c 74 65 72 6e 61 74 ileQueueAlternat
12c80 65 50 6c 61 74 66 6f 72 6d 3b 0d 0a 09 61 6c 69 ePlatform;...ali
12c90 61 73 20 53 65 74 75 70 53 65 74 50 6c 61 74 66 as SetupSetPlatf
12ca0 6f 72 6d 50 61 74 68 4f 76 65 72 72 69 64 65 57 ormPathOverrideW
12cb0 20 53 65 74 75 70 53 65 74 50 6c 61 74 66 6f 72 SetupSetPlatfor
12cc0 6d 50 61 74 68 4f 76 65 72 72 69 64 65 3b 0d 0a mPathOverride;..
12cd0 09 61 6c 69 61 73 20 53 65 74 75 70 53 65 74 53 .alias SetupSetS
12ce0 6f 75 72 63 65 4c 69 73 74 57 20 53 65 74 75 70 ourceListW Setup
12cf0 53 65 74 53 6f 75 72 63 65 4c 69 73 74 3b 0d 0a SetSourceList;..
12d00 7d 20 65 6c 73 65 20 7b 0d 0a 09 61 6c 69 61 73 } else {...alias
12d10 20 50 53 50 5f 46 49 4c 45 5f 43 41 4c 4c 42 41 PSP_FILE_CALLBA
12d20 43 4b 5f 41 20 50 53 50 5f 46 49 4c 45 5f 43 41 CK_A PSP_FILE_CA
12d30 4c 4c 42 41 43 4b 3b 0d 0a 09 61 6c 69 61 73 20 LLBACK;...alias
12d40 53 65 74 75 70 41 64 64 49 6e 73 74 61 6c 6c 53 SetupAddInstallS
12d50 65 63 74 69 6f 6e 54 6f 44 69 73 6b 53 70 61 63 ectionToDiskSpac
12d60 65 4c 69 73 74 41 20 53 65 74 75 70 41 64 64 49 eListA SetupAddI
12d70 6e 73 74 61 6c 6c 53 65 63 74 69 6f 6e 54 6f 44 nstallSectionToD
12d80 69 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d 0a 09 iskSpaceList;...
12d90 61 6c 69 61 73 20 53 65 74 75 70 41 64 64 53 65 alias SetupAddSe
12da0 63 74 69 6f 6e 54 6f 44 69 73 6b 53 70 61 63 65 ctionToDiskSpace
12db0 4c 69 73 74 41 20 53 65 74 75 70 41 64 64 53 65 ListA SetupAddSe
12dc0 63 74 69 6f 6e 54 6f 44 69 73 6b 53 70 61 63 65 ctionToDiskSpace
12dd0 4c 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 List;...alias Se
12de0 74 75 70 41 64 64 54 6f 44 69 73 6b 53 70 61 63 tupAddToDiskSpac
12df0 65 4c 69 73 74 41 20 53 65 74 75 70 41 64 64 54 eListA SetupAddT
12e00 6f 44 69 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d oDiskSpaceList;.
12e10 0a 09 61 6c 69 61 73 20 53 65 74 75 70 41 64 64 ..alias SetupAdd
12e20 54 6f 53 6f 75 72 63 65 4c 69 73 74 41 20 53 65 ToSourceListA Se
12e30 74 75 70 41 64 64 54 6f 53 6f 75 72 63 65 4c 69 tupAddToSourceLi
12e40 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 st;...alias Setu
12e50 70 41 64 6a 75 73 74 44 69 73 6b 53 70 61 63 65 pAdjustDiskSpace
12e60 4c 69 73 74 41 20 53 65 74 75 70 41 64 6a 75 73 ListA SetupAdjus
12e70 74 44 69 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d tDiskSpaceList;.
12e80 0a 09 61 6c 69 61 73 20 53 65 74 75 70 42 61 63 ..alias SetupBac
12e90 6b 75 70 45 72 72 6f 72 41 20 53 65 74 75 70 42 kupErrorA SetupB
12ea0 61 63 6b 75 70 45 72 72 6f 72 3b 0d 0a 09 61 6c ackupError;...al
12eb0 69 61 73 20 53 65 74 75 70 43 6f 6d 6d 69 74 46 ias SetupCommitF
12ec0 69 6c 65 51 75 65 75 65 41 20 53 65 74 75 70 43 ileQueueA SetupC
12ed0 6f 6d 6d 69 74 46 69 6c 65 51 75 65 75 65 3b 0d ommitFileQueue;.
12ee0 0a 09 61 6c 69 61 73 20 53 65 74 75 70 43 6f 70 ..alias SetupCop
12ef0 79 45 72 72 6f 72 41 20 53 65 74 75 70 43 6f 70 yErrorA SetupCop
12f00 79 45 72 72 6f 72 3b 0d 0a 09 61 6c 69 61 73 20 yError;...alias
12f10 53 65 74 75 70 43 6f 70 79 4f 45 4d 49 6e 66 41 SetupCopyOEMInfA
12f20 20 53 65 74 75 70 43 6f 70 79 4f 45 4d 49 6e 66 SetupCopyOEMInf
12f30 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 43 ;...alias SetupC
12f40 72 65 61 74 65 44 69 73 6b 53 70 61 63 65 4c 69 reateDiskSpaceLi
12f50 73 74 41 20 53 65 74 75 70 43 72 65 61 74 65 44 stA SetupCreateD
12f60 69 73 6b 53 70 61 63 65 4c 69 73 74 3b 0d 0a 09 iskSpaceList;...
12f70 61 6c 69 61 73 20 53 65 74 75 70 44 65 63 6f 6d alias SetupDecom
12f80 70 72 65 73 73 4f 72 43 6f 70 79 46 69 6c 65 41 pressOrCopyFileA
12f90 20 53 65 74 75 70 44 65 63 6f 6d 70 72 65 73 73 SetupDecompress
12fa0 4f 72 43 6f 70 79 46 69 6c 65 3b 0d 0a 09 61 6c OrCopyFile;...al
12fb0 69 61 73 20 53 65 74 75 70 44 65 66 61 75 6c 74 ias SetupDefault
12fc0 51 75 65 75 65 43 61 6c 6c 62 61 63 6b 41 20 53 QueueCallbackA S
12fd0 65 74 75 70 44 65 66 61 75 6c 74 51 75 65 75 65 etupDefaultQueue
12fe0 43 61 6c 6c 62 61 63 6b 3b 0d 0a 09 61 6c 69 61 Callback;...alia
12ff0 73 20 53 65 74 75 70 44 65 6c 65 74 65 45 72 72 s SetupDeleteErr
13000 6f 72 41 20 53 65 74 75 70 44 65 6c 65 74 65 45 orA SetupDeleteE
13010 72 72 6f 72 3b 0d 0a 09 61 6c 69 61 73 20 53 65 rror;...alias Se
13020 74 75 70 44 69 42 75 69 6c 64 43 6c 61 73 73 49 tupDiBuildClassI
13030 6e 66 6f 4c 69 73 74 45 78 41 20 53 65 74 75 70 nfoListExA Setup
13040 44 69 42 75 69 6c 64 43 6c 61 73 73 49 6e 66 6f DiBuildClassInfo
13050 4c 69 73 74 45 78 3b 0d 0a 09 61 6c 69 61 73 20 ListEx;...alias
13060 53 65 74 75 70 44 69 43 6c 61 73 73 47 75 69 64 SetupDiClassGuid
13070 73 46 72 6f 6d 4e 61 6d 65 41 20 53 65 74 75 70 sFromNameA Setup
13080 44 69 43 6c 61 73 73 47 75 69 64 73 46 72 6f 6d DiClassGuidsFrom
13090 4e 61 6d 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 Name;...alias Se
130a0 74 75 70 44 69 43 6c 61 73 73 47 75 69 64 73 46 tupDiClassGuidsF
130b0 72 6f 6d 4e 61 6d 65 45 78 41 20 53 65 74 75 70 romNameExA Setup
130c0 44 69 43 6c 61 73 73 47 75 69 64 73 46 72 6f 6d DiClassGuidsFrom
130d0 4e 61 6d 65 45 78 3b 0d 0a 09 61 6c 69 61 73 20 NameEx;...alias
130e0 53 65 74 75 70 44 69 43 6c 61 73 73 4e 61 6d 65 SetupDiClassName
130f0 46 72 6f 6d 47 75 69 64 41 20 53 65 74 75 70 44 FromGuidA SetupD
13100 69 43 6c 61 73 73 4e 61 6d 65 46 72 6f 6d 47 75 iClassNameFromGu
13110 69 64 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 id;...alias Setu
13120 70 44 69 43 6c 61 73 73 4e 61 6d 65 46 72 6f 6d pDiClassNameFrom
13130 47 75 69 64 45 78 41 20 53 65 74 75 70 44 69 43 GuidExA SetupDiC
13140 6c 61 73 73 4e 61 6d 65 46 72 6f 6d 47 75 69 64 lassNameFromGuid
13150 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 Ex;...alias Setu
13160 70 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 pDiCreateDeviceI
13170 6e 66 6f 41 20 53 65 74 75 70 44 69 43 72 65 61 nfoA SetupDiCrea
13180 74 65 44 65 76 69 63 65 49 6e 66 6f 3b 0d 0a 09 teDeviceInfo;...
13190 61 6c 69 61 73 20 53 65 74 75 70 44 69 43 72 65 alias SetupDiCre
131a0 61 74 65 44 65 76 69 63 65 49 6e 66 6f 4c 69 73 ateDeviceInfoLis
131b0 74 45 78 41 20 53 65 74 75 70 44 69 43 72 65 61 tExA SetupDiCrea
131c0 74 65 44 65 76 69 63 65 49 6e 66 6f 4c 69 73 74 teDeviceInfoList
131d0 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 Ex;...alias Setu
131e0 70 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 pDiCreateDeviceI
131f0 6e 74 65 72 66 61 63 65 41 20 53 65 74 75 70 44 nterfaceA SetupD
13200 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e 74 iCreateDeviceInt
13210 65 72 66 61 63 65 3b 0d 0a 09 64 65 70 72 65 63 erface;...deprec
13220 61 74 65 64 20 61 6c 69 61 73 20 53 65 74 75 70 ated alias Setup
13230 44 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e DiCreateDeviceIn
13240 74 65 72 66 61 63 65 41 20 53 65 74 75 70 44 69 terfaceA SetupDi
13250 43 72 65 61 74 65 49 6e 74 65 72 66 61 63 65 44 CreateInterfaceD
13260 65 76 69 63 65 3b 0d 0a 09 61 6c 69 61 73 20 53 evice;...alias S
13270 65 74 75 70 44 69 43 72 65 61 74 65 44 65 76 69 etupDiCreateDevi
13280 63 65 49 6e 74 65 72 66 61 63 65 52 65 67 4b 65 ceInterfaceRegKe
13290 79 41 20 53 65 74 75 70 44 69 43 72 65 61 74 65 yA SetupDiCreate
132a0 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 52 DeviceInterfaceR
132b0 65 67 4b 65 79 3b 0d 0a 09 64 65 70 72 65 63 61 egKey;...depreca
132c0 74 65 64 20 61 6c 69 61 73 20 53 65 74 75 70 44 ted alias SetupD
132d0 69 43 72 65 61 74 65 44 65 76 69 63 65 49 6e 74 iCreateDeviceInt
132e0 65 72 66 61 63 65 52 65 67 4b 65 79 41 20 53 65 erfaceRegKeyA Se
132f0 74 75 70 44 69 43 72 65 61 74 65 49 6e 74 65 72 tupDiCreateInter
13300 66 61 63 65 44 65 76 69 63 65 52 65 67 4b 65 79 faceDeviceRegKey
13310 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 ;...alias SetupD
13320 69 43 72 65 61 74 65 44 65 76 52 65 67 4b 65 79 iCreateDevRegKey
13330 41 20 53 65 74 75 70 44 69 43 72 65 61 74 65 44 A SetupDiCreateD
13340 65 76 52 65 67 4b 65 79 3b 0d 0a 09 61 6c 69 61 evRegKey;...alia
13350 73 20 53 65 74 75 70 44 69 44 65 6c 65 74 65 44 s SetupDiDeleteD
13360 65 76 69 63 65 49 6e 74 65 72 66 61 63 65 44 61 eviceInterfaceDa
13370 74 61 20 53 65 74 75 70 44 69 44 65 6c 65 74 65 ta SetupDiDelete
13380 49 6e 74 65 72 66 61 63 65 44 65 76 69 63 65 44 InterfaceDeviceD
13390 61 74 61 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ata;...alias Set
133a0 75 70 44 69 45 6e 75 6d 44 72 69 76 65 72 49 6e upDiEnumDriverIn
133b0 66 6f 41 20 53 65 74 75 70 44 69 45 6e 75 6d 44 foA SetupDiEnumD
133c0 72 69 76 65 72 49 6e 66 6f 3b 0d 0a 09 61 6c 69 riverInfo;...ali
133d0 61 73 20 53 65 74 75 70 44 69 47 65 74 41 63 74 as SetupDiGetAct
133e0 75 61 6c 53 65 63 74 69 6f 6e 54 6f 49 6e 73 74 ualSectionToInst
133f0 61 6c 6c 41 20 53 65 74 75 70 44 69 47 65 74 41 allA SetupDiGetA
13400 63 74 75 61 6c 53 65 63 74 69 6f 6e 54 6f 49 6e ctualSectionToIn
13410 73 74 61 6c 6c 3b 0d 0a 09 61 6c 69 61 73 20 53 stall;...alias S
13420 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 65 etupDiGetClassDe
13430 73 63 72 69 70 74 69 6f 6e 41 20 53 65 74 75 70 scriptionA Setup
13440 44 69 47 65 74 43 6c 61 73 73 44 65 73 63 72 69 DiGetClassDescri
13450 70 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 ption;...alias S
13460 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 65 etupDiGetClassDe
13470 73 63 72 69 70 74 69 6f 6e 45 78 41 20 53 65 74 scriptionExA Set
13480 75 70 44 69 47 65 74 43 6c 61 73 73 44 65 73 63 upDiGetClassDesc
13490 72 69 70 74 69 6f 6e 45 78 3b 0d 0a 09 61 6c 69 riptionEx;...ali
134a0 61 73 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 as SetupDiGetCla
134b0 73 73 44 65 76 50 72 6f 70 65 72 74 79 53 68 65 ssDevPropertyShe
134c0 65 74 73 41 20 53 65 74 75 70 44 69 47 65 74 43 etsA SetupDiGetC
134d0 6c 61 73 73 44 65 76 50 72 6f 70 65 72 74 79 53 lassDevPropertyS
134e0 68 65 65 74 73 3b 0d 0a 09 61 6c 69 61 73 20 53 heets;...alias S
134f0 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 44 65 etupDiGetClassDe
13500 76 73 41 20 53 65 74 75 70 44 69 47 65 74 43 6c vsA SetupDiGetCl
13510 61 73 73 44 65 76 73 3b 0d 0a 09 61 6c 69 61 73 assDevs;...alias
13520 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 73 73 SetupDiGetClass
13530 44 65 76 73 45 78 41 20 53 65 74 75 70 44 69 47 DevsExA SetupDiG
13540 65 74 43 6c 61 73 73 44 65 76 73 45 78 3b 0d 0a etClassDevsEx;..
13550 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
13560 74 43 6c 61 73 73 49 6d 61 67 65 4c 69 73 74 45 tClassImageListE
13570 78 41 20 53 65 74 75 70 44 69 47 65 74 43 6c 61 xA SetupDiGetCla
13580 73 73 49 6d 61 67 65 4c 69 73 74 45 78 3b 0d 0a ssImageListEx;..
13590 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 .alias SetupDiGe
135a0 74 43 6c 61 73 73 49 6e 73 74 61 6c 6c 50 61 72 tClassInstallPar
135b0 61 6d 73 41 20 53 65 74 75 70 44 69 47 65 74 43 amsA SetupDiGetC
135c0 6c 61 73 73 49 6e 73 74 61 6c 6c 50 61 72 61 6d lassInstallParam
135d0 73 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 s;...alias Setup
135e0 44 69 47 65 74 43 6c 61 73 73 52 65 67 69 73 74 DiGetClassRegist
135f0 72 79 50 72 6f 70 65 72 74 79 41 20 53 65 74 75 ryPropertyA Setu
13600 70 44 69 47 65 74 43 6c 61 73 73 52 65 67 69 73 pDiGetClassRegis
13610 74 72 79 50 72 6f 70 65 72 74 79 3b 0d 0a 09 61 tryProperty;...a
13620 6c 69 61 73 20 53 65 74 75 70 44 69 47 65 74 44 lias SetupDiGetD
13630 65 76 69 63 65 49 6e 66 6f 4c 69 73 74 44 65 74 eviceInfoListDet
13640 61 69 6c 41 20 53 65 74 75 70 44 69 47 65 74 44 ailA SetupDiGetD
13650 65 76 69 63 65 49 6e 66 6f 4c 69 73 74 44 65 74 eviceInfoListDet
13660 61 69 6c 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ail;...alias Set
13670 75 70 44 69 47 65 74 44 65 76 69 63 65 49 6e 73 upDiGetDeviceIns
13680 74 61 6c 6c 50 61 72 61 6d 73 41 20 53 65 74 75 tallParamsA Setu
13690 70 44 69 47 65 74 44 65 76 69 63 65 49 6e 73 74 pDiGetDeviceInst
136a0 61 6c 6c 50 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 allParams;...ali
136b0 61 73 20 53 65 74 75 70 44 69 47 65 74 44 65 76 as SetupDiGetDev
136c0 69 63 65 49 6e 73 74 61 6e 63 65 49 64 41 20 53 iceInstanceIdA S
136d0 65 74 75 70 44 69 47 65 74 44 65 76 69 63 65 49 etupDiGetDeviceI
136e0 6e 73 74 61 6e 63 65 49 64 3b 0d 0a 09 61 6c 69 nstanceId;...ali
136f0 61 73 20 53 65 74 75 70 44 69 47 65 74 44 65 76 as SetupDiGetDev
13700 69 63 65 49 6e 74 65 72 66 61 63 65 44 65 74 61 iceInterfaceDeta
13710 69 6c 41 20 53 65 74 75 70 44 69 47 65 74 44 65 ilA SetupDiGetDe
13720 76 69 63 65 49 6e 74 65 72 66 61 63 65 44 65 74 viceInterfaceDet
13730 61 69 6c 3b 0d 0a 09 64 65 70 72 65 63 61 74 65 ail;...deprecate
13740 64 20 61 6c 69 61 73 20 53 65 74 75 70 44 69 47 d alias SetupDiG
13750 65 74 44 65 76 69 63 65 49 6e 74 65 72 66 61 63 etDeviceInterfac
13760 65 44 65 74 61 69 6c 41 20 53 65 74 75 70 44 69 eDetailA SetupDi
13770 47 65 74 49 6e 74 65 72 66 61 63 65 44 65 76 69 GetInterfaceDevi
13780 63 65 44 65 74 61 69 6c 3b 0d 0a 09 61 6c 69 61 ceDetail;...alia
13790 73 20 53 65 74 75 70 44 69 47 65 74 44 65 76 69 s SetupDiGetDevi
137a0 63 65 52 65 67 69 73 74 72 79 50 72 6f 70 65 72 ceRegistryProper
137b0 74 79 41 20 53 65 74 75 70 44 69 47 65 74 44 65 tyA SetupDiGetDe
137c0 76 69 63 65 52 65 67 69 73 74 72 79 50 72 6f 70 viceRegistryProp
137d0 65 72 74 79 3b 0d 0a 09 61 6c 69 61 73 20 53 65 erty;...alias Se
137e0 74 75 70 44 69 47 65 74 44 72 69 76 65 72 49 6e tupDiGetDriverIn
137f0 66 6f 44 65 74 61 69 6c 41 20 53 65 74 75 70 44 foDetailA SetupD
13800 69 47 65 74 44 72 69 76 65 72 49 6e 66 6f 44 65 iGetDriverInfoDe
13810 74 61 69 6c 3b 0d 0a 09 61 6c 69 61 73 20 53 65 tail;...alias Se
13820 74 75 70 44 69 47 65 74 44 72 69 76 65 72 49 6e tupDiGetDriverIn
13830 73 74 61 6c 6c 50 61 72 61 6d 73 41 20 53 65 74 stallParamsA Set
13840 75 70 44 69 47 65 74 44 72 69 76 65 72 49 6e 73 upDiGetDriverIns
13850 74 61 6c 6c 50 61 72 61 6d 73 3b 0d 0a 09 61 6c tallParams;...al
13860 69 61 73 20 53 65 74 75 70 44 69 47 65 74 48 77 ias SetupDiGetHw
13870 50 72 6f 66 69 6c 65 46 72 69 65 6e 64 6c 79 4e ProfileFriendlyN
13880 61 6d 65 41 20 53 65 74 75 70 44 69 47 65 74 48 ameA SetupDiGetH
13890 77 50 72 6f 66 69 6c 65 46 72 69 65 6e 64 6c 79 wProfileFriendly
138a0 4e 61 6d 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 Name;...alias Se
138b0 74 75 70 44 69 47 65 74 48 77 50 72 6f 66 69 6c tupDiGetHwProfil
138c0 65 46 72 69 65 6e 64 6c 79 4e 61 6d 65 45 78 41 eFriendlyNameExA
138d0 20 53 65 74 75 70 44 69 47 65 74 48 77 50 72 6f SetupDiGetHwPro
138e0 66 69 6c 65 46 72 69 65 6e 64 6c 79 4e 61 6d 65 fileFriendlyName
138f0 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 Ex;...alias Setu
13900 70 44 69 47 65 74 48 77 50 72 6f 66 69 6c 65 4c pDiGetHwProfileL
13910 69 73 74 45 78 41 20 53 65 74 75 70 44 69 47 65 istExA SetupDiGe
13920 74 48 77 50 72 6f 66 69 6c 65 4c 69 73 74 45 78 tHwProfileListEx
13930 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 ;...alias SetupD
13940 69 47 65 74 49 4e 46 43 6c 61 73 73 41 20 53 65 iGetINFClassA Se
13950 74 75 70 44 69 47 65 74 49 4e 46 43 6c 61 73 73 tupDiGetINFClass
13960 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 ;...alias SetupD
13970 69 47 65 74 53 65 6c 65 63 74 65 64 44 72 69 76 iGetSelectedDriv
13980 65 72 41 20 53 65 74 75 70 44 69 47 65 74 53 65 erA SetupDiGetSe
13990 6c 65 63 74 65 64 44 72 69 76 65 72 3b 0d 0a 09 lectedDriver;...
139a0 61 6c 69 61 73 20 53 65 74 75 70 44 69 49 6e 73 alias SetupDiIns
139b0 74 61 6c 6c 43 6c 61 73 73 41 20 53 65 74 75 70 tallClassA Setup
139c0 44 69 49 6e 73 74 61 6c 6c 43 6c 61 73 73 3b 0d DiInstallClass;.
139d0 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 49 ..alias SetupDiI
139e0 6e 73 74 61 6c 6c 43 6c 61 73 73 45 78 41 20 53 nstallClassExA S
139f0 65 74 75 70 44 69 49 6e 73 74 61 6c 6c 43 6c 61 etupDiInstallCla
13a00 73 73 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 65 ssEx;...alias Se
13a10 74 75 70 44 69 4f 70 65 6e 43 6c 61 73 73 52 65 tupDiOpenClassRe
13a20 67 4b 65 79 45 78 41 20 53 65 74 75 70 44 69 4f gKeyExA SetupDiO
13a30 70 65 6e 43 6c 61 73 73 52 65 67 4b 65 79 45 78 penClassRegKeyEx
13a40 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 ;...alias SetupD
13a50 69 4f 70 65 6e 44 65 76 69 63 65 49 6e 66 6f 41 iOpenDeviceInfoA
13a60 20 53 65 74 75 70 44 69 4f 70 65 6e 44 65 76 69 SetupDiOpenDevi
13a70 63 65 49 6e 66 6f 3b 0d 0a 09 61 6c 69 61 73 20 ceInfo;...alias
13a80 53 65 74 75 70 44 69 4f 70 65 6e 44 65 76 69 63 SetupDiOpenDevic
13a90 65 49 6e 74 65 72 66 61 63 65 41 20 53 65 74 75 eInterfaceA Setu
13aa0 70 44 69 4f 70 65 6e 44 65 76 69 63 65 49 6e 74 pDiOpenDeviceInt
13ab0 65 72 66 61 63 65 3b 0d 0a 09 64 65 70 72 65 63 erface;...deprec
13ac0 61 74 65 64 20 61 6c 69 61 73 20 53 65 74 75 70 ated alias Setup
13ad0 44 69 4f 70 65 6e 44 65 76 69 63 65 49 6e 74 65 DiOpenDeviceInte
13ae0 72 66 61 63 65 41 20 53 65 74 75 70 44 69 4f 70 rfaceA SetupDiOp
13af0 65 6e 49 6e 74 65 72 66 61 63 65 44 65 76 69 63 enInterfaceDevic
13b00 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 e;...alias Setup
13b10 44 69 53 65 74 43 6c 61 73 73 49 6e 73 74 61 6c DiSetClassInstal
13b20 6c 50 61 72 61 6d 73 41 20 53 65 74 75 70 44 69 lParamsA SetupDi
13b30 53 65 74 43 6c 61 73 73 49 6e 73 74 61 6c 6c 50 SetClassInstallP
13b40 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 61 73 20 53 arams;...alias S
13b50 65 74 75 70 44 69 53 65 74 43 6c 61 73 73 52 65 etupDiSetClassRe
13b60 67 69 73 74 72 79 50 72 6f 70 65 72 74 79 41 20 gistryPropertyA
13b70 53 65 74 75 70 44 69 53 65 74 43 6c 61 73 73 52 SetupDiSetClassR
13b80 65 67 69 73 74 72 79 50 72 6f 70 65 72 74 79 3b egistryProperty;
13b90 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 44 69 ...alias SetupDi
13ba0 53 65 74 44 65 76 69 63 65 49 6e 73 74 61 6c 6c SetDeviceInstall
13bb0 50 61 72 61 6d 73 41 20 53 65 74 75 70 44 69 53 ParamsA SetupDiS
13bc0 65 74 44 65 76 69 63 65 49 6e 73 74 61 6c 6c 50 etDeviceInstallP
13bd0 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 61 73 20 53 arams;...alias S
13be0 65 74 75 70 44 69 53 65 74 44 65 76 69 63 65 52 etupDiSetDeviceR
13bf0 65 67 69 73 74 72 79 50 72 6f 70 65 72 74 79 41 egistryPropertyA
13c00 20 53 65 74 75 70 44 69 53 65 74 44 65 76 69 63 SetupDiSetDevic
13c10 65 52 65 67 69 73 74 72 79 50 72 6f 70 65 72 74 eRegistryPropert
13c20 79 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 y;...alias Setup
13c30 44 69 53 65 74 44 72 69 76 65 72 49 6e 73 74 61 DiSetDriverInsta
13c40 6c 6c 50 61 72 61 6d 73 41 20 53 65 74 75 70 44 llParamsA SetupD
13c50 69 53 65 74 44 72 69 76 65 72 49 6e 73 74 61 6c iSetDriverInstal
13c60 6c 50 61 72 61 6d 73 3b 0d 0a 09 61 6c 69 61 73 lParams;...alias
13c70 20 53 65 74 75 70 44 69 53 65 74 53 65 6c 65 63 SetupDiSetSelec
13c80 74 65 64 44 72 69 76 65 72 41 20 53 65 74 75 70 tedDriverA Setup
13c90 44 69 53 65 74 53 65 6c 65 63 74 65 64 44 72 69 DiSetSelectedDri
13ca0 76 65 72 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ver;...alias Set
13cb0 75 70 44 75 70 6c 69 63 61 74 65 44 69 73 6b 53 upDuplicateDiskS
13cc0 70 61 63 65 4c 69 73 74 41 20 53 65 74 75 70 44 paceListA SetupD
13cd0 75 70 6c 69 63 61 74 65 44 69 73 6b 53 70 61 63 uplicateDiskSpac
13ce0 65 4c 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 eList;...alias S
13cf0 65 74 75 70 46 69 6e 64 46 69 72 73 74 4c 69 6e etupFindFirstLin
13d00 65 41 20 53 65 74 75 70 46 69 6e 64 46 69 72 73 eA SetupFindFirs
13d10 74 4c 69 6e 65 3b 0d 0a 09 61 6c 69 61 73 20 53 tLine;...alias S
13d20 65 74 75 70 46 69 6e 64 4e 65 78 74 4d 61 74 63 etupFindNextMatc
13d30 68 4c 69 6e 65 41 20 53 65 74 75 70 46 69 6e 64 hLineA SetupFind
13d40 4e 65 78 74 4d 61 74 63 68 4c 69 6e 65 3b 0d 0a NextMatchLine;..
13d50 09 61 6c 69 61 73 20 53 65 74 75 70 46 72 65 65 .alias SetupFree
13d60 53 6f 75 72 63 65 4c 69 73 74 41 20 53 65 74 75 SourceListA Setu
13d70 70 46 72 65 65 53 6f 75 72 63 65 4c 69 73 74 3b pFreeSourceList;
13d80 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 ...alias SetupGe
13d90 74 42 61 63 6b 75 70 49 6e 66 6f 72 6d 61 74 69 tBackupInformati
13da0 6f 6e 41 20 53 65 74 75 70 47 65 74 42 61 63 6b onA SetupGetBack
13db0 75 70 49 6e 66 6f 72 6d 61 74 69 6f 6e 3b 0d 0a upInformation;..
13dc0 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 74 46 .alias SetupGetF
13dd0 69 6c 65 43 6f 6d 70 72 65 73 73 69 6f 6e 49 6e ileCompressionIn
13de0 66 6f 41 20 53 65 74 75 70 47 65 74 46 69 6c 65 foA SetupGetFile
13df0 43 6f 6d 70 72 65 73 73 69 6f 6e 49 6e 66 6f 3b CompressionInfo;
13e00 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 47 65 ...alias SetupGe
13e10 74 49 6e 66 46 69 6c 65 4c 69 73 74 41 20 53 65 tInfFileListA Se
13e20 74 75 70 47 65 74 49 6e 66 46 69 6c 65 4c 69 73 tupGetInfFileLis
13e30 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 t;...alias Setup
13e40 47 65 74 49 6e 66 49 6e 66 6f 72 6d 61 74 69 6f GetInfInformatio
13e50 6e 41 20 53 65 74 75 70 47 65 74 49 6e 66 49 6e nA SetupGetInfIn
13e60 66 6f 72 6d 61 74 69 6f 6e 3b 0d 0a 09 61 6c 69 formation;...ali
13e70 61 73 20 53 65 74 75 70 47 65 74 4c 69 6e 65 42 as SetupGetLineB
13e80 79 49 6e 64 65 78 41 20 53 65 74 75 70 47 65 74 yIndexA SetupGet
13e90 4c 69 6e 65 42 79 49 6e 64 65 78 3b 0d 0a 09 61 LineByIndex;...a
13ea0 6c 69 61 73 20 53 65 74 75 70 47 65 74 4c 69 6e lias SetupGetLin
13eb0 65 43 6f 75 6e 74 41 20 53 65 74 75 70 47 65 74 eCountA SetupGet
13ec0 4c 69 6e 65 43 6f 75 6e 74 3b 0d 0a 09 61 6c 69 LineCount;...ali
13ed0 61 73 20 53 65 74 75 70 47 65 74 4c 69 6e 65 54 as SetupGetLineT
13ee0 65 78 74 41 20 53 65 74 75 70 47 65 74 4c 69 6e extA SetupGetLin
13ef0 65 54 65 78 74 3b 0d 0a 09 61 6c 69 61 73 20 53 eText;...alias S
13f00 65 74 75 70 47 65 74 4d 75 6c 74 69 53 7a 46 69 etupGetMultiSzFi
13f10 65 6c 64 41 20 53 65 74 75 70 47 65 74 4d 75 6c eldA SetupGetMul
13f20 74 69 53 7a 46 69 65 6c 64 3b 0d 0a 09 61 6c 69 tiSzField;...ali
13f30 61 73 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 as SetupGetSourc
13f40 65 46 69 6c 65 4c 6f 63 61 74 69 6f 6e 41 20 53 eFileLocationA S
13f50 65 74 75 70 47 65 74 53 6f 75 72 63 65 46 69 6c etupGetSourceFil
13f60 65 4c 6f 63 61 74 69 6f 6e 3b 0d 0a 09 61 6c 69 eLocation;...ali
13f70 61 73 20 53 65 74 75 70 47 65 74 53 6f 75 72 63 as SetupGetSourc
13f80 65 46 69 6c 65 53 69 7a 65 41 20 53 65 74 75 70 eFileSizeA Setup
13f90 47 65 74 53 6f 75 72 63 65 46 69 6c 65 53 69 7a GetSourceFileSiz
13fa0 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 e;...alias Setup
13fb0 47 65 74 53 6f 75 72 63 65 49 6e 66 6f 41 20 53 GetSourceInfoA S
13fc0 65 74 75 70 47 65 74 53 6f 75 72 63 65 49 6e 66 etupGetSourceInf
13fd0 6f 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 o;...alias Setup
13fe0 47 65 74 53 74 72 69 6e 67 46 69 65 6c 64 41 20 GetStringFieldA
13ff0 53 65 74 75 70 47 65 74 53 74 72 69 6e 67 46 69 SetupGetStringFi
14000 65 6c 64 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 eld;...alias Set
14010 75 70 47 65 74 54 61 72 67 65 74 50 61 74 68 41 upGetTargetPathA
14020 20 53 65 74 75 70 47 65 74 54 61 72 67 65 74 50 SetupGetTargetP
14030 61 74 68 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ath;...alias Set
14040 75 70 49 6e 69 74 69 61 6c 69 7a 65 46 69 6c 65 upInitializeFile
14050 4c 6f 67 41 20 53 65 74 75 70 49 6e 69 74 69 61 LogA SetupInitia
14060 6c 69 7a 65 46 69 6c 65 4c 6f 67 3b 0d 0a 09 61 lizeFileLog;...a
14070 6c 69 61 73 20 53 65 74 75 70 49 6e 73 74 61 6c lias SetupInstal
14080 6c 46 69 6c 65 41 20 53 65 74 75 70 49 6e 73 74 lFileA SetupInst
14090 61 6c 6c 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 allFile;...alias
140a0 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 46 69 6c SetupInstallFil
140b0 65 45 78 41 20 53 65 74 75 70 49 6e 73 74 61 6c eExA SetupInstal
140c0 6c 46 69 6c 65 45 78 3b 0d 0a 09 61 6c 69 61 73 lFileEx;...alias
140d0 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 46 69 6c SetupInstallFil
140e0 65 73 46 72 6f 6d 49 6e 66 53 65 63 74 69 6f 6e esFromInfSection
140f0 41 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 46 69 A SetupInstallFi
14100 6c 65 73 46 72 6f 6d 49 6e 66 53 65 63 74 69 6f lesFromInfSectio
14110 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 n;...alias Setup
14120 49 6e 73 74 61 6c 6c 46 72 6f 6d 49 6e 66 53 65 InstallFromInfSe
14130 63 74 69 6f 6e 41 20 53 65 74 75 70 49 6e 73 74 ctionA SetupInst
14140 61 6c 6c 46 72 6f 6d 49 6e 66 53 65 63 74 69 6f allFromInfSectio
14150 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 n;...alias Setup
14160 49 6e 73 74 61 6c 6c 53 65 72 76 69 63 65 73 46 InstallServicesF
14170 72 6f 6d 49 6e 66 53 65 63 74 69 6f 6e 41 20 53 romInfSectionA S
14180 65 74 75 70 49 6e 73 74 61 6c 6c 53 65 72 76 69 etupInstallServi
14190 63 65 73 46 72 6f 6d 49 6e 66 53 65 63 74 69 6f cesFromInfSectio
141a0 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 n;...alias Setup
141b0 49 6e 73 74 61 6c 6c 53 65 72 76 69 63 65 73 46 InstallServicesF
141c0 72 6f 6d 49 6e 66 53 65 63 74 69 6f 6e 45 78 41 romInfSectionExA
141d0 20 53 65 74 75 70 49 6e 73 74 61 6c 6c 53 65 72 SetupInstallSer
141e0 76 69 63 65 73 46 72 6f 6d 49 6e 66 53 65 63 74 vicesFromInfSect
141f0 69 6f 6e 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 ionEx;...alias S
14200 65 74 75 70 49 74 65 72 61 74 65 43 61 62 69 6e etupIterateCabin
14210 65 74 41 20 53 65 74 75 70 49 74 65 72 61 74 65 etA SetupIterate
14220 43 61 62 69 6e 65 74 3b 0d 0a 09 61 6c 69 61 73 Cabinet;...alias
14230 20 53 65 74 75 70 4c 6f 67 45 72 72 6f 72 41 20 SetupLogErrorA
14240 53 65 74 75 70 4c 6f 67 45 72 72 6f 72 3b 0d 0a SetupLogError;..
14250 09 61 6c 69 61 73 20 53 65 74 75 70 4c 6f 67 46 .alias SetupLogF
14260 69 6c 65 41 20 53 65 74 75 70 4c 6f 67 46 69 6c ileA SetupLogFil
14270 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 e;...alias Setup
14280 4f 70 65 6e 41 70 70 65 6e 64 49 6e 66 46 69 6c OpenAppendInfFil
14290 65 41 20 53 65 74 75 70 4f 70 65 6e 41 70 70 65 eA SetupOpenAppe
142a0 6e 64 49 6e 66 46 69 6c 65 3b 0d 0a 09 61 6c 69 ndInfFile;...ali
142b0 61 73 20 53 65 74 75 70 4f 70 65 6e 49 6e 66 46 as SetupOpenInfF
142c0 69 6c 65 41 20 53 65 74 75 70 4f 70 65 6e 49 6e ileA SetupOpenIn
142d0 66 46 69 6c 65 3b 0d 0a 09 61 6c 69 61 73 20 53 fFile;...alias S
142e0 65 74 75 70 50 72 6f 6d 70 74 46 6f 72 44 69 73 etupPromptForDis
142f0 6b 41 20 53 65 74 75 70 50 72 6f 6d 70 74 46 6f kA SetupPromptFo
14300 72 44 69 73 6b 3b 0d 0a 09 61 6c 69 61 73 20 53 rDisk;...alias S
14310 65 74 75 70 51 75 65 72 79 44 72 69 76 65 73 49 etupQueryDrivesI
14320 6e 44 69 73 6b 53 70 61 63 65 4c 69 73 74 41 20 nDiskSpaceListA
14330 53 65 74 75 70 51 75 65 72 79 44 72 69 76 65 73 SetupQueryDrives
14340 49 6e 44 69 73 6b 53 70 61 63 65 4c 69 73 74 3b InDiskSpaceList;
14350 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 51 75 ...alias SetupQu
14360 65 72 79 46 69 6c 65 4c 6f 67 41 20 53 65 74 75 eryFileLogA Setu
14370 70 51 75 65 72 79 46 69 6c 65 4c 6f 67 3b 0d 0a pQueryFileLog;..
14380 09 61 6c 69 61 73 20 53 65 74 75 70 51 75 65 72 .alias SetupQuer
14390 79 49 6e 66 46 69 6c 65 49 6e 66 6f 72 6d 61 74 yInfFileInformat
143a0 69 6f 6e 41 20 53 65 74 75 70 51 75 65 72 79 49 ionA SetupQueryI
143b0 6e 66 46 69 6c 65 49 6e 66 6f 72 6d 61 74 69 6f nfFileInformatio
143c0 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 n;...alias Setup
143d0 51 75 65 72 79 49 6e 66 4f 72 69 67 69 6e 61 6c QueryInfOriginal
143e0 46 69 6c 65 49 6e 66 6f 72 6d 61 74 69 6f 6e 41 FileInformationA
143f0 20 53 65 74 75 70 51 75 65 72 79 49 6e 66 4f 72 SetupQueryInfOr
14400 69 67 69 6e 61 6c 46 69 6c 65 49 6e 66 6f 72 6d iginalFileInform
14410 61 74 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 ation;...alias S
14420 65 74 75 70 51 75 65 72 79 49 6e 66 56 65 72 73 etupQueryInfVers
14430 69 6f 6e 49 6e 66 6f 72 6d 61 74 69 6f 6e 41 20 ionInformationA
14440 53 65 74 75 70 51 75 65 72 79 49 6e 66 56 65 72 SetupQueryInfVer
14450 73 69 6f 6e 49 6e 66 6f 72 6d 61 74 69 6f 6e 3b sionInformation;
14460 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 51 75 ...alias SetupQu
14470 65 72 79 53 6f 75 72 63 65 4c 69 73 74 41 20 53 erySourceListA S
14480 65 74 75 70 51 75 65 72 79 53 6f 75 72 63 65 4c etupQuerySourceL
14490 69 73 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ist;...alias Set
144a0 75 70 51 75 65 72 79 53 70 61 63 65 52 65 71 75 upQuerySpaceRequ
144b0 69 72 65 64 4f 6e 44 72 69 76 65 41 20 53 65 74 iredOnDriveA Set
144c0 75 70 51 75 65 72 79 53 70 61 63 65 52 65 71 75 upQuerySpaceRequ
144d0 69 72 65 64 4f 6e 44 72 69 76 65 3b 0d 0a 09 61 iredOnDrive;...a
144e0 6c 69 61 73 20 53 65 74 75 70 51 75 65 75 65 43 lias SetupQueueC
144f0 6f 70 79 41 20 53 65 74 75 70 51 75 65 75 65 43 opyA SetupQueueC
14500 6f 70 79 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 opy;...alias Set
14510 75 70 51 75 65 75 65 43 6f 70 79 49 6e 64 69 72 upQueueCopyIndir
14520 65 63 74 41 20 53 65 74 75 70 51 75 65 75 65 43 ectA SetupQueueC
14530 6f 70 79 49 6e 64 69 72 65 63 74 3b 0d 0a 09 61 opyIndirect;...a
14540 6c 69 61 73 20 53 65 74 75 70 51 75 65 75 65 43 lias SetupQueueC
14550 6f 70 79 53 65 63 74 69 6f 6e 41 20 53 65 74 75 opySectionA Setu
14560 70 51 75 65 75 65 43 6f 70 79 53 65 63 74 69 6f pQueueCopySectio
14570 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 n;...alias Setup
14580 51 75 65 75 65 44 65 66 61 75 6c 74 43 6f 70 79 QueueDefaultCopy
14590 41 20 53 65 74 75 70 51 75 65 75 65 44 65 66 61 A SetupQueueDefa
145a0 75 6c 74 43 6f 70 79 3b 0d 0a 09 61 6c 69 61 73 ultCopy;...alias
145b0 20 53 65 74 75 70 51 75 65 75 65 44 65 6c 65 74 SetupQueueDelet
145c0 65 41 20 53 65 74 75 70 51 75 65 75 65 44 65 6c eA SetupQueueDel
145d0 65 74 65 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ete;...alias Set
145e0 75 70 51 75 65 75 65 44 65 6c 65 74 65 53 65 63 upQueueDeleteSec
145f0 74 69 6f 6e 41 20 53 65 74 75 70 51 75 65 75 65 tionA SetupQueue
14600 44 65 6c 65 74 65 53 65 63 74 69 6f 6e 3b 0d 0a DeleteSection;..
14610 09 61 6c 69 61 73 20 53 65 74 75 70 51 75 65 75 .alias SetupQueu
14620 65 52 65 6e 61 6d 65 41 20 53 65 74 75 70 51 75 eRenameA SetupQu
14630 65 75 65 52 65 6e 61 6d 65 3b 0d 0a 09 61 6c 69 eueRename;...ali
14640 61 73 20 53 65 74 75 70 51 75 65 75 65 52 65 6e as SetupQueueRen
14650 61 6d 65 53 65 63 74 69 6f 6e 41 20 53 65 74 75 ameSectionA Setu
14660 70 51 75 65 75 65 52 65 6e 61 6d 65 53 65 63 74 pQueueRenameSect
14670 69 6f 6e 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 ion;...alias Set
14680 75 70 52 65 6d 6f 76 65 46 69 6c 65 4c 6f 67 45 upRemoveFileLogE
14690 6e 74 72 79 41 20 53 65 74 75 70 52 65 6d 6f 76 ntryA SetupRemov
146a0 65 46 69 6c 65 4c 6f 67 45 6e 74 72 79 3b 0d 0a eFileLogEntry;..
146b0 09 61 6c 69 61 73 20 53 65 74 75 70 52 65 6d 6f .alias SetupRemo
146c0 76 65 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c veFromDiskSpaceL
146d0 69 73 74 41 20 53 65 74 75 70 52 65 6d 6f 76 65 istA SetupRemove
146e0 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c 69 73 FromDiskSpaceLis
146f0 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 t;...alias Setup
14700 52 65 6d 6f 76 65 46 72 6f 6d 53 6f 75 72 63 65 RemoveFromSource
14710 4c 69 73 74 41 20 53 65 74 75 70 52 65 6d 6f 76 ListA SetupRemov
14720 65 46 72 6f 6d 53 6f 75 72 63 65 4c 69 73 74 3b eFromSourceList;
14730 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 52 65 ...alias SetupRe
14740 6d 6f 76 65 49 6e 73 74 61 6c 6c 53 65 63 74 69 moveInstallSecti
14750 6f 6e 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c onFromDiskSpaceL
14760 69 73 74 41 20 53 65 74 75 70 52 65 6d 6f 76 65 istA SetupRemove
14770 49 6e 73 74 61 6c 6c 53 65 63 74 69 6f 6e 46 72 InstallSectionFr
14780 6f 6d 44 69 73 6b 53 70 61 63 65 4c 69 73 74 3b omDiskSpaceList;
14790 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 52 65 ...alias SetupRe
147a0 6d 6f 76 65 53 65 63 74 69 6f 6e 46 72 6f 6d 44 moveSectionFromD
147b0 69 73 6b 53 70 61 63 65 4c 69 73 74 41 20 53 65 iskSpaceListA Se
147c0 74 75 70 52 65 6d 6f 76 65 53 65 63 74 69 6f 6e tupRemoveSection
147d0 46 72 6f 6d 44 69 73 6b 53 70 61 63 65 4c 69 73 FromDiskSpaceLis
147e0 74 3b 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 t;...alias Setup
147f0 52 65 6e 61 6d 65 45 72 72 6f 72 41 20 53 65 74 RenameErrorA Set
14800 75 70 52 65 6e 61 6d 65 45 72 72 6f 72 3b 0d 0a upRenameError;..
14810 09 61 6c 69 61 73 20 53 65 74 75 70 53 63 61 6e .alias SetupScan
14820 46 69 6c 65 51 75 65 75 65 41 20 53 65 74 75 70 FileQueueA Setup
14830 53 63 61 6e 46 69 6c 65 51 75 65 75 65 3b 0d 0a ScanFileQueue;..
14840 09 61 6c 69 61 73 20 53 65 74 75 70 53 65 74 44 .alias SetupSetD
14850 69 72 65 63 74 6f 72 79 49 64 41 20 53 65 74 75 irectoryIdA Setu
14860 70 53 65 74 44 69 72 65 63 74 6f 72 79 49 64 3b pSetDirectoryId;
14870 0d 0a 09 61 6c 69 61 73 20 53 65 74 75 70 53 65 ...alias SetupSe
14880 74 44 69 72 65 63 74 6f 72 79 49 64 45 78 41 20 tDirectoryIdExA
14890 53 65 74 75 70 53 65 74 44 69 72 65 63 74 6f 72 SetupSetDirector
148a0 79 49 64 45 78 3b 0d 0a 09 61 6c 69 61 73 20 53 yIdEx;...alias S
148b0 65 74 75 70 53 65 74 46 69 6c 65 51 75 65 75 65 etupSetFileQueue
148c0 41 6c 74 65 72 6e 61 74 65 50 6c 61 74 66 6f 72 AlternatePlatfor
148d0 6d 41 20 53 65 74 75 70 53 65 74 46 69 6c 65 51 mA SetupSetFileQ
148e0 75 65 75 65 41 6c 74 65 72 6e 61 74 65 50 6c 61 ueueAlternatePla
148f0 74 66 6f 72 6d 3b 0d 0a 09 61 6c 69 61 73 20 53 tform;...alias S
14900 65 74 75 70 53 65 74 50 6c 61 74 66 6f 72 6d 50 etupSetPlatformP
14910 61 74 68 4f 76 65 72 72 69 64 65 41 20 53 65 74 athOverrideA Set
14920 75 70 53 65 74 50 6c 61 74 66 6f 72 6d 50 61 74 upSetPlatformPat
14930 68 4f 76 65 72 72 69 64 65 3b 0d 0a 09 61 6c 69 hOverride;...ali
14940 61 73 20 53 65 74 75 70 53 65 74 53 6f 75 72 63 as SetupSetSourc
14950 65 4c 69 73 74 41 20 53 65 74 75 70 53 65 74 53 eListA SetupSetS
14960 6f 75 72 63 65 4c 69 73 74 3b 0d 0a 7d 0d 0a ourceList;..}..