How to Safely Modify BootExecute in Regedit

Modifying the BootExecute registry value allows administrators to configure native applications, such as the autochk disk-checking utility, to run early during the Windows boot process before the Win32 subsystem initializes. Because this value directly affects the Windows Session Manager (smss.exe), any syntax error, missing executable, or incorrect data type can result in a Blue Screen of Death (BSOD) or a continuous reboot loop. Taking proper precautions—such as backing up the registry, verifying data types, and preparing recovery tools—is essential before making any modifications.

Understand the Location and Default Function

The BootExecute value is located in the Windows Registry at:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager

By default, the value is set to autocheck autochk *. This instructs Windows to check the integrity of storage volumes at startup. Changing or removing this string changes how Windows verifies drives or runs early-stage maintenance tasks.

Essential Precautions Before Editing

  1. Back Up the Registry Key Before making changes, right-click the Session Manager key in regedit.exe and select Export. Save the .reg file to a known location or an external drive. This allows for quick restoration if registry corruption occurs.

  2. Create a System Restore Point Generate a manual System Restore point. If Windows fails to load into the desktop environment, you can use Advanced Startup Options to roll back the system state.

  3. Prepare a Bootable Windows Installation Media Keep a bootable Windows USB drive available. If an invalid BootExecute entry causes a startup failure, you must boot from the installation media, access the Command Prompt, and use the reg load command to edit the offline registry hive located at C:\Windows\System32\config\SYSTEM.

  4. Preserve the REG_MULTI_SZ Data Type BootExecute must strictly be a Multi-String Value (REG_MULTI_SZ). If the value is deleted and recreated as a standard String Value (REG_SZ) or Expandable String Value (REG_EXPAND_SZ), the Session Manager will fail to parse it, causing a startup crash (STOP: 0xC000021A or similar).

  5. Ensure Precise Syntax and Formatting Each command within a REG_MULTI_SZ entry must be placed on its own line. Do not add trailing spaces, unnecessary quotation marks, or invalid switches. Unless you intentionally want to disable disk checks entirely, ensure autocheck autochk * remains the primary entry.

  6. Verify Executables Run in Native Subsystem Mode Any program added to BootExecute must exist in C:\Windows\System32 and be compiled specifically as a Windows Native API application. Standard Win32 .exe files cannot execute at this stage of the boot cycle and will cause the boot sequence to halt.