1 /***********************************************************************\
2 *                                regstr.d                               *
3 *                                                                       *
4 *                       Windows API header module                       *
5 *                                                                       *
6 *                 Translated from MinGW Windows headers                 *
7 *                                                                       *
8 *                       Placed into public domain                       *
9 \***********************************************************************/
10 module win32.regstr;
11 version(Windows):
12 
13 // TODO: fix possible conflict with shloj. Sort out NEC_98 issue.
14 
15 private import win32.windef;
16 
17 const REGSTR_MAX_VALUE_LENGTH = 256;
18 
19 enum {
20 	IT_COMPACT = 0,
21 	IT_TYPICAL,
22 	IT_PORTABLE,
23 	IT_CUSTOM // = 3
24 }
25 
26 const DOSOPTGF_DEFCLEAN = 1;
27 
28 const DOSOPTF_DEFAULT     = 0x01;
29 const DOSOPTF_SUPPORTED   = 0x02;
30 const DOSOPTF_ALWAYSUSE   = 0x04;
31 const DOSOPTF_USESPMODE   = 0x08;
32 const DOSOPTF_PROVIDESUMB = 0x10;
33 const DOSOPTF_NEEDSETUP   = 0x20;
34 const DOSOPTF_INDOSSTART  = 0x40;
35 const DOSOPTF_MULTIPLE    = 0x80;
36 
37 const SUF_FIRSTTIME  = 0x0001;
38 const SUF_EXPRESS    = 0x0002;
39 const SUF_BATCHINF   = 0x0004;
40 const SUF_CLEAN      = 0x0008;
41 const SUF_INSETUP    = 0x0010;
42 const SUF_NETSETUP   = 0x0020;
43 const SUF_NETHDBOOT  = 0x0040;
44 const SUF_NETRPLBOOT = 0x0080;
45 const SUF_SBSCOPYOK  = 0x0100;
46 
47 const VPDF_DISABLEPWRMGMT       = 1;
48 const VPDF_FORCEAPM10MODE       = 2;
49 const VPDF_SKIPINTELSLCHECK     = 4;
50 const VPDF_DISABLEPWRSTATUSPOLL = 8;
51 
52 const PCMCIA_OPT_HAVE_SOCKET  = 0x01;
53 const PCMCIA_OPT_AUTOMEM      = 0x04;
54 const PCMCIA_OPT_NO_SOUND     = 0x08;
55 const PCMCIA_OPT_NO_AUDIO     = 0x10;
56 const PCMCIA_OPT_NO_APMREMOVE = 0x20;
57 
58 const PCMCIA_DEF_MEMBEGIN   = 0x0C0000;
59 const PCMCIA_DEF_MEMEND     = 0xFFFFFF;
60 const PCMCIA_DEF_MEMLEN     = 0x001000;
61 const PCMCIA_DEF_MIN_REGION = 0x010000;
62 
63 enum {
64 	PCI_OPTIONS_USE_BIOS         = 1,
65 	PCI_OPTIONS_USE_IRQ_STEERING = 2
66 }
67 
68 const PCI_FLAG_NO_VIDEO_IRQ      = 0x0001;
69 const PCI_FLAG_PCMCIA_WANT_IRQ   = 0x0002;
70 const PCI_FLAG_DUAL_IDE          = 0x0004;
71 const PCI_FLAG_NO_ENUM_AT_ALL    = 0x0008;
72 const PCI_FLAG_ENUM_NO_RESOURCE  = 0x0010;
73 const PCI_FLAG_NEED_DWORD_ACCESS = 0x0020;
74 const PCI_FLAG_SINGLE_FUNCTION   = 0x0040;
75 const PCI_FLAG_ALWAYS_ENABLED    = 0x0080;
76 const PCI_FLAG_IS_IDE            = 0x0100;
77 const PCI_FLAG_IS_VIDEO          = 0x0200;
78 const PCI_FLAG_FAIL_START        = 0x0400;
79 
80 const size_t REGSTR_VAL_MAX_HCID_LEN = 1024;
81 
82 const REGDF_NOTDETIO        = 0x00000001;
83 const REGDF_NOTDETMEM       = 0x00000002;
84 const REGDF_NOTDETIRQ       = 0x00000004;
85 const REGDF_NOTDETDMA       = 0x00000008;
86 const REGDF_NOTDETALL       = REGDF_NOTDETIO | REGDF_NOTDETMEM | REGDF_NOTDETIRQ | REGDF_NOTDETDMA;
87 const REGDF_NEEDFULLCONFIG  = 0x00000010;
88 const REGDF_GENFORCEDCONFIG = 0x00000020;
89 const REGDF_NODETCONFIG     = 0x00008000;
90 const REGDF_CONFLICTIO      = 0x00010000;
91 const REGDF_CONFLICTMEM     = 0x00020000;
92 const REGDF_CONFLICTIRQ     = 0x00040000;
93 const REGDF_CONFLICTDMA     = 0x00080000;
94 const REGDF_CONFLICTALL     = REGDF_CONFLICTIO | REGDF_CONFLICTMEM | REGDF_CONFLICTIRQ | REGDF_CONFLICTDMA;
95 const REGDF_MAPIRQ2TO9      = 0x00100000;
96 const REGDF_NOTVERIFIED     = 0x80000000;
97 
98 const CONFIGFLAG_DISABLED       = 0x0001;
99 const CONFIGFLAG_REMOVED        = 0x0002;
100 const CONFIGFLAG_MANUAL_INSTALL = 0x0004;
101 const CONFIGFLAG_IGNORE_BOOT_LC = 0x0008;
102 const CONFIGFLAG_NET_BOOT       = 0x0010;
103 const CONFIGFLAG_REINSTALL      = 0x0020;
104 const CONFIGFLAG_FAILEDINSTALL  = 0x0040;
105 const CONFIGFLAG_CANTSTOPACHILD = 0x0080;
106 const CONFIGFLAG_OKREMOVEROM    = 0x0100;
107 const CONFIGFLAG_NOREMOVEEXIT   = 0x0200;
108 
109 const CSCONFIGFLAG_DISABLED      = 1;
110 const CSCONFIGFLAG_DO_NOT_CREATE = 2;
111 const CSCONFIGFLAG_DO_NOT_START  = 4;
112 const CSCONFIGFLAG_BITS          = 7;
113 
114 const DMSTATEFLAG_APPLYTOALL = 1;
115 
116 const NUM_RESOURCE_MAP = 256;
117 
118 const MF_FLAGS_EVEN_IF_NO_RESOURCE         = 1;
119 const MF_FLAGS_NO_CREATE_IF_NO_RESOURCE    = 2;
120 const MF_FLAGS_FILL_IN_UNKNOWN_RESOURCE    = 4;
121 const MF_FLAGS_CREATE_BUT_NO_SHOW_DISABLED = 8;
122 
123 const EISAFLAG_NO_IO_MERGE   = 1;
124 const EISAFLAG_SLOT_IO_FIRST = 2;
125 
126 const EISA_NO_MAX_FUNCTION   = 0xFF;
127 
128 const NUM_EISA_RANGES = 4;
129 
130 const APMMENUSUSPEND_DISABLED = 0;
131 const APMMENUSUSPEND_ENABLED  = 1;
132 const APMMENUSUSPEND_UNDOCKED = 2;
133 const APMMENUSUSPEND_NOCHANGE = 128;
134 
135 //#ifndef NEC_98
136 const TCHAR[]
137 	REGSTR_KEY_ISAENUM             = "ISAPnP",
138 	REGSTR_KEY_EISAENUM            = "EISA",
139 	REGSTR_VAL_EISA_RANGES         = "EISARanges",
140 	REGSTR_VAL_EISA_FUNCTIONS      = "EISAFunctions",
141 	REGSTR_VAL_EISA_FUNCTIONS_MASK = "EISAFunctionsMask",
142 	REGSTR_VAL_EISA_FLAGS          = "EISAFlags",
143 	REGSTR_VAL_EISA_SIMULATE_INT15 = "EISASimulateInt15";
144 // #else
145 // #define REGSTR_KEY_ISAENUM	TEXT("C98PnP")
146 // #define REGSTR_KEY_EISAENUM	TEXT("NESA")
147 // #define	REGSTR_VAL_EISA_RANGES	TEXT("NESARanges")
148 // #define	REGSTR_VAL_EISA_FUNCTIONS	TEXT("NESAFunctions")
149 // #define	REGSTR_VAL_EISA_FUNCTIONS_MASK	TEXT("NESAFunctionsMask")
150 // #define	REGSTR_VAL_EISA_FLAGS	TEXT("NESAFlags")
151 // #define	REGSTR_VAL_EISA_SIMULATE_INT15	TEXT("NESASimulateInt15")
152 // #endif
153 
154 const TCHAR[]
155 	REGSTR_KEY_CLASS                     = `Class`,
156 	REGSTR_KEY_CONFIG                    = `Config`,
157 	REGSTR_KEY_ENUM                      = `Enum`,
158 	REGSTR_KEY_ROOTENUM                  = `Root`,
159 	REGSTR_KEY_BIOSENUM                  = `BIOS`,
160 	REGSTR_KEY_PCMCIAENUM                = `PCMCIA`,
161 	REGSTR_KEY_PCIENUM                   = `PCI`,
162 	REGSTR_KEY_LOGCONFIG                 = `LogConfig`,
163 	REGSTR_KEY_SYSTEMBOARD               = `*PNP0C01`,
164 	REGSTR_KEY_APM                       = `*PNP0C05`,
165 	REGSTR_KEY_INIUPDATE                 = `IniUpdate`,
166 	REG_KEY_INSTDEV                      = `Installed`,
167 	REGSTR_KEY_DOSOPTCDROM               = `CD-ROM`,
168 	REGSTR_KEY_DOSOPTMOUSE               = `MOUSE`,
169 	REGSTR_DEFAULT_INSTANCE              = `0000`,
170 	REGSTR_PATH_MOTHERBOARD              = REGSTR_KEY_SYSTEMBOARD ~ `\` ~ REGSTR_DEFAULT_INSTANCE,
171 	REGSTR_PATH_SETUP                    = `Software\Microsoft\Windows\CurrentVersion`,
172 	REGSTR_PATH_PIFCONVERT               = `Software\Microsoft\Windows\CurrentVersion\PIFConvert`,
173 	REGSTR_PATH_MSDOSOPTS                = `Software\Microsoft\Windows\CurrentVersion\MS-DOSOptions`,
174 	REGSTR_PATH_MSDOSEMU                 = `Software\Microsoft\Windows\CurrentVersion\MS-DOS Emulation`,
175 	REGSTR_PATH_NEWDOSBOX                = `Software\Microsoft\Windows\CurrentVersion\MS-DOS Emulation\AppCompat`,
176 	REGSTR_PATH_RUNONCE                  = `Software\Microsoft\Windows\CurrentVersion\RunOnce`,
177 	REGSTR_PATH_RUN                      = `Software\Microsoft\Windows\CurrentVersion\Run`,
178 	REGSTR_PATH_RUNSERVICESONCE          = `Software\Microsoft\Windows\CurrentVersion\RunServicesOnce`,
179 	REGSTR_PATH_RUNSERVICES              = `Software\Microsoft\Windows\CurrentVersion\RunServices`,
180 
181 //#ifndef REGSTR_PATH_EXPLORER /* also in shlobj.h */
182 	REGSTR_PATH_EXPLORER                 = `Software\Microsoft\Windows\CurrentVersion\Explorer`,
183 //#endif
184 
185 	REGSTR_PATH_DETECT                   = `Software\Microsoft\Windows\CurrentVersion\Detect`,
186 	REGSTR_PATH_APPPATHS                 = `Software\Microsoft\Windows\CurrentVersion\App Paths`,
187 	REGSTR_PATH_UNINSTALL                = `Software\Microsoft\Windows\CurrentVersion\Uninstall`,
188 	REGSTR_PATH_REALMODENET              = `Software\Microsoft\Windows\CurrentVersion\Network\Real Mode Net`,
189 	REGSTR_PATH_NETEQUIV                 = `Software\Microsoft\Windows\CurrentVersion\Network\Equivalent`,
190 	REGSTR_PATH_CVNETWORK                = `Software\Microsoft\Windows\CurrentVersion\Network`,
191 	REGSTR_PATH_IDCONFIGDB               = `System\CurrentControlSet\Control\IDConfigDB`,
192 	REGSTR_PATH_CLASS                    = `System\CurrentControlSet\Services\Class`,
193 	REGSTR_PATH_DISPLAYSETTINGS          = `Display\Settings`,
194 	REGSTR_PATH_FONTS                    = `Display\Fonts`,
195 	REGSTR_PATH_ENUM                     = `Enum`,
196 	REGSTR_PATH_ROOT                     = `Enum\Root`,
197 	REGSTR_PATH_SERVICES                 = `System\CurrentControlSet\Services`,
198 	REGSTR_PATH_VXD                      = `System\CurrentControlSet\Services\VxD`,
199 	REGSTR_PATH_IOS                      = `System\CurrentControlSet\Services\VxD\IOS`,
200 	REGSTR_PATH_VMM                      = `System\CurrentControlSet\Services\VxD\VMM`,
201 	REGSTR_PATH_VPOWERD                  = `System\CurrentControlSet\Services\VxD\VPOWERD`,
202 	REGSTR_PATH_VNETSUP                  = `System\CurrentControlSet\Services\VxD\VNETSUP`,
203 	REGSTR_PATH_NWREDIR                  = `System\CurrentControlSet\Services\VxD\NWREDIR`,
204 	REGSTR_PATH_NCPSERVER                = `System\CurrentControlSet\Services\NcpServer\Parameters`,
205 	REGSTR_PATH_IOARB                    = `System\CurrentControlSet\Services\Arbitrators\IOArb`,
206 	REGSTR_PATH_ADDRARB                  = `System\CurrentControlSet\Services\Arbitrators\AddrArb`,
207 	REGSTR_PATH_DMAARB                   = `System\CurrentControlSet\Services\Arbitrators\DMAArb`,
208 	REGSTR_PATH_IRQARB                   = `System\CurrentControlSet\Services\Arbitrators\IRQArb`,
209 	REGSTR_PATH_CODEPAGE                 = `System\CurrentControlSet\Control\Nls\Codepage`,
210 	REGSTR_PATH_FILESYSTEM               = `System\CurrentControlSet\Control\FileSystem`,
211 	REGSTR_PATH_FILESYSTEM_NOVOLTRACK    = `System\CurrentControlSet\Control\FileSystem\NoVolTrack`,
212 	REGSTR_PATH_CDFS                     = `System\CurrentControlSet\Control\FileSystem\CDFS`,
213 	REGSTR_PATH_WINBOOT                  = `System\CurrentControlSet\Control\WinBoot`,
214 	REGSTR_PATH_INSTALLEDFILES           = `System\CurrentControlSet\Control\InstalledFiles`,
215 	REGSTR_PATH_VMM32FILES               = `System\CurrentControlSet\Control\VMM32Files`,
216 
217 	REGSTR_VAL_BITSPERPIXEL              = `BitsPerPixel`,
218 	REGSTR_VAL_RESOLUTION                = `Resolution`,
219 	REGSTR_VAL_DPILOGICALX               = `DPILogicalX`,
220 	REGSTR_VAL_DPILOGICALY               = `DPILogicalY`,
221 	REGSTR_VAL_DPIPHYSICALX              = `DPIPhysicalX`,
222 	REGSTR_VAL_DPIPHYSICALY              = `DPIPhysicalY`,
223 	REGSTR_VAL_REFRESHRATE               = `RefreshRate`,
224 	REGSTR_VAL_DISPLAYFLAGS              = `DisplayFlags`,
225 	REGSTR_PATH_CONTROLPANEL             = `Control Panel`,
226 	REGSTR_PATH_CONTROLSFOLDER           = `Software\Microsoft\Windows\CurrentVersion\Controls Folder`,
227 	REGSTR_VAL_DOSCP                     = `OEMCP`,
228 	REGSTR_VAL_WINCP                     = `ACP`,
229 	REGSTR_PATH_DYNA_ENUM                = `Config Manager\Enum`,
230 	REGSTR_VAL_HARDWARE_KEY              = `HardWareKey`,
231 	REGSTR_VAL_ALLOCATION                = `Allocation`,
232 	REGSTR_VAL_PROBLEM                   = `Problem`,
233 	REGSTR_VAL_STATUS                    = `Status`,
234 	REGSTR_VAL_DONTUSEMEM                = `DontAllocLastMem`,
235 	REGSTR_VAL_SYSTEMROOT                = `SystemRoot`,
236 	REGSTR_VAL_BOOTCOUNT                 = `BootCount`,
237 	REGSTR_VAL_REALNETSTART              = `RealNetStart`,
238 	REGSTR_VAL_MEDIA                     = `MediaPath`,
239 	REGSTR_VAL_CONFIG                    = `ConfigPath`,
240 	REGSTR_VAL_DEVICEPATH                = `DevicePath`,
241 	REGSTR_VAL_SRCPATH                   = `SourcePath`,
242 	REGSTR_VAL_OLDWINDIR                 = `OldWinDir`,
243 	REGSTR_VAL_SETUPFLAGS                = `SetupFlags`,
244 	REGSTR_VAL_REGOWNER                  = `RegisteredOwner`,
245 	REGSTR_VAL_REGORGANIZATION           = `RegisteredOrganization`,
246 	REGSTR_VAL_LICENSINGINFO             = `LicensingInfo`,
247 	REGSTR_VAL_OLDMSDOSVER               = `OldMSDOSVer`,
248 	REGSTR_VAL_FIRSTINSTALLDATETIME      = `FirstInstallDateTime`,
249 	REGSTR_VAL_INSTALLTYPE               = `InstallType`,
250 	REGSTR_VAL_WRAPPER                   = `Wrapper`,
251 
252 	REGSTR_KEY_SETUP                     = `\Setup`,
253 	REGSTR_VAL_BOOTDIR                   = `BootDir`,
254 	REGSTR_VAL_WINBOOTDIR                = `WinbootDir`,
255 	REGSTR_VAL_WINDIR                    = `WinDir`,
256 	REGSTR_VAL_APPINSTPATH               = `AppInstallPath`,
257 	REGSTR_PATH_EBD                      = REGSTR_PATH_SETUP ~ REGSTR_KEY_SETUP ~ `\EBD`,
258 	REGSTR_KEY_EBDFILESLOCAL             = `EBDFilesLocale`,
259 	REGSTR_KEY_EBDFILESKEYBOARD          = `EBDFilesKeyboard`,
260 	REGSTR_KEY_EBDAUTOEXECBATLOCAL       = `EBDAutoexecBatLocale`,
261 	REGSTR_KEY_EBDAUTOEXECBATKEYBOARD    = `EBDAutoexecBatKeyboard`,
262 	REGSTR_KEY_EBDCONFIGSYSLOCAL         = `EBDConfigSysLocale`,
263 	REGSTR_KEY_EBDCONFIGSYSKEYBOARD      = `EBDConfigSysKeyboard`,
264 	REGSTR_VAL_MSDOSMODE                 = `MSDOSMode`,
265 	REGSTR_VAL_MSDOSMODEDISCARD          = `Discard`,
266 	REGSTR_VAL_DOSOPTGLOBALFLAGS         = `GlobalFlags`,
267 	REGSTR_VAL_DOSOPTFLAGS               = `Flags`,
268 	REGSTR_VAL_OPTORDER                  = `Order`,
269 	REGSTR_VAL_CONFIGSYS                 = `Config.Sys`,
270 	REGSTR_VAL_AUTOEXEC                  = `Autoexec.Bat`,
271 	REGSTR_VAL_STDDOSOPTION              = `StdOption`,
272 	REGSTR_VAL_DOSOPTTIP                 = `TipText`,
273 
274 	REGSTR_VAL_DOSPAGER                  = `DOSPager`,
275 	REGSTR_VAL_VXDGROUPS                 = `VXDGroups`,
276 	REGSTR_VAL_VPOWERDFLAGS              = `Flags`,
277 
278 	REGSTR_VAL_WORKGROUP                 = `Workgroup`,
279 	REGSTR_VAL_DIRECTHOST                = `DirectHost`,
280 	REGSTR_VAL_FILESHARING               = `FileSharing`,
281 	REGSTR_VAL_PRINTSHARING              = `PrintSharing`,
282 	REGSTR_VAL_FIRSTNETDRIVE             = `FirstNetworkDrive`,
283 	REGSTR_VAL_MAXCONNECTIONS            = `MaxConnections`,
284 	REGSTR_VAL_APISUPPORT                = `APISupport`,
285 	REGSTR_VAL_MAXRETRY                  = `MaxRetry`,
286 	REGSTR_VAL_MINRETRY                  = `MinRetry`,
287 	REGSTR_VAL_SUPPORTLFN                = `SupportLFN`,
288 	REGSTR_VAL_SUPPORTBURST              = `SupportBurst`,
289 	REGSTR_VAL_SUPPORTTUNNELLING         = `SupportTunnelling`,
290 	REGSTR_VAL_FULLTRACE                 = `FullTrace`,
291 	REGSTR_VAL_READCACHING               = `ReadCaching`,
292 	REGSTR_VAL_SHOWDOTS                  = `ShowDots`,
293 	REGSTR_VAL_GAPTIME                   = `GapTime`,
294 	REGSTR_VAL_SEARCHMODE                = `SearchMode`,
295 	REGSTR_VAL_SHELLVERSION              = `ShellVersion`,
296 	REGSTR_VAL_MAXLIP                    = `MaxLIP`,
297 	REGSTR_VAL_PRESERVECASE              = `PreserveCase`,
298 	REGSTR_VAL_OPTIMIZESFN               = `OptimizeSFN`,
299 	REGSTR_VAL_NCP_BROWSEMASTER          = `BrowseMaster`,
300 	REGSTR_VAL_NCP_USEPEERBROWSING       = `Use_PeerBrowsing`,
301 	REGSTR_VAL_NCP_USESAP                = `Use_Sap`,
302 	REGSTR_VAL_WIN31FILESYSTEM           = `Win31FileSystem`,
303 	REGSTR_VAL_PRESERVELONGNAMES         = `PreserveLongNames`,
304 	REGSTR_VAL_DRIVEWRITEBEHIND          = `DriveWriteBehind`,
305 	REGSTR_VAL_ASYNCFILECOMMIT           = `AsyncFileCommit`,
306 	REGSTR_VAL_PATHCACHECOUNT            = `PathCache`,
307 	REGSTR_VAL_NAMECACHECOUNT            = `NameCache`,
308 	REGSTR_VAL_CONTIGFILEALLOC           = `ContigFileAllocSize`,
309 	REGSTR_VAL_VOLIDLETIMEOUT            = `VolumeIdleTimeout`,
310 	REGSTR_VAL_BUFFIDLETIMEOUT           = `BufferIdleTimeout`,
311 	REGSTR_VAL_BUFFAGETIMEOUT            = `BufferAgeTimeout`,
312 	REGSTR_VAL_NAMENUMERICTAIL           = `NameNumericTail`,
313 	REGSTR_VAL_READAHEADTHRESHOLD        = `ReadAheadThreshold`,
314 	REGSTR_VAL_DOUBLEBUFFER              = `DoubleBuffer`,
315 	REGSTR_VAL_SOFTCOMPATMODE            = `SoftCompatMode`,
316 	REGSTR_VAL_DRIVESPINDOWN             = `DriveSpinDown`,
317 	REGSTR_VAL_FORCEPMIO                 = `ForcePMIO`,
318 	REGSTR_VAL_FORCERMIO                 = `ForceRMIO`,
319 	REGSTR_VAL_LASTBOOTPMDRVS            = `LastBootPMDrvs`,
320 	REGSTR_VAL_VIRTUALHDIRQ              = `VirtualHDIRQ`,
321 	REGSTR_VAL_SRVNAMECACHECOUNT         = `ServerNameCacheMax`,
322 	REGSTR_VAL_SRVNAMECACHE              = `ServerNameCache`,
323 	REGSTR_VAL_SRVNAMECACHENETPROV       = `ServerNameCacheNumNets`,
324 	REGSTR_VAL_AUTOMOUNT                 = `AutoMountDrives`,
325 	REGSTR_VAL_COMPRESSIONMETHOD         = `CompressionAlgorithm`,
326 	REGSTR_VAL_COMPRESSIONTHRESHOLD      = `CompressionThreshold`,
327 	REGSTR_VAL_CDCACHESIZE               = `CacheSize`,
328 	REGSTR_VAL_CDPREFETCH                = `Prefetch`,
329 	REGSTR_VAL_CDPREFETCHTAIL            = `PrefetchTail`,
330 	REGSTR_VAL_CDRAWCACHE                = `RawCache`,
331 	REGSTR_VAL_CDEXTERRORS               = `ExtendedErrors`,
332 	REGSTR_VAL_CDSVDSENSE                = `SVDSense`,
333 	REGSTR_VAL_CDSHOWVERSIONS            = `ShowVersions`,
334 	REGSTR_VAL_CDCOMPATNAMES             = `MSCDEXCompatNames`,
335 	REGSTR_VAL_CDNOREADAHEAD             = `NoReadAhead`,
336 	REGSTR_VAL_SCSI                      = `SCSI\`,
337 	REGSTR_VAL_ESDI                      = `ESDI\`,
338 	REGSTR_VAL_FLOP                      = `FLOP\`,
339 	REGSTR_VAL_DISK                      = `GenDisk`,
340 	REGSTR_VAL_CDROM                     = `GenCD`,
341 	REGSTR_VAL_TAPE                      = `TAPE`,
342 	REGSTR_VAL_SCANNER                   = `SCANNER`,
343 	REGSTR_VAL_FLOPPY                    = `FLOPPY`,
344 	REGSTR_VAL_SCSITID                   = `SCSITargetID`,
345 	REGSTR_VAL_SCSILUN                   = `SCSILUN`,
346 	REGSTR_VAL_REVLEVEL                  = `RevisionLevel`,
347 	REGSTR_VAL_PRODUCTID                 = `ProductId`,
348 	REGSTR_VAL_PRODUCTTYPE               = `ProductType`,
349 	REGSTR_VAL_DEVTYPE                   = `DeviceType`,
350 	REGSTR_VAL_REMOVABLE                 = `Removable`,
351 	REGSTR_VAL_CURDRVLET                 = `CurrentDriveLetterAssignment`,
352 	REGSTR_VAL_USRDRVLET                 = `UserDriveLetterAssignment`,
353 	REGSTR_VAL_SYNCDATAXFER              = `SyncDataXfer`,
354 	REGSTR_VAL_AUTOINSNOTE               = `AutoInsertNotification`,
355 	REGSTR_VAL_DISCONNECT                = `Disconnect`,
356 	REGSTR_VAL_INT13                     = `Int13`,
357 	REGSTR_VAL_PMODE_INT13               = `PModeInt13`,
358 	REGSTR_VAL_USERSETTINGS              = `AdapterSettings`,
359 	REGSTR_VAL_NOIDE                     = `NoIDE`,
360 	REGSTR_VAL_DISKCLASSNAME             = `DiskDrive`,
361 	REGSTR_VAL_CDROMCLASSNAME            = `CDROM`,
362 	REGSTR_VAL_FORCELOAD                 = `ForceLoadPD`,
363 	REGSTR_VAL_FORCEFIFO                 = `ForceFIFO`,
364 	REGSTR_VAL_FORCECL                   = `ForceChangeLine`,
365 	REGSTR_VAL_NOUSECLASS                = `NoUseClass`,
366 	REGSTR_VAL_NOINSTALLCLASS            = `NoInstallClass`,
367 	REGSTR_VAL_NODISPLAYCLASS            = `NoDisplayClass`,
368 	REGSTR_VAL_SILENTINSTALL             = `SilentInstall`,
369 	REGSTR_KEY_PCMCIA_CLASS              = `PCMCIA`,
370 	REGSTR_KEY_SCSI_CLASS                = `SCSIAdapter`,
371 	REGSTR_KEY_PORTS_CLASS               = `ports`,
372 	REGSTR_KEY_MEDIA_CLASS               = `MEDIA`,
373 	REGSTR_KEY_DISPLAY_CLASS             = `Display`,
374 	REGSTR_KEY_KEYBOARD_CLASS            = `Keyboard`,
375 	REGSTR_KEY_MOUSE_CLASS               = `Mouse`,
376 	REGSTR_KEY_MONITOR_CLASS             = `Monitor`,
377 	REGSTR_VAL_PCMCIA_OPT                = `Options`,
378 	REGSTR_VAL_PCMCIA_MEM                = `Memory`,
379 	REGSTR_VAL_PCMCIA_ALLOC              = `AllocMemWin`,
380 	REGSTR_VAL_PCMCIA_ATAD               = `ATADelay`,
381 	REGSTR_VAL_PCMCIA_SIZ                = `MinRegionSize`,
382 	REGSTR_VAL_P1284MDL                  = `Model`,
383 	REGSTR_VAL_P1284MFG                  = `Manufacturer`,
384 	REGSTR_VAL_ISAPNP                    = `ISAPNP`,
385 	REGSTR_VAL_ISAPNP_RDP_OVERRIDE       = `RDPOverRide`,
386 	REGSTR_VAL_PCI                       = `PCI`,
387 	REGSTR_PCI_OPTIONS                   = `Options`,
388 	REGSTR_PCI_DUAL_IDE                  = `PCIDualIDE`,
389 
390 	REGSTR_KEY_CRASHES                   = `Crashes`,
391 	REGSTR_KEY_DANGERS                   = `Dangers`,
392 	REGSTR_KEY_DETMODVARS                = `DetModVars`,
393 	REGSTR_KEY_NDISINFO                  = `NDISInfo`,
394 	REGSTR_VAL_PROTINIPATH               = `ProtIniPath`,
395 	REGSTR_VAL_RESOURCES                 = `Resources`,
396 	REGSTR_VAL_CRASHFUNCS                = `CrashFuncs`,
397 	REGSTR_VAL_CLASS                     = `Class`,
398 	REGSTR_VAL_DEVDESC                   = `DeviceDesc`,
399 	REGSTR_VAL_BOOTCONFIG                = `BootConfig`,
400 	REGSTR_VAL_DETFUNC                   = `DetFunc`,
401 	REGSTR_VAL_DETFLAGS                  = `DetFlags`,
402 	REGSTR_VAL_COMPATIBLEIDS             = `CompatibleIDs`,
403 	REGSTR_VAL_DETCONFIG                 = `DetConfig`,
404 	REGSTR_VAL_VERIFYKEY                 = `VerifyKey`,
405 	REGSTR_VAL_COMINFO                   = `ComInfo`,
406 	REGSTR_VAL_INFNAME                   = `InfName`,
407 	REGSTR_VAL_CARDSPECIFIC              = `CardSpecific`,
408 	REGSTR_VAL_NETOSTYPE                 = `NetOSType`,
409 	REGSTR_DATA_NETOS_NDIS               = `NDIS`,
410 	REGSTR_DATA_NETOS_ODI                = `ODI`,
411 	REGSTR_DATA_NETOS_IPX                = `IPX`,
412 	REGSTR_VAL_MFG                       = `Mfg`,
413 	REGSTR_VAL_SCAN_ONLY_FIRST           = `ScanOnlyFirstDrive`,
414 	REGSTR_VAL_SHARE_IRQ                 = `ForceIRQSharing`,
415 	REGSTR_VAL_NONSTANDARD_ATAPI         = `NonStandardATAPI`,
416 	REGSTR_VAL_IDE_FORCE_SERIALIZE       = `ForceSerialization`,
417 	REGSTR_VAL_HWREV                     = `HWRevision`,
418 	REGSTR_VAL_ENABLEINTS                = `EnableInts`,
419 
420 	REGSTR_VAL_APMBIOSVER                = `APMBiosVer`,
421 	REGSTR_VAL_APMFLAGS                  = `APMFlags`,
422 	REGSTR_VAL_SLSUPPORT                 = `SLSupport`,
423 	REGSTR_VAL_MACHINETYPE               = `MachineType`,
424 	REGSTR_VAL_SETUPMACHINETYPE          = `SetupMachineType`,
425 	REGSTR_MACHTYPE_UNKNOWN              = `Unknown`,
426 	REGSTR_MACHTYPE_IBMPC                = `IBM PC`,
427 	REGSTR_MACHTYPE_IBMPCJR              = `IBM PCjr`,
428 	REGSTR_MACHTYPE_IBMPCCONV            = `IBM PC Convertible`,
429 	REGSTR_MACHTYPE_IBMPCXT              = `IBM PC/XT`,
430 	REGSTR_MACHTYPE_IBMPCXT_286          = `IBM PC/XT 286`,
431 	REGSTR_MACHTYPE_IBMPCAT              = `IBM PC/AT`,
432 	REGSTR_MACHTYPE_IBMPS2_25            = `IBM PS/2-25`,
433 	REGSTR_MACHTYPE_IBMPS2_30_286        = `IBM PS/2-30 286`,
434 	REGSTR_MACHTYPE_IBMPS2_30            = `IBM PS/2-30`,
435 	REGSTR_MACHTYPE_IBMPS2_50            = `IBM PS/2-50`,
436 	REGSTR_MACHTYPE_IBMPS2_50Z           = `IBM PS/2-50Z`,
437 	REGSTR_MACHTYPE_IBMPS2_55SX          = `IBM PS/2-55SX`,
438 	REGSTR_MACHTYPE_IBMPS2_60            = `IBM PS/2-60`,
439 	REGSTR_MACHTYPE_IBMPS2_65SX          = `IBM PS/2-65SX`,
440 	REGSTR_MACHTYPE_IBMPS2_70            = `IBM PS/2-70`,
441 	REGSTR_MACHTYPE_IBMPS2_P70           = `IBM PS/2-P70`,
442 	REGSTR_MACHTYPE_IBMPS2_70_80         = `IBM PS/2-70/80`,
443 	REGSTR_MACHTYPE_IBMPS2_80            = `IBM PS/2-80`,
444 	REGSTR_MACHTYPE_IBMPS2_90            = `IBM PS/2-90`,
445 	REGSTR_MACHTYPE_IBMPS1               = `IBM PS/1`,
446 	REGSTR_MACHTYPE_PHOENIX_PCAT         = `Phoenix PC/AT Compatible`,
447 	REGSTR_MACHTYPE_HP_VECTRA            = `HP Vectra`,
448 	REGSTR_MACHTYPE_ATT_PC               = `AT&T PC`,
449 	REGSTR_MACHTYPE_ZENITH_PC            = `Zenith PC`,
450 	REGSTR_VAL_APMMENUSUSPEND            = `APMMenuSuspend`,
451 
452 	REGSTR_VAL_BUSTYPE                   = `BusType`,
453 	REGSTR_VAL_CPU                       = `CPU`,
454 	REGSTR_VAL_NDP                       = `NDP`,
455 	REGSTR_VAL_PNPBIOSVER                = `PnPBIOSVer`,
456 	REGSTR_VAL_PNPSTRUCOFFSET            = `PnPStrucOffset`,
457 	REGSTR_VAL_PCIBIOSVER                = `PCIBIOSVer`,
458 	REGSTR_VAL_HWMECHANISM               = `HWMechanism`,
459 	REGSTR_VAL_LASTPCIBUSNUM             = `LastPCIBusNum`,
460 	REGSTR_VAL_CONVMEM                   = `ConvMem`,
461 	REGSTR_VAL_EXTMEM                    = `ExtMem`,
462 	REGSTR_VAL_COMPUTERNAME              = `ComputerName`,
463 	REGSTR_VAL_BIOSNAME                  = `BIOSName`,
464 	REGSTR_VAL_BIOSVERSION               = `BIOSVersion`,
465 	REGSTR_VAL_BIOSDATE                  = `BIOSDate`,
466 	REGSTR_VAL_MODEL                     = `Model`,
467 	REGSTR_VAL_SUBMODEL                  = `Submodel`,
468 	REGSTR_VAL_REVISION                  = `Revision`,
469 	REGSTR_VAL_FIFODEPTH                 = `FIFODepth`,
470 	REGSTR_VAL_RDINTTHRESHOLD            = `RDIntThreshold`,
471 	REGSTR_VAL_WRINTTHRESHOLD            = `WRIntThreshold`,
472 	REGSTR_VAL_PRIORITY                  = `Priority`,
473 	REGSTR_VAL_DRIVER                    = `Driver`,
474 	REGSTR_VAL_FUNCDESC                  = `FunctionDesc`,
475 	REGSTR_VAL_FORCEDCONFIG              = `ForcedConfig`,
476 	REGSTR_VAL_CONFIGFLAGS               = `ConfigFlags`,
477 	REGSTR_VAL_CSCONFIGFLAGS             = `CSConfigFlags`,
478 
479 	REGSTR_VAL_ROOT_DEVNODE              = `HTREE\ROOT\0`,
480 	REGSTR_VAL_RESERVED_DEVNODE          = `HTREE\RESERVED\0`,
481 	REGSTR_PATH_READDATAPORT             = REGSTR_KEY_ISAENUM ~ `\ReadDataPort\0`,
482 	REGSTR_PATH_MULTI_FUNCTION           = `MF`,
483 	REGSTR_VAL_RESOURCE_MAP              = `ResourceMap`,
484 	REGSTR_PATH_CHILD_PREFIX             = `Child`,
485 	REGSTR_VAL_MF_FLAGS                  = `MFFlags`,
486 	REGSTR_VAL_DRVDESC                   = `DriverDesc`,
487 	REGSTR_VAL_DEVLOADER                 = `DevLoader`,
488 	REGSTR_VAL_STATICVXD                 = `StaticVxD`,
489 	REGSTR_VAL_PROPERTIES                = `Properties`,
490 	REGSTR_VAL_MANUFACTURER              = `Manufacturer`,
491 	REGSTR_VAL_EXISTS                    = `Exists`,
492 	REGSTR_VAL_CMENUMFLAGS               = `CMEnumFlags`,
493 	REGSTR_VAL_CMDRIVFLAGS               = `CMDrivFlags`,
494 	REGSTR_VAL_ENUMERATOR                = `Enumerator`,
495 	REGSTR_VAL_DEVICEDRIVER              = `DeviceDriver`,
496 	REGSTR_VAL_PORTNAME                  = `PortName`,
497 	REGSTR_VAL_INFPATH                   = `InfPath`,
498 	REGSTR_VAL_INFSECTION                = `InfSection`,
499 	REGSTR_VAL_POLLING                   = `Polling`,
500 	REGSTR_VAL_DONTLOADIFCONFLICT        = `DontLoadIfConflict`,
501 	REGSTR_VAL_PORTSUBCLASS              = `PortSubClass`,
502 	REGSTR_VAL_NETCLEAN                  = `NetClean`,
503 	REGSTR_VAL_IDE_NO_SERIALIZE          = `IDENoSerialize`,
504 	REGSTR_VAL_NOCMOSORFDPT              = `NoCMOSorFDPT`,
505 	REGSTR_VAL_COMVERIFYBASE             = `COMVerifyBase`,
506 	REGSTR_KEY_OVERRIDE                  = `Override`,
507 	REGSTR_VAL_CONFIGMG                  = `CONFIGMG`,
508 	REGSTR_VAL_SYSDM                     = `SysDM`,
509 	REGSTR_VAL_SYSDMFUNC                 = `SysDMFunc`,
510 	REGSTR_VAL_PRIVATE                   = `Private`,
511 	REGSTR_VAL_PRIVATEFUNC               = `PrivateFunc`,
512 	REGSTR_VAL_DETECT                    = `Detect`,
513 	REGSTR_VAL_DETECTFUNC                = `DetectFunc`,
514 	REGSTR_VAL_ASKFORCONFIG              = `AskForConfig`,
515 	REGSTR_VAL_ASKFORCONFIGFUNC          = `AskForConfigFunc`,
516 	REGSTR_VAL_WAITFORUNDOCK             = `WaitForUndock`,
517 	REGSTR_VAL_WAITFORUNDOCKFUNC         = `WaitForUndockFunc`,
518 	REGSTR_VAL_REMOVEROMOKAY             = `RemoveRomOkay`,
519 	REGSTR_VAL_REMOVEROMOKAYFUNC         = `RemoveRomOkayFunc`,
520 	REGSTR_VAL_CURCONFIG                 = `CurrentConfig`,
521 	REGSTR_VAL_FRIENDLYNAME              = `FriendlyName`,
522 	REGSTR_VAL_CURRENTCONFIG             = `CurrentConfig`,
523 	REGSTR_VAL_MAP                       = `Map`,
524 	REGSTR_VAL_ID                        = `CurrentID`,
525 	REGSTR_VAL_DOCKED                    = `CurrentDockedState`,
526 	REGSTR_VAL_CHECKSUM                  = `CurrentChecksum`,
527 	REGSTR_VAL_HWDETECT                  = `HardwareDetect`,
528 	REGSTR_VAL_INHIBITRESULTS            = `InhibitResults`,
529 	REGSTR_VAL_PROFILEFLAGS              = `ProfileFlags`,
530 	REGSTR_KEY_PCMCIA                    = `PCMCIA\`,
531 	REGSTR_KEY_PCUNKNOWN                 = `UNKNOWN_MANUFACTURER`,
532 	REGSTR_VAL_PCSSDRIVER                = `Driver`,
533 	REGSTR_KEY_PCMTD                     = `MTD-`,
534 	REGSTR_VAL_PCMTDRIVER                = `MTD`,
535 	REGSTR_VAL_HARDWAREID                = `HardwareID`,
536 	REGSTR_VAL_INSTALLER                 = `Installer`,
537 	REGSTR_VAL_INSICON                   = `Icon`,
538 	REGSTR_VAL_ENUMPROPPAGES             = `EnumPropPages`,
539 	REGSTR_VAL_BASICPROPERTIES           = `BasicProperties`,
540 	REGSTR_VAL_PRIVATEPROBLEM            = `PrivateProblem`,
541 	REGSTR_KEY_CURRENT                   = `Current`,
542 	REGSTR_KEY_DEFAULT                   = `Default`,
543 	REGSTR_KEY_MODES                     = `Modes`,
544 	REGSTR_VAL_MODE                      = `Mode`,
545 	REGSTR_VAL_BPP                       = `BPP`,
546 	REGSTR_VAL_HRES                      = `HRes`,
547 	REGSTR_VAL_VRES                      = `VRes`,
548 	REGSTR_VAL_FONTSIZE                  = `FontSize`,
549 	REGSTR_VAL_DRV                       = `drv`,
550 	REGSTR_VAL_GRB                       = `grb`,
551 	REGSTR_VAL_VDD                       = `vdd`,
552 	REGSTR_VAL_VER                       = `Ver`,
553 	REGSTR_VAL_MAXRES                    = `MaxResolution`,
554 	REGSTR_VAL_DPMS                      = `DPMS`,
555 	REGSTR_VAL_RESUMERESET               = `ResumeReset`,
556 	REGSTR_VAL_DESCRIPTION               = `Description`,
557 	REGSTR_KEY_SYSTEM                    = `System`,
558 	REGSTR_KEY_USER                      = `User`,
559 	REGSTR_VAL_DPI                       = `dpi`,
560 	REGSTR_VAL_PCICOPTIONS               = `PCICOptions`,
561 
562 	REGSTR_VAL_PCICIRQMAP                = `PCICIRQMap`,
563 	REGSTR_PATH_APPEARANCE               = `Control Panel\Appearance`,
564 	REGSTR_PATH_LOOKSCHEMES              = `Control Panel\Appearance\Schemes`,
565 	REGSTR_VAL_CUSTOMCOLORS              = `CustomColors`,
566 	REGSTR_PATH_SCREENSAVE               = `Control Panel\Desktop`,
567 	REGSTR_VALUE_USESCRPASSWORD          = `ScreenSaveUsePassword`,
568 	REGSTR_VALUE_SCRPASSWORD             = `ScreenSave_Data`,
569 	REGSTR_VALUE_LOWPOWERTIMEOUT         = `ScreenSaveLowPowerTimeout`,
570 	REGSTR_VALUE_POWEROFFTIMEOUT         = `ScreenSavePowerOffTimeout`,
571 	REGSTR_VALUE_LOWPOWERACTIVE          = `ScreenSaveLowPowerActive`,
572 	REGSTR_VALUE_POWEROFFACTIVE          = `ScreenSavePowerOffActive`,
573 	REGSTR_PATH_WINDOWSAPPLETS           = `Software\Microsoft\Windows\CurrentVersion\Applets`,
574 	REGSTR_PATH_SYSTRAY                  = `Software\Microsoft\Windows\CurrentVersion\Applets\SysTray`,
575 	REGSTR_VAL_SYSTRAYSVCS               = `Services`,
576 	REGSTR_VAL_SYSTRAYBATFLAGS           = `PowerFlags`,
577 	REGSTR_VAL_SYSTRAYPCCARDFLAGS        = `PCMCIAFlags`,
578 	REGSTR_PATH_NETWORK_USERSETTINGS     = `Network`,
579 	REGSTR_KEY_NETWORK_PERSISTENT        = `\Persistent`,
580 	REGSTR_KEY_NETWORK_RECENT            = `\Recent`,
581 	REGSTR_VAL_REMOTE_PATH               = `RemotePath`,
582 	REGSTR_VAL_USER_NAME                 = `UserName`,
583 	REGSTR_VAL_PROVIDER_NAME             = `ProviderName`,
584 	REGSTR_VAL_CONNECTION_TYPE           = `ConnectionType`,
585 	REGSTR_VAL_UPGRADE                   = `Upgrade`,
586 	REGSTR_KEY_LOGON                     = `\Logon`,
587 	REGSTR_VAL_MUSTBEVALIDATED           = `MustBeValidated`,
588 	REGSTR_VAL_RUNLOGINSCRIPT            = `ProcessLoginScript`,
589 	REGSTR_KEY_NETWORKPROVIDER           = `\NetworkProvider`,
590 	REGSTR_PATH_NW32NETPROVIDER          =REGSTR_PATH_SERVICES ~ `\NWNP32` ~ REGSTR_KEY_NETWORKPROVIDER,
591 	REGSTR_PATH_MS32NETPROVIDER          =REGSTR_PATH_SERVICES ~ `\MSNP32` ~ REGSTR_KEY_NETWORKPROVIDER,
592 	REGSTR_VAL_AUTHENT_AGENT             = `AuthenticatingAgent`,
593 	REGSTR_VAL_PREFREDIR                 = `PreferredRedir`,
594 	REGSTR_VAL_AUTOSTART                 = `AutoStart`,
595 	REGSTR_VAL_AUTOLOGON                 = `AutoLogon`,
596 	REGSTR_VAL_NETCARD                   = `Netcard`,
597 	REGSTR_VAL_TRANSPORT                 = `Transport`,
598 	REGSTR_VAL_DYNAMIC                   = `Dynamic`,
599 	REGSTR_VAL_TRANSITION                = `Transition`,
600 	REGSTR_VAL_STATICDRIVE               = `StaticDrive`,
601 	REGSTR_VAL_LOADHI                    = `LoadHi`,
602 	REGSTR_VAL_LOADRMDRIVERS             = `LoadRMDrivers`,
603 	REGSTR_VAL_SETUPN                    = `SetupN`,
604 	REGSTR_VAL_SETUPNPATH                = `SetupNPath`,
605 	REGSTR_VAL_WRKGRP_FORCEMAPPING       = `WrkgrpForceMapping`,
606 	REGSTR_VAL_WRKGRP_REQUIRED           = `WrkgrpRequired`,
607 	REGSTR_PATH_CURRENT_CONTROL_SET      = `System\CurrentControlSet\Control`,
608 	REGSTR_VAL_CURRENT_USER              = `Current User`,
609 	REGSTR_PATH_PWDPROVIDER              = `System\CurrentControlSet\Control\PwdProvider`,
610 	REGSTR_VAL_PWDPROVIDER_PATH          = `ProviderPath`,
611 	REGSTR_VAL_PWDPROVIDER_DESC          = `Description`,
612 	REGSTR_VAL_PWDPROVIDER_CHANGEPWD     = `ChangePassword`,
613 	REGSTR_VAL_PWDPROVIDER_CHANGEPWDHWND = `ChangePasswordHwnd`,
614 	REGSTR_VAL_PWDPROVIDER_GETPWDSTATUS  = `GetPasswordStatus`,
615 	REGSTR_VAL_PWDPROVIDER_ISNP          = `NetworkProvider`,
616 	REGSTR_VAL_PWDPROVIDER_CHANGEORDER   = `ChangeOrder`,
617 	REGSTR_PATH_POLICIES                 = `Software\Microsoft\Windows\CurrentVersion\Policies`,
618 	REGSTR_PATH_UPDATE                   = `System\CurrentControlSet\Control\Update`,
619 	REGSTR_VALUE_ENABLE                  = `Enable`,
620 	REGSTR_VALUE_VERBOSE                 = `Verbose`,
621 	REGSTR_VALUE_NETPATH                 = `NetworkPath`,
622 	REGSTR_VALUE_DEFAULTLOC              = `UseDefaultNetLocation`,
623 	REGSTR_KEY_NETWORK                   = `Network`,
624 // [Redefined] REGSTR_KEY_SYSTEM         = `System`)
625 	REGSTR_KEY_PRINTERS                  = `Printers`,
626 	REGSTR_KEY_WINOLDAPP                 = `WinOldApp`,
627 	REGSTR_VAL_NOFILESHARING             = `NoFileSharing`,
628 	REGSTR_VAL_NOPRINTSHARING            = `NoPrintSharing`,
629 	REGSTR_VAL_NOFILESHARINGCTRL         = `NoFileSharingControl`,
630 	REGSTR_VAL_NOPRINTSHARINGCTRL        = `NoPrintSharingControl`,
631 	REGSTR_VAL_HIDESHAREPWDS             = `HideSharePwds`,
632 	REGSTR_VAL_DISABLEPWDCACHING         = `DisablePwdCaching`,
633 	REGSTR_VAL_ALPHANUMPWDS              = `AlphanumPwds`,
634 	REGSTR_VAL_NETSETUP_DISABLE          = `NoNetSetup`,
635 	REGSTR_VAL_NETSETUP_NOCONFIGPAGE     = `NoNetSetupConfigPage`,
636 	REGSTR_VAL_NETSETUP_NOIDPAGE         = `NoNetSetupIDPage`,
637 	REGSTR_VAL_NETSETUP_NOSECURITYPAGE   = `NoNetSetupSecurityPage`,
638 	REGSTR_VAL_SYSTEMCPL_NOVIRTMEMPAGE   = `NoVirtMemPage`,
639 	REGSTR_VAL_SYSTEMCPL_NODEVMGRPAGE    = `NoDevMgrPage`,
640 	REGSTR_VAL_SYSTEMCPL_NOCONFIGPAGE    = `NoConfigPage`,
641 	REGSTR_VAL_SYSTEMCPL_NOFILESYSPAGE   = `NoFileSysPage`,
642 	REGSTR_VAL_DISPCPL_NODISPCPL         = `NoDispCPL`,
643 	REGSTR_VAL_DISPCPL_NOBACKGROUNDPAGE  = `NoDispBackgroundPage`,
644 	REGSTR_VAL_DISPCPL_NOSCRSAVPAGE      = `NoDispScrSavPage`,
645 	REGSTR_VAL_DISPCPL_NOAPPEARANCEPAGE  = `NoDispAppearancePage`,
646 	REGSTR_VAL_DISPCPL_NOSETTINGSPAGE    = `NoDispSettingsPage`,
647 	REGSTR_VAL_SECCPL_NOSECCPL           = `NoSecCPL`,
648 	REGSTR_VAL_SECCPL_NOPWDPAGE          = `NoPwdPage`,
649 	REGSTR_VAL_SECCPL_NOADMINPAGE        = `NoAdminPage`,
650 	REGSTR_VAL_SECCPL_NOPROFILEPAGE      = `NoProfilePage`,
651 	REGSTR_VAL_PRINTERS_HIDETABS         = `NoPrinterTabs`,
652 	REGSTR_VAL_PRINTERS_NODELETE         = `NoDeletePrinter`,
653 	REGSTR_VAL_PRINTERS_NOADD            = `NoAddPrinter`,
654 	REGSTR_VAL_WINOLDAPP_DISABLED        = `Disabled`,
655 	REGSTR_VAL_WINOLDAPP_NOREALMODE      = `NoRealMode`,
656 	REGSTR_VAL_NOENTIRENETWORK           = `NoEntireNetwork`,
657 	REGSTR_VAL_NOWORKGROUPCONTENTS       = `NoWorkgroupContents`,
658 	REGSTR_VAL_MINPWDLEN                 = `MinPwdLen`,
659 	REGSTR_VAL_PWDEXPIRATION             = `PwdExpiration`,
660 	REGSTR_VAL_WIN31PROVIDER             = `Win31Provider`,
661 	REGSTR_VAL_DISABLEREGTOOLS           = `DisableRegistryTools`,
662 	REGSTR_PATH_WINLOGON                 = `Software\Microsoft\Windows\CurrentVersion\Winlogon`,
663 	REGSTR_VAL_LEGALNOTICECAPTION        = `LegalNoticeCaption`,
664 	REGSTR_VAL_LEGALNOTICETEXT           = `LegalNoticeText`,
665 	REGSTR_VAL_RESTRICTRUN               = `RestrictRun`,
666 	REGSTR_KEY_POL_USERS                 = `Users`,
667 	REGSTR_KEY_POL_COMPUTERS             = `Computers`,
668 	REGSTR_KEY_POL_USERGROUPS            = `UserGroups`,
669 	REGSTR_KEY_POL_DEFAULT               = `.default`,
670 	REGSTR_KEY_POL_USERGROUPDATA         = `GroupData\UserGroups\Priority`,
671 	REGSTR_PATH_TIMEZONE                 = `System\CurrentControlSet\Control\TimeZoneInformation`,
672 	REGSTR_VAL_TZBIAS                    = `Bias`,
673 	REGSTR_VAL_TZDLTBIAS                 = `DaylightBias`,
674 	REGSTR_VAL_TZSTDBIAS                 = `StandardBias`,
675 	REGSTR_VAL_TZACTBIAS                 = `ActiveTimeBias`,
676 	REGSTR_VAL_TZDLTFLAG                 = `DaylightFlag`,
677 	REGSTR_VAL_TZSTDSTART                = `StandardStart`,
678 	REGSTR_VAL_TZDLTSTART                = `DaylightStart`,
679 	REGSTR_VAL_TZDLTNAME                 = `DaylightName`,
680 	REGSTR_VAL_TZSTDNAME                 = `StandardName`,
681 	REGSTR_VAL_TZNOCHANGESTART           = `NoChangeStart`,
682 	REGSTR_VAL_TZNOCHANGEEND             = `NoChangeEnd`,
683 	REGSTR_VAL_TZNOAUTOTIME              = `DisableAutoDaylightTimeSet`,
684 	REGSTR_PATH_FLOATINGPOINTPROCESSOR   = `HARDWARE\DESCRIPTION\System\FloatingPointProcessor`,
685 	REGSTR_PATH_FLOATINGPOINTPROCESSOR0  = `HARDWARE\DESCRIPTION\System\FloatingPointProcessor\0`,
686 	REGSTR_PATH_COMPUTRNAME              = `System\CurrentControlSet\Control\ComputerName\ComputerName`,
687 	REGSTR_VAL_COMPUTRNAME               = `ComputerName`,
688 	REGSTR_PATH_SHUTDOWN                 = `System\CurrentControlSet\Control\Shutdown`,
689 	REGSTR_VAL_FORCEREBOOT               = `ForceReboot`,
690 	REGSTR_VAL_SETUPPROGRAMRAN           = `SetupProgramRan`,
691 	REGSTR_VAL_DOES_POLLING              = `PollingSupportNeeded`,
692 	REGSTR_PATH_KNOWNDLLS                = `System\CurrentControlSet\Control\SessionManager\KnownDLLs`,
693 	REGSTR_PATH_KNOWN16DLLS              = `System\CurrentControlSet\Control\SessionManager\Known16DLLs`,
694 	REGSTR_PATH_CHECKVERDLLS             = `System\CurrentControlSet\Control\SessionManager\CheckVerDLLs`,
695 	REGSTR_PATH_WARNVERDLLS              = `System\CurrentControlSet\Control\SessionManager\WarnVerDLLs`,
696 	REGSTR_PATH_HACKINIFILE              = `System\CurrentControlSet\Control\SessionManager\HackIniFiles`,
697 	REGSTR_PATH_CHECKBADAPPS             = `System\CurrentControlSet\Control\SessionManager\CheckBadApps`,
698 	REGSTR_PATH_APPPATCH                 = `System\CurrentControlSet\Control\SessionManager\AppPatches`,
699 	REGSTR_PATH_KNOWNVXDS                = `System\CurrentControlSet\Control\SessionManager\KnownVxDs`,
700 	REGSTR_VAL_UNINSTALLER_DISPLAYNAME   = `DisplayName`,
701 	REGSTR_VAL_UNINSTALLER_COMMANDLINE   = `UninstallString`,
702 	REGSTR_PATH_DESKTOP                  = REGSTR_PATH_SCREENSAVE,
703 	REGSTR_PATH_MOUSE                    = `Control Panel\Mouse`,
704 	REGSTR_PATH_KEYBOARD                 = `Control Panel\Keyboard`,
705 	REGSTR_PATH_COLORS                   = `Control Panel\Colors`,
706 	REGSTR_PATH_SOUND                    = `Control Panel\Sound`,
707 	REGSTR_PATH_METRICS                  = `Control Panel\Desktop\WindowMetrics`,
708 	REGSTR_PATH_ICONS                    = `Control Panel\Icons`,
709 	REGSTR_PATH_CURSORS                  = `Control Panel\Cursors`,
710 	REGSTR_PATH_CHECKDISK                = `Software\Microsoft\Windows\CurrentVersion\Applets\Check Drive`,
711 	REGSTR_PATH_CHECKDISKSET             = `Settings`,
712 	REGSTR_PATH_CHECKDISKUDRVS           = `NoUnknownDDErrDrvs`,
713 	REGSTR_PATH_FAULT                    = `Software\Microsoft\Windows\CurrentVersion\Fault`,
714 	REGSTR_VAL_FAULT_LOGFILE             = `LogFile`,
715 	REGSTR_PATH_AEDEBUG                  = `Software\Microsoft\Windows NT\CurrentVersion\AeDebug`,
716 	REGSTR_VAL_AEDEBUG_DEBUGGER          = `Debugger`,
717 	REGSTR_VAL_AEDEBUG_AUTO              = `Auto`,
718 	REGSTR_PATH_GRPCONV                  = `Software\Microsoft\Windows\CurrentVersion\GrpConv`,
719 	REGSTR_VAL_REGITEMDELETEMESSAGE      = `Removal Message`,
720 	REGSTR_PATH_LASTCHECK                = `Software\Microsoft\Windows\CurrentVersion\Explorer\LastCheck`,
721 	REGSTR_PATH_LASTOPTIMIZE             = `Software\Microsoft\Windows\CurrentVersion\Explorer\LastOptimize`,
722 	REGSTR_PATH_LASTBACKUP               = `Software\Microsoft\Windows\CurrentVersion\Explorer\LastBackup`,
723 	REGSTR_PATH_CHKLASTCHECK             = `Software\Microsoft\Windows\CurrentVersion\Applets\Check Drive\LastCheck`,
724 	REGSTR_PATH_CHKLASTSURFAN            = `Software\Microsoft\Windows\CurrentVersion\Applets\Check Drive\LastSurfaceAnalysis`,
725 	REGSTR_KEY_SHARES                    = `Software\Microsoft\Windows\CurrentVersion\Network\LanMan`,
726 	REGSTR_VAL_SHARES_FLAGS              = `Flags`,
727 	REGSTR_VAL_SHARES_TYPE               = `Type`,
728 	REGSTR_VAL_SHARES_PATH               = `Path`,
729 	REGSTR_VAL_SHARES_REMARK             = `Remark`,
730 	REGSTR_VAL_SHARES_RW_PASS            = `Parm1`,
731 	REGSTR_VAL_SHARES_RO_PASS            = `Parm2`,
732 	REGSTR_PATH_PRINT                    = `System\CurrentControlSet\Control\Print`,
733 	REGSTR_PATH_PRINTERS                 = `System\CurrentControlSet\Control\Print\Printers`,
734 	REGSTR_PATH_PROVIDERS                = `System\CurrentControlSet\Control\Print\Providers`,
735 	REGSTR_PATH_MONITORS                 = `System\CurrentControlSet\Control\Print\Monitors`,
736 	REGSTR_PATH_ENVIRONMENTS             = `System\CurrentControlSet\Control\Print\Environments`,
737 	REGSTR_VAL_START_ON_BOOT             = `StartOnBoot`,
738 	REGSTR_VAL_PRINTERS_MASK             = `PrintersMask`,
739 	REGSTR_VAL_DOS_SPOOL_MASK            = `DOSSpoolMask`,
740 	REGSTR_KEY_CURRENT_ENV               = `\Windows 4.0`,
741 	REGSTR_KEY_DRIVERS                   = `\Drivers`,
742 	REGSTR_KEY_PRINT_PROC                = `\Print Processors`,
743 	REGSTR_PATH_EVENTLABELS              = `AppEvents\EventLabels`,
744 	REGSTR_PATH_SCHEMES                  = `AppEvents\Schemes`,
745 	REGSTR_PATH_APPS                     = REGSTR_PATH_SCHEMES ~ `\Apps`,
746 	REGSTR_PATH_APPS_DEFAULT             = REGSTR_PATH_SCHEMES ~ `\Apps\.Default`,
747 	REGSTR_PATH_NAMES                    = REGSTR_PATH_SCHEMES ~ `\Names`,
748 	REGSTR_PATH_MULTIMEDIA               = REGSTR_PATH_SETUP ~ `\Multimedia`,
749 	REGSTR_PATH_MULTIMEDIA_AUDIO         = `Software\Microsoft\Multimedia\Audio`,
750 	REGSTR_PATH_MEDIARESOURCES           = REGSTR_PATH_CURRENT_CONTROL_SET ~ `\MediaResources`,
751 	REGSTR_PATH_MEDIAPROPERTIES          = REGSTR_PATH_CURRENT_CONTROL_SET ~ `\MediaProperties`,
752 	REGSTR_PATH_PRIVATEPROPERTIES        = REGSTR_PATH_MEDIAPROPERTIES ~ `\PrivateProperties`,
753 	REGSTR_PATH_PUBLICPROPERTIES         = REGSTR_PATH_MEDIAPROPERTIES ~ `\PublicProperties`,
754 	REGSTR_PATH_JOYOEM                   = REGSTR_PATH_PRIVATEPROPERTIES ~ `\Joystick\OEM`,
755 	REGSTR_PATH_JOYCONFIG                = REGSTR_PATH_MEDIARESOURCES ~ `\Joystick`,
756 	REGSTR_KEY_JOYCURR                   = `CurrentJoystickSettings`,
757 	REGSTR_KEY_JOYSETTINGS               = `JoystickSettings`,
758 	REGSTR_VAL_JOYUSERVALUES             = `JoystickUserValues`,
759 	REGSTR_VAL_JOYCALLOUT                = `JoystickCallout`,
760 	REGSTR_VAL_JOYNCONFIG                = `Joystick%dConfiguration`,
761 	REGSTR_VAL_JOYNOEMNAME               = `Joystick%dOEMName`,
762 	REGSTR_VAL_JOYNOEMCALLOUT            = `Joystick%dOEMCallout`,
763 	REGSTR_VAL_JOYOEMCALLOUT             = `OEMCallout`,
764 	REGSTR_VAL_JOYOEMNAME                = `OEMName`,
765 	REGSTR_VAL_JOYOEMDATA                = `OEMData`,
766 	REGSTR_VAL_JOYOEMXYLABEL             = `OEMXYLabel`,
767 	REGSTR_VAL_JOYOEMZLABEL              = `OEMZLabel`,
768 	REGSTR_VAL_JOYOEMRLABEL              = `OEMRLabel`,
769 	REGSTR_VAL_JOYOEMPOVLABEL            = `OEMPOVLabel`,
770 	REGSTR_VAL_JOYOEMULABEL              = `OEMULabel`,
771 	REGSTR_VAL_JOYOEMVLABEL              = `OEMVLabel`,
772 	REGSTR_VAL_JOYOEMTESTMOVEDESC        = `OEMTestMoveDesc`,
773 	REGSTR_VAL_JOYOEMTESTBUTTONDESC      = `OEMTestButtonDesc`,
774 	REGSTR_VAL_JOYOEMTESTMOVECAP         = `OEMTestMoveCap`,
775 	REGSTR_VAL_JOYOEMTESTBUTTONCAP       = `OEMTestButtonCap`,
776 	REGSTR_VAL_JOYOEMTESTWINCAP          = `OEMTestWinCap`,
777 	REGSTR_VAL_JOYOEMCALCAP              = `OEMCalCap`,
778 	REGSTR_VAL_JOYOEMCALWINCAP           = `OEMCalWinCap`,
779 	REGSTR_VAL_JOYOEMCAL1                = `OEMCal1`,
780 	REGSTR_VAL_JOYOEMCAL2                = `OEMCal2`,
781 	REGSTR_VAL_JOYOEMCAL3                = `OEMCal3`,
782 	REGSTR_VAL_JOYOEMCAL4                = `OEMCal4`,
783 	REGSTR_VAL_JOYOEMCAL5                = `OEMCal5`,
784 	REGSTR_VAL_JOYOEMCAL6                = `OEMCal6`,
785 	REGSTR_VAL_JOYOEMCAL7                = `OEMCal7`,
786 	REGSTR_VAL_JOYOEMCAL8                = `OEMCal8`,
787 	REGSTR_VAL_JOYOEMCAL9                = `OEMCal9`,
788 	REGSTR_VAL_JOYOEMCAL10               = `OEMCal10`,
789 	REGSTR_VAL_JOYOEMCAL11               = `OEMCal11`,
790 	REGSTR_VAL_JOYOEMCAL12               = `OEMCal12`;
791 
792 enum {
793 	DTRESULTOK,
794 	DTRESULTFIX,
795 	DTRESULTPROB,
796 	DTRESULTPART
797 }
798 
799 //#ifndef NEC_98
800 const PCIC_DEFAULT_IRQMASK = 0x4EB8;
801 //#else
802 //#define PCIC_DEFAULT_IRQMASK	0x1468
803 //#endif
804 const PCIC_DEFAULT_NUMSOCKETS = 0;
805 
806 struct DSKTLSYSTEMTIME {
807 	WORD wYear;
808 	WORD wMonth;
809 	WORD wDayOfWeek;
810 	WORD wDay;
811 	WORD wHour;
812 	WORD wMinute;
813 	WORD wSecond;
814 	WORD wMilliseconds;
815 	WORD wResult;
816 }
817 alias DSKTLSYSTEMTIME* PDSKTLSYSTEMTIME, LPDSKTLSYSTEMTIME;