Download
for Windows

Manuals

Windows 10 Update Restart Blocker

Version: 1.1.0

Table Of Contents

  1. Introduction
  2. Installation
  3. Operation
  4. Settings
  5. Conclusion
  6. Uninstallation
  7. User feedback

 

Introduction

Windows 10 Update Restart Blocker is a simple program that came out from our discovery of a vulnerability in the update service in Windows 10. We originally submitted this bug to Microsoft in September of 2020, but they refused to fix it. Thus we had no choice than to fix it ourselves. This program is the result of that. (For more technical details check this blog post.)

The program was designed with these basic functions:

  1. First and foremost, to patch the DLL hijack vulnerability in the Windows update service.
  2. To provide a way for the users to delay indefinitely forced restarts that are caused by installation of Windows updates.
  3. To give control to the users to pick how often they allow to be bothered with notifications of a pending restart.
  4. And finally, this app is provided with complete source code for the full transparency.

Disclaimer

If the original manufacturer (Microsoft) finally decides to fix the vulnerability/bug described in this blog post, this software will no longer function in its capacity that is described in this manual. Such behavior is expected since this software depends on the presence of the aforementioned bug.

Installation

Once you download the installer, there are two types of installations available:

  • GUI Installation: This is the most common way to install the program on a single computer. Simply run the installer and follow on-screen instructions.
  • Unattended Installation: This setup can be used to install the program using a command line, or for installation in a Windows Active Directory.
    • Command Line Installation: You run the installer using the msiexec.exe with the following parameters:
    • msiexec.exe /q /i "path-to\W10URB_Installer.msi"

      Will install the program with the full features (including the Start menu shortcuts.)

      msiexec.exe /q /i "path-to\W10URB_Installer.msi" ADDLOCAL=MainProgram

      Will install the program without the Start menu shortcuts.

      msiexec.exe /q /i "path-to\W10URB_Installer.msi" ADDLOCAL=MainProgram,ShortcutsStart

      Will install the program with the Start menu shortcuts.

      msiexec.exe /q /i "path-to\W10URB_Installer.msi" REMOVE=ShortcutsStart

      Will remove the program's Start menu shortcuts.

    • Pre-configured Installation: Create a configuration file first, then place it into the same folder as the W10URB_Installer.msi and make sure to name the configuration file w10urbConfig.txt. This will instruct the installer to use configuration settings from that file by default.

      This type of configuration may be particularly handy for installation on multiple computers joined into a domain, via a Group Policy Object (GPO) on a Windows Active Directory.

Operation

Once the program is installed, you don't need to do anything else.

When Windows update service attempts to automatically restart your system you should see the following pop-up:

Reboot Attempt - Windows 10 Update Restart Blocker

Windows is attempting to RESTART YOUR COMPUTER.
Do you want to allow it now?
IMPORTANT: Before allowing it, make sure to save all your work! Otherwise, if you're not ready, click No.
This popup will be shown as a system message box above all other windows.
The same pop-up message may be displayed if you manually request a reboot by clicking "Restart now" button in the Update Settings window.

Note that a restart will be halted indefinitely until you interact with the pop-up shown above.

You can also specify in the program settings if you want to hide this pop-up, or how often it can be shown.

Once this pop-up is shown there are three options to choose from:

  1. Do nothing. In this case the automatic reboot will be delayed for as long as it takes the user to pick any other option.
    This pop-up can be configured to be hidden after some time in the program settings. If that happens, the restart will be blocked automatically.
  2. Click No, or Cancel to prevent automatic restart.

    Note that if you decide to reboot your system later and install updates, you can do so from the Start menu, by clicking the Power option:

    Start Menu - Power - Update and Restart

  3. Click Yes to go ahead with the restart to finish installing updates.

    In this case, due to the way Windows update service was coded (read technical details here) the program will have to display a pop-up announcing when a restart will take place. It will be delayed by 2 minutes after you click the Yes button:

    Pending Reboot!

Settings

The program settings window allows users to control when and how often the pop-up described above can be shown:

Windows 10 Update Restart Blocker - Settings

You can access the program settings from the Windows Start menu by looking for Windows 10 Update Restart Blocker in the list:

(Note that the Start menu shortcuts must be installed for you to see this option.)

Start menu shortcut

Additionally, the settings GUI app can be accessed from the following file on a 64-bit OS:

%programfiles(x86)%\dennisbabkin.com\Windows 10 Update Restart Blocker\Win10RestartBlockerUI.exe

Or, from the following file on a 32-bit OS:

%programfiles%\dennisbabkin.com\Windows 10 Update Restart Blocker\Win10RestartBlockerUI.exe

Main Settings Window

The main settings window of the program provides the following options:

  • Block Windows Updates from restarting this computer - when checked will allow this program to perform its functions described in this manual. By unchecking this option you will technically disable this program without uninstalling it.
    Disabling this setting may be beneficial for anyone who wants to keep this program as the Windows update service vulnerability patch, but doesn't want it to show its pop-up UI and interfere with the restarts after installation of Windows updates.
  • Hide popup - drop-down control provides options that define how soon to hide the pop-up UI after this program blocks a restart to install Windows updates. Only one of the following options can be selected:
    • Never (keep it until user interacts with it) - the pop-up UI will be displayed until the user interacts with it, and the restart can be blocked indefinitely.
    • After N minutes/hours - the pop-up UI will be kept only for the number of minutes (or hours) since it's initial showing. If the user does not interact with the popup within that time, the program will default to blocking the restart.
  • Play a warning sound when popup is displayed - when checked will instruct the program to play a system warning sound when the pop-up UI is first shown when the automatic restart needed to install updates is blocked.
    This option may be handy to draw attention from the user when restart is needed to install updates.
  • Try to allow idle sleep when popup is displayed - when checked will make the program to attempt to allow idle sleep when the pop-up UI is first shown when the automatic restart needed to install updates is blocked.
    This option will have no effect if idle sleep is disabled.
  • Always show this popup - when selected will make the program display pop-up UI every time the program blocks the automatic restart needed to install updates.
  • Show this popup no sooner than: - when selected will enable the following control, that will allow to specify how soon to show the pop-up UI when the automatic restart needed to install updates is blocked. This amount of time is counted since the last moment the pop-up UI was shown.
    • Since last time it was shown: - a drop-down control that can let you specify time in hours. You can select a predefined value from a drop-down list, or type it in yourself.
      Allowed values are from 0 to 2016 hours, inclusively. It must be an integer. You cannot specify fractional number of hours. By specifying 0 you effectively tell the program to show the popup UI every time.
  • OK - button saves changes and closes the settings window.
    The program may ask to provide administrative access to save changes.
  • Apply - button saves changes but doesn't close the settings window.
    The program may ask to provide administrative access to save changes.
  • Cancel - button closes the settings window by discarding any changes made.
    Warning: There will be no warning message shown before the window is closed.

Main Menu

The main menu is located on top of the settings window:

Windows 10 Update Restart Blocker - Menu

The following menu commands are available:

Note that all available keyboard shortcuts are displayed in parentheses next to the menu item name. Ex: Ctrl+O for a combination of Ctrl and O keys.
  • File:
    • Open Config File ... (Ctrl+O) - opens a file-picker window that allows to select a configuration file to be opened in the settings window.
      To have effect after loading the configuration file, the settings window must be saved by clicking OK or Apply buttons.
      Additionally, you can drag-and-drop a previously saved configuration file into the settings window.
    • Save Into Config File ... (Ctrl+S) - opens a file-picker window that allows to select a file name to save current settings displayed in the settings window as a configuration text file.

      A configuration file used by the program is a simple text file, format of which is shown below:

      A configuration file could be used to store settings for the program. It can be used to load them again, using the File -> Open Config File menu command, or during a pre-configured installation of this program on multiple computers.
      Read comments on the right of each parameter for its description. If some parameter is omitted in the configuration file, its default value will be used instead.
      
      ver="1.1.0"          ; (required) version of the application
      Enabled=1            ; 1 = (default) to enable this program, 0 = to disable
      UI_Timeout=0         ; How soon to hide the popup (in seconds.) Or 0 (default) to show it until user interacts with it
      UI_AllowSound=0      ; 1 = (default) to play sound when popup is shown, 0 = not to play
      UI_AllowSleep=1      ; 1 = (default) to allow calling thread to resume idle sleep timer, 0 = not to change it
      UI_ShowType=1        ; When popup is allowed to be shown: 0 = (default) always, 1 = Only after N minutes, defined in 'UI_ShowValue1'
      UI_ShowValue1=2880   ; [0 - 120960] How soon to allow to show popup (in minutes) after previous showing. Default = 0 for always.
      
      
    • Exit (Alt+F4) - closes the settings window.
      The window will be closed without a prompt regardless of whether it has unsaved data or not.
  • Edit:
    • Set Defaults ... - can be used to reset all the options in the settings window to their defaults.
      The change to the program settings will take effect only after a user clicks OK or Apply button.
  • Options:
    • Reboot Without Updates ... - will attempt to reboot the system without installation of updates. Any open programs with unsaved data will prevent such a reboot.
      This option will display a confirmation before initiating a reboot.
      IMPORTANT: In some cases the operating system has been observed not to honor this request and still to install updates during a reboot.
    • Shutdown Without Updates ... - will attempt to shut-down the system without installation of updates. Any open programs with unsaved data will prevent such a shutdown.
      This option will display a confirmation before initiating a shutdown.
      IMPORTANT: In some cases the operating system has been observed not to honor this request and still to install updates during a shutdown.
    • Fast "Blue Screen" Shutdown ... - will attempt to cause a "Blue Screen of Death" (or BSOD, or a bug-check) for a quick shut-down.
      This option will display a confirmation before initiating a BSOD.
      WARNING: Triggering a BSOD will cause you to lose all unsaved data in all of your open programs; and in some cases may cause corruption of data in applications that were not ready for an abrupt shutdown! Use this option only in extreme circumstances.
      IMPORTANT: In some cases the operating system has been observed still to initiate installation of updates after it begins booting up after the BSOD.
      The bug-check code that will be used for this BSOD is 0xDEADDEAD, which is translated to MANUALLY_INITIATED_CRASH1. And in despite of the message that may be displayed in the BSOD window, the "problem" state was caused deliberately:

      Windows 10 Update Restart Blocker - BSOD

  • Help:
    • Online Help ... (F1) - opens a web browser to display the online help page for this program.
      Internet connection is required.
    • Check For Updates ... - opens a web browser to check if an update is available for this program.
      Follow on-screen instruction to download and install an update if it is available.
      Internet connection is required.
    • Learn How It Works ... - opens a web browser to display our blog post with technical details about how this program works.
      Internet connection is required.
    • Bug Report - provides bug reporting and diagnostic options:
      • Open Event Log ... - opens Windows Event Viewer that can be used to locate diagnostic error messages posted by this program.
        This program posts diagnostic log messages under the "Windows 10 Update Restart Blocker" source.
      • Report Bug ... - opens a web browser to display the online bug submission page that you can use to submit your bug reports to the developers of this program.
        IMPORTANT: We do not provide tech support for this software. Only bug reports are accepted!
        Internet connection is required.
    • About ... - shows a window with information about the author and the version of this program.
      You can use this option to obtain the bitness of this application: 32-bit or 64-bit.

Conclusion

Even though automatic restarts caused by the installation of Windows updates have indeed become quite an annoying occurrence, please keep in mind that preventing a restart will halt the updates from being installed properly.

Keep in mind that it is critical that you do not block restarts needed for the installation of Windows updates for an extended period of time. Doing so can jeopardize the security of your operating system!

Consider allowing a reboot of your system shortly after you see this program's pop-up UI.

Uninstallation

In case you decide to remove this program from your computer, you can do so in accordance with how this software was initially installed:

  • Regular Installation: you can uninstall this program from the Windows Control Panel in the "Programs and Features" option.

    This program will be listed under: "Windows 10 Update Restart Blocker".

    Select it in the list first and then click "Uninstall" and follow on-screen procedure to completely remove this software from your standalone system.

    Note that this option will work for both GUI and unattended installations on a single workstation.
  • Active Directory Installation: the administrator of your Active Directory network needs to uninstall this software for you.

    For administrators: If the program was installed using the Group Policy Object (GPO), simply remove that GPO from the scope of the joined PCs that you want to uninstall this program from and restart them after applying that GPO.

    Note that this option will work only for installations done via Group Policy Object (GPO) on a Windows Active Directory.

Thank you!

We're actively working on improving this software and welcome any feedback from its users.

Feel free to send us your bug reports and suggestions for improvement. Even though we can't answer every single email, we listen and appreciate your time writing us!

Support Team
www.dennisbabkin.com

 

 

Social Media

Download

for Windows 10

User Feedback