Releases: TokyoDisco/Windows_Patching_Helper
Windows Patching Helper
Windows Patching Helper 🛠️
📖 About the Project
Windows Patching Helper is a desktop Windows Forms application designed to automate and streamline the deployment of updates (.msu files) across multiple servers simultaneously.
This project was born out of a need to optimize daily administrative tasks. Manually logging into every server, copying files, and triggering updates was time-consuming and error-prone. This tool allows for managing the entire process from a single dashboard, significantly reducing the time required for "Patch Tuesday" maintenance windows.
📸 Application Overview
🚀 Key Features
1. Server Management & Diagnostics
- Active Directory Integration: Automatic retrieval of computer lists from the domain.
- Health Check: Rapid verification of key parameters for multiple machines simultaneously:
- 🕒 Uptime and Timezone.
- 💾 Free space on the system drive (C:).
- 🖥️ Operating System version.
- 📅 List of recently installed updates (Hotfixes).
2. Update Automation (Patching)
- Mass File Transfer: Parallel transfer of
.msufiles to local server drives (C$\Temp). - Remote Installation: Utilization of Windows Task Scheduler and PowerShell to execute silent installations on remote machines.
- Status Monitoring: Live monitoring to determine if an installation is in progress (
wusa.exeprocess) or if a reboot is pending (Windows Registry analysis). - Cleanup: Remote deletion of installation files after the process is complete.
3. Administrative Tools & Security
- Quick RDP: Automatic login to selected servers (credential injection) for manual intervention.
- Safe Reboot / Security Compliance: * The tool includes a remote reboot procedure with a triple-confirmation safety mechanism to prevent accidental shutdowns.
- Note: Direct remote reboot features are implemented via code but can be toggled off (Feature Flag) to comply with strict internal security policies, prioritizing RDP access instead.
⚙️ Technology Stack
The project was built using C# (.NET) and Windows Forms. It leverages advanced system mechanisms:
- WMI (Windows Management Instrumentation): Querying remote machine status (Disk, OS, Processes).
- System.DirectoryServices: Communication with Active Directory.
- Task Scheduler API: Executing PowerShell scripts on remote machines with
NT AUTHORITY\SYSTEMprivileges. - Multithreading (Async/Await): Ensuring the UI remains responsive while processing operations on hundreds of servers.
💡 What I Learned
Building this tool allowed me to deepen my knowledge in:
- IT Process Automation: Converting repetitive manual tasks into "one-click" solutions.
- Windows Server Administration: Understanding the mechanics of Windows Updates, the Registry, and remote services.
- Error Handling in Distributed Systems: Managing edge cases such as offline servers or permission restrictions.
Project Status: Completed / Production Version 1.2
OM Team Patching Application
Full Changelog: https://github.com/TokyoDisco/Asbestos/commits/v.1.17.1-beta