Skip to content

Modern Windows application that allows you to pause Windows Updates for 100 years .

License

Notifications You must be signed in to change notification settings

EXLOUD/Windows-Update-Pauser

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

77 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ‘‡


πŸ‘€ Repository Views

count

⭐ If this tool helped you, please consider giving it a star! ⭐


Windows Update Pauser

Windows Update Pauser

Modern Windows Update Control Tool β€” C++23, Fully Static, ARM64/x64/x86

Issues License

What is it? | Features | How to use | Building


🎯 What is Windows Update Pauser?

Windows Update Pauser is a modern, user-friendly Windows application designed to provide complete, irreversible control over Windows Updates. With its intuitive interface, it allows you to pause Windows Updates for 100 years, or resume them instantly with just one click.

This v2.0.0 release brings a complete C++23 modernization, zero external dependencies (fully static builds), and a unified resource management system that eliminates data duplication between code and Windows resources.


✨ Features

Click to expand features

🎨 User Experience

  • Modern Dark UI Interface - Clean, card-based design with smooth animations
  • One-Click Toggle - Simple pause/resume functionality with large buttons
  • Real-time Status Feedback - Color-coded success/error messages with visual indicators
  • Sound Notifications - Audio confirmation after successful operations

πŸ”§ Technical Capabilities

  • Complete Update Coverage - Handles both feature and quality updates
  • Deep Registry Lockdown - Fully disables Windows Update, drivers, metadata, and services
  • Multi-Architecture Support - Native x64, x86, and ARM64 builds (Surface Pro X, Snapdragon X Elite)
  • Zero Dependencies - Single portable executable (620-800 KB), no DLLs required
  • System Integration - Automatically opens Windows Update settings after actions

πŸš€ Modern C++23 Architecture

  • Type Safety - std::format, std::expected, constexpr everywhere
  • Memory Safety - Full RAII implementation with ComPtr and custom smart handles
  • Unified Resources - Single Resource.hpp file for both C++ and Windows RC
  • Cross-Platform Build - llvm-mingw with static libc++ linkage

πŸ›‘οΈ System Integration

  • Administrator Support - Requires and handles elevated privileges properly
  • Windows Compatibility - Full support for Windows 10 and 11 (x86, x64, ARM64)
  • Error Handling - Graceful error management with user-friendly messages
  • Security Hardening - LTO, Control Flow Guard, and stack protection enabled

πŸš€ How to use?

4.1 Download Release (Recommended)

Click to expand

4.1.1 Download

Download the latest v2.0.0 release from GitHub Releases.

4.1.2 Installation

  1. Extract the downloaded archive.
  2. Choose the folder matching your system:
    • -x86 β†’ For 32-bit Intel/AMD
    • -x64 β†’ For 64-bit Intel/AMD (Recommended)
    • -arm64 β†’ For ARM64 devices (Surface Pro X, Snapdragon X Elite)
  3. Run WindowsUpdatePauser-x64.exe (or -x86.exe / -arm64.exe) as Administrator.

4.1.3 Usage

  1. Launch the application as Administrator.
  2. Click the ⏸️ Pause for 100 years button to fully disable updates.
  3. Click the ▢️ Resume Updates button to restore default behavior.
  4. Receive visual and audio feedback when operation completes.
  5. Windows Update settings will open automatically after each action.

Note: All builds are fully static portable executables. No installation or external DLLs required.


These settings block: driver updates, metadata fetching, update servers, auto-updates, OS upgrades, and the Update Health Service.


πŸ’» System Requirements

  • Operating System: Windows 10/11 (64-bit or 32-bit, including ARM64)
  • Architecture: x86, x64, ARM64
  • Privileges: Administrator rights (required)
  • Dependencies: None (fully static executable)

πŸ”¨ Building

Click to expand building instructions

Prerequisites

Required files in project root:

  • WindowsUpdatePauser.cpp
  • Resource.rc
  • Resource.hpp
  • icon.ico (32x32)
  • icon_small.ico (16x16)

One-Click Build

Run build-release.bat to automatically generate 6 fully static binaries: β”œβ”€β”€ msvcrt β”‚ β”œβ”€β”€ x64 β†’ WindowsUpdatePauser-x64.exe (694 KB) β”‚ β”œβ”€β”€ x86 β†’ WindowsUpdatePauser-x86.exe (801 KB) β”‚ └── arm64 β†’ WindowsUpdatePauser-arm64.exe (665 KB) └── ucrt β”œβ”€β”€ x64 β†’ WindowsUpdatePauser-x64.exe (645 KB) β”œβ”€β”€ x86 β†’ WindowsUpdatePauser-x86.exe (751 KB) └── arm64 β†’ WindowsUpdatePauser-arm64.exe (623 KB)

text

Script validates all source files and compiler paths before starting. Uses C++23 with -std=c++23 -stdlib=libc++.

Manual Build (Single Target)

For x64 UCRT build:

C:\llvm-mingw-ucrt\bin\x86_64-w64-mingw32-clang++.exe ^ -target x86_64-w64-windows-gnu ^ -std=c++23 -stdlib=libc++ -fexperimental-library ^ -D_WIN32_WINNT=0x0A00 -DUNICODE -D_UNICODE -O3 -flto=thin ^ -static-libgcc -static-libstdc++ ^ -Wl,-Bstatic -lwinpthread -lc++ -lc++abi -lunwind -Wl,-Bdynamic ^ -Wl,-subsystem,windows:6.0 -Wl,--gc-sections ^ -o WindowsUpdatePauser.exe ^ WindowsUpdatePauser.cpp Resource.rc.o ^ -lcomctl32 -ldwmapi -luxtheme -lwinmm -lversion -lshcore ^ -lshell32 -luser32 -lkernel32 -lole32 -loleaut32 -luuid ^ -ld2d1 -ldwrite -lwindowscodecs

⚠️ Important Disclaimer This software modifies the Windows registry to control update behavior. While designed to be safe and reversible, use it at your own risk. The authors are not responsible for any system damage, loss of updates, or security issues.

πŸ“„ License The code is available under the MIT license.

πŸ‘¨β€πŸ’» Author

EXLOUD

Made with ❀️ for the Windows development community

⭐ If you find this project helpful, please consider giving it a star! ⭐