Windows Registry: Difference between revisions

From Computers Wiki
Jump to navigationJump to search
(→‎KB articles: Add other KB articles)
(→‎Windows for Workgroups 3.11: Add notes on the .REG file format)
Line 24: Line 24:
*String, Binary, and DWORD are the only types.
*String, Binary, and DWORD are the only types.
*Data is stored in <code>%WINDIR%\REG16X2.DAT</code>.<ref>https://win31.de/etips.htm</ref>
*Data is stored in <code>%WINDIR%\REG16X2.DAT</code>.<ref>https://win31.de/etips.htm</ref>
*<code>REG16X2.E<em>nn</em></code> for 00-99 are created next to the file for each installation and uninstallation attempt.
*<code>REG16X2.E<em>nn</em></code> for 00-99 are created next to the file for each installation and uninstallation attempt.

=== <code>.REG</code> file format ===

*The first line is <code>REGEDIT</code> with no version afterwards. Contrast this with <code>REGEDIT4</code> and <code>Windows Registry Editor Version 5.00</code> present in later versions.
*<code>HKEY_CLASSES_ROOT</code> is explicitly prepended to every key. Contrast this with <code>REGEDIT.EXE /V</code> strongly implying that the root is that itself.
*Every processed line has the format <code>HKEY_CLASSES_ROOT\path\to\key = Value of key</code>.
*Lines that do not start with <code>HKEY_CLASSES_ROOT</code> are ignored; no special character is needed to start a comment.<ref><code>%WINDIR%\SYSTEM\SETUP.REG</code> line 4</ref>
*If the <code> = </code> and value are omitted, the key is created without a value.


=== KB articles ===
=== KB articles ===

Revision as of 04:19, 30 October 2023

The Windows Registry is a unnecessarily nested key-value store.

Windows for Workgroups 3.11

The following things were noticed after installing the 16-bit version of Internet Explorer 5.01.

REGEDIT.EXE

This one is bundled with the operating system. Run it with the /v flag to make it actually usable.

  • It only sees the type registrations (HKEY_CLASSES_ROOT in REGEDT16.EXE).
  • Spaces in keys are replaced with #.
  • There is only one value per key ((Default) in REGEDT16.EXE), and it is always a string.
  • A "Revert to Last Save" menu item exists.
  • Data is stored in %WINDIR%\REG.DAT.[1]
  • Separate REGEDIT.HLP and REGEDITV.HLP files exist. The latter is used for the Help menu when running in verbose mode.

REGEDT16.EXE

This one comes with the 16-bit version of Internet Explorer 5.01.

  • The About dialog states this is for both Windows 3.1 and Windows NT 3.51.
  • HKEY_CURRENT_USER and HKEY_LOCAL_MACHINE are present too.
  • String, Binary, and DWORD are the only types.
  • Data is stored in %WINDIR%\REG16X2.DAT.[2]
  • REG16X2.Enn for 00-99 are created next to the file for each installation and uninstallation attempt.

.REG file format

  • The first line is REGEDIT with no version afterwards. Contrast this with REGEDIT4 and Windows Registry Editor Version 5.00 present in later versions.
  • HKEY_CLASSES_ROOT is explicitly prepended to every key. Contrast this with REGEDIT.EXE /V strongly implying that the root is that itself.
  • Every processed line has the format HKEY_CLASSES_ROOT\path\to\key = Value of key.
  • Lines that do not start with HKEY_CLASSES_ROOT are ignored; no special character is needed to start a comment.[3]
  • If the = and value are omitted, the key is created without a value.

KB articles

References