{"id":49887903,"url":"https://github.com/jtgsystems/driver-updater---windows","last_synced_at":"2026-05-15T19:05:36.152Z","repository":{"id":281279342,"uuid":"944772230","full_name":"jtgsystems/DRIVER-UPDATER---WINDOWS","owner":"jtgsystems","description":"🔧 Windows driver updater - Automatic driver detection, download \u0026 installation tool","archived":false,"fork":false,"pushed_at":"2026-04-13T17:37:26.000Z","size":805,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-04-13T18:24:38.461Z","etag":null,"topics":["ai","automation","llm","nlp","python","rag","tools"],"latest_commit_sha":null,"homepage":null,"language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jtgsystems.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2025-03-07T23:55:20.000Z","updated_at":"2026-04-13T17:37:30.000Z","dependencies_parsed_at":"2025-10-22T11:19:19.093Z","dependency_job_id":"5cc49780-bbfe-441a-b635-e567e74b5c4b","html_url":"https://github.com/jtgsystems/DRIVER-UPDATER---WINDOWS","commit_stats":null,"previous_names":["jtgsystems/driver-updater---windows"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/jtgsystems/DRIVER-UPDATER---WINDOWS","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FDRIVER-UPDATER---WINDOWS","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FDRIVER-UPDATER---WINDOWS/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FDRIVER-UPDATER---WINDOWS/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FDRIVER-UPDATER---WINDOWS/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jtgsystems","download_url":"https://codeload.github.com/jtgsystems/DRIVER-UPDATER---WINDOWS/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jtgsystems%2FDRIVER-UPDATER---WINDOWS/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33075278,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-15T11:35:32.926Z","status":"ssl_error","status_checked_at":"2026-05-15T11:35:31.362Z","response_time":103,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","automation","llm","nlp","python","rag","tools"],"created_at":"2026-05-15T19:05:33.126Z","updated_at":"2026-05-15T19:05:36.144Z","avatar_url":"https://github.com/jtgsystems.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Windows Driver and Update Tool - Auto-Start Edition\n\n[![Windows](https://img.shields.io/badge/Windows-10%2F11-blue)](https://www.microsoft.com/windows)\n[![PowerShell](https://img.shields.io/badge/PowerShell-5.1%2B-blue)](https://docs.microsoft.com/powershell/)\n[![License](https://img.shields.io/badge/License-MIT-green)](LICENSE)\n[![Version](https://img.shields.io/badge/Version-4.4-orange)](CHANGELOG.md)\n\n## 📋 Table of Contents\n\n- [🎯 Overview](#-overview)\n- [✨ Features](#-features)\n- [🔧 Installation](#-installation)\n- [📱 USB Drive Deployment](#-usb-drive-deployment)\n- [🖥️ System Requirements](#️-system-requirements)\n- [?? Official Sources](#-official-sources)\n- [🚦 How It Works](#-how-it-works)\n- [📊 Usage Modes](#-usage-modes)\n- [🛠️ Configuration](#️-configuration)\n- [📝 Logging \u0026 Monitoring](#-logging--monitoring)\n- [🔐 Security Features](#-security-features)\n- [🆘 Troubleshooting](#-troubleshooting)\n- [⚠️ Important Notes](#️-important-notes)\n- [📈 Performance](#-performance)\n- [🤝 Contributing](#-contributing)\n\n## 🎯 Overview\n\nThe **Windows Driver and Update Tool** is an enterprise-grade, fully automated solution for installing Windows updates, drivers, and apps on new system builds or existing systems. It automatically installs itself to Windows startup, applies updates, and removes itself when complete. Feature upgrades (e.g., Windows 10 to Windows 11) are excluded. 🎉\n\n### 🌟 Key Highlights\n\n- **🔄 Fully Autonomous** - Set it and forget it! Runs automatically at startup\n- **💾 USB Deployment Ready** - Deploy from USB drives to multiple systems\n- **🧹 Self-Cleaning** - Removes itself when updates are applied\n- **📊 State Persistence** - Survives reboots and continues where it left off\n- **🛡️ Enterprise Safe** - Comprehensive error handling and logging\n\n## ✨ Features\n\n### 🎯 Core Functionality\n\n| Feature | Description |\n|---------|-------------|\n| ?? **Auto-Detection** | Automatically discovers Windows updates and driver updates from Windows Update |\n| 📦 **Batch Installation** | Installs multiple updates in a single session |\n| 🔄 **Auto-Startup** | Adds itself to Windows startup (Registry + Task Scheduler) |\n| 🗑️ **Self-Removal** | Automatically removes itself when no more updates need applying |\n| 💾 **USB Support** | Detects USB execution and copies to local drive |\n| 📊 **State Management** | Tracks progress across reboots with JSON state file |\n| 📝 **Comprehensive Logging** | Detailed logs with rotation and Event Log fallback |\n| 🛡️ **Safety Features** | Driver backup, restore points, signature validation |\n\n### 🚀 Advanced Features\n\n- **🔐 Dual Startup Methods** - Uses both Registry and Scheduled Task for reliability\n- **⚡ Smart Detection** - Identifies and skips preview/beta drivers\n- **🔄 Retry Logic** - Automatic retry with exponential backoff\n- **📈 Progress Tracking** - Visual progress bars and status updates\n- **🌐 Internet Check** - Validates connectivity before attempting updates\n- **💽 Driver Backup** - Exports current drivers before updates\n- **🔄 Reboot Management** - Handles required reboots gracefully\n\n## 🔧 Installation\n\n### 📦 Quick Start (Recommended)\n\n1. **Download the package** to any location (USB drive or local folder)\n2. **Double-click** `Install-DriverUpdater.cmd`\n3. **Accept** the UAC prompt for administrator privileges\n4. **Select option 1** to install and configure auto-start\n5. ✅ **Done!** The tool will handle everything automatically\n\n### 🎯 Manual Installation\n\n```powershell\n# Run PowerShell as Administrator\ncd \"path\\to\\driver-updater\"\n\n# Execute the auto-start script\n.\\WindowsDriverUpdater_AutoStart.ps1\n```\n\n### 🖱️ One-Click Installation\n\nSimply run `Install-DriverUpdater.cmd` - it handles elevation and execution automatically!\n\n## 📱 USB Drive Deployment\n\n### 🔌 Preparing USB Drive\n\n1. **Format USB** drive (FAT32 or NTFS)\n2. **Copy all files** to USB root or subfolder:\n   ```\n   📁 USB Drive\n   ├── 📄 Install-DriverUpdater.cmd\n   ├── 📄 WindowsDriverUpdater_AutoStart.bat\n   ├── 📄 WindowsDriverUpdater_AutoStart.ps1\n   └── 📄 README.md\n   ```\n\n3. **Label the USB** (optional): \"DRIVER_UPDATER\"\n\n### 🚀 Deployment Process\n\n1. **Insert USB** into target system\n2. **Navigate to USB** in File Explorer\n3. **Run** `Install-DriverUpdater.cmd`\n4. **Remove USB** after installation starts (tool copies itself locally)\n\n### 📊 Mass Deployment\n\nFor multiple systems:\n```batch\n@echo off\n:: Deploy to multiple systems via network\nfor %%C in (PC001 PC002 PC003) do (\n    echo Deploying to %%C...\n    xcopy /E /Y \"\\\\server\\share\\DriverUpdater\\*\" \"\\\\%%C\\C$\\Temp\\DriverUpdater\\\"\n    psexec \\\\%%C -s -d cmd /c \"C:\\Temp\\DriverUpdater\\Install-DriverUpdater.cmd\"\n)\n```\n\n## 🖥️ System Requirements\n\n### ✅ Minimum Requirements\n\n| Component | Requirement |\n|-----------|-------------|\n| 🖥️ **OS** | Windows 10 (1809+) / Windows 11 / Server 2016+ |\n| ⚙️ **PowerShell** | Version 5.1 or later |\n| 👤 **Privileges** | Administrator rights |\n| 🌐 **Network** | Internet connection for driver downloads |\n| 💾 **Disk Space** | 500MB free (more for driver backups) |\n| 🔧 **Services** | Windows Update service enabled |\n\n### 📋 Prerequisites Check\n\nThe tool automatically verifies:\n- ✅ Administrator privileges\n- ✅ PowerShell version\n- ✅ Windows Update service status\n- ✅ Internet connectivity\n- ✅ Required PowerShell modules\n## ?? Official Sources\n\nThese references describe the Windows Update and driver update mechanisms used by this tool:\n\n- Windows Update overview: https://support.microsoft.com/windows/update-windows-3c5ae7fc-9fb6-9af1-1984-b5e0412c556a\n- Update drivers manually: https://support.microsoft.com/windows/update-drivers-manually-in-windows-ec62f46c-ff14-c91d-eead-d7126dc1f7b6\n- Windows Update error reference: https://learn.microsoft.com/windows/deployment/update/windows-update-error-reference\n- Windows Update Agent API (WUAPI): https://learn.microsoft.com/windows/win32/api/wuapi/\n- PSWindowsUpdate module: https://www.powershellgallery.com/packages/PSWindowsUpdate\n\n## 🚦 How It Works\n\n### 📊 Workflow Diagram\n\n```mermaid\ngraph TD\n    A[🚀 Start] --\u003e B{Running from USB?}\n    B --\u003e|Yes| C[📁 Copy to Local]\n    B --\u003e|No| D[📍 Use Current Location]\n    C --\u003e E[🔍 Check for Updates]\n    D --\u003e E\n    E --\u003e F{Updates Found?}\n    F --\u003e|Yes| G[📦 Install Drivers]\n    F --\u003e|No| H[📊 Increment Counter]\n    G --\u003e I[💾 Save State]\n    H --\u003e J{3 Consecutive No Updates?}\n    I --\u003e K[🔄 Add to Startup]\n    J --\u003e|Yes| L[🗑️ Self-Remove]\n    J --\u003e|No| M[⏰ Wait for Next Run]\n    K --\u003e N[🔄 Reboot if Needed]\n    L --\u003e O[✅ Complete]\n    M --\u003e E\n    N --\u003e E\n```\n\n### 🔄 Execution Phases\n\n#### Phase 1: Initialization 🚀\n- Checks admin privileges\n- Detects USB vs local execution\n- Creates working directory\n- Initializes logging\n\n#### Phase 2: Setup 🔧\n- Installs required PowerShell modules\n- Registers Microsoft Update service\n- Validates internet connectivity\n- Loads previous state (if exists)\n\n#### Phase 3: Update Discovery 🔍\n- Queries Windows Update for drivers and updates\n- Filters out preview/beta drivers\n- Validates driver signatures\n- Creates driver list\n\n#### Phase 4: Installation 📦\n- Creates driver backup (optional)\n- Creates restore point (optional)\n- Installs each driver sequentially\n- Logs success/failure for each\n\n#### Phase 5: State Management 💾\n- Updates installation counter\n- Records consecutive no-update runs\n- Saves state to JSON file\n- Adds to startup (first run only)\n\n#### Phase 6: Completion Check ✅\n- Evaluates completion criteria\n- Removes from startup if complete\n- Cleans up files and folders\n- Final logging\n\n## 📊 Usage Modes\n\n### 🎮 Interactive Mode (Default)\n\nRun `WindowsDriverUpdater_AutoStart.bat` for menu-driven interface:\n\n```\n========================================\n   Windows Driver Updater Auto-Start\n========================================\n\nSelect an option:\n\n[1] Install and Configure Auto-Start\n[2] Check for Updates Only\n[3] Remove from Startup\n[4] View Status\n[5] Exit\n\nEnter your choice (1-5):\n```\n\n### 🤖 Automated Mode\n\n```powershell\n# Silent installation with auto-start\n.\\WindowsDriverUpdater_AutoStart.ps1\n\n# Check only mode (no installation)\n.\\WindowsDriverUpdater_AutoStart.ps1 -CheckOnly\n\n# Remove from startup\n.\\WindowsDriverUpdater_AutoStart.ps1 -RemoveFromStartup\n```\n\n### 🎯 Legacy Compatibility Mode\n\nFor systems requiring the original updater:\n```powershell\n# Use the original script with parameters\n.\\WindowsDriverUpdater_Updated.ps1 -Silent -AutoInstall -CreateRestorePoint\n```\n\n## 🛠️ Configuration\n\n### 📁 File Locations\n\n| File/Folder | Default Location | Purpose |\n|-------------|------------------|---------|\n| 📂 **Working Directory** | `%ProgramData%\\DriverUpdater` | Main operational folder |\n| 📄 **State File** | `%ProgramData%\\DriverUpdater\\DriverUpdater.state` | Tracks progress |\n| 📝 **Log File** | `%ProgramData%\\DriverUpdater\\DriverUpdater_AutoStart.log` | Detailed logging |\n| 💾 **Driver Backups** | `%ProgramData%\\DriverUpdater\\DriverBackups\\` | Pre-update backups |\n| 🔧 **Registry Key** | `HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run` | Startup entry |\n| ⏰ **Scheduled Task** | `DriverUpdaterAutoStart` | Backup startup method |\n\n### ⚙️ Customization\n\nEdit the configuration section in `WindowsDriverUpdater_AutoStart.ps1`:\n\n```powershell\n$script:Config = @{\n    ScriptName = \"WindowsDriverUpdater_AutoStart\"\n    StartupRegPath = \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\"\n    StartupTaskName = \"DriverUpdaterAutoStart\"\n    LogFileName = \"DriverUpdater_AutoStart.log\"\n    StateFile = \"DriverUpdater.state\"\n    MaxRetries = 3                    # Retry attempts for operations\n    RetryDelaySeconds = 5              # Delay between retries\n    ConsecutiveNoUpdatesThreshold = 3  # Runs before self-removal\n}\n```\n\n## 📝 Logging \u0026 Monitoring\n\n### 📊 Log Levels\n\n| Level | Icon | Description | Example |\n|-------|------|-------------|---------|\n| **Info** | ℹ️ | General information | \"Checking for updates...\" |\n| **Success** | ✅ | Successful operations | \"Successfully installed: Intel Graphics Driver\" |\n| **Warning** | ⚠️ | Non-critical issues | \"System Restore not enabled\" |\n| **Error** | ❌ | Critical failures | \"Failed to install driver: Access denied\" |\n\n### 📄 Log File Format\n\n```\n2024-01-15 10:30:45 - [Info] ============================================================\n2024-01-15 10:30:45 - [Info] Driver Updater Auto-Start v4.4 Started\n2024-01-15 10:30:45 - [Info] Running from: C:\\DriverUpdater\\WindowsDriverUpdater_AutoStart.ps1\n2024-01-15 10:30:45 - [Info] Is USB: False\n2024-01-15 10:30:46 - [Success] Modules installed successfully\n2024-01-15 10:30:48 - [Info] Found 3 updates\n2024-01-15 10:31:05 - [Success] Successfully installed: Intel HD Graphics Driver\n2024-01-15 10:31:45 - [Success] Successfully installed: Realtek Audio Driver\n2024-01-15 10:32:15 - [Warning] Failed to install Bluetooth Driver: Error 0x80240017\n2024-01-15 10:32:16 - [Info] Installed 2 of 3 updates\n2024-01-15 10:32:17 - [Success] Driver Updater completed successfully\n```\n\n### 📊 State File Structure\n\n```json\n{\n    \"InstallCount\": 5,\n    \"LastRun\": \"2024-01-15 10:32:17\",\n    \"ConsecutiveNoUpdates\": 1,\n    \"IsComplete\": false\n}\n```\n\n### 🔍 Monitoring Commands\n\n```powershell\n# View current state\nGet-Content \"$env:ProgramData\\DriverUpdater\\DriverUpdater.state\" | ConvertFrom-Json\n\n# Monitor log in real-time\nGet-Content \"$env:ProgramData\\DriverUpdater\\DriverUpdater_AutoStart.log\" -Wait -Tail 10\n\n# Check startup registration\nGet-ItemProperty \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" | Select-Object DriverUpdaterAutoStart\nGet-ScheduledTask -TaskName \"DriverUpdaterAutoStart\" -ErrorAction SilentlyContinue\n\n# View Event Log entries (if file logging fails)\nGet-EventLog -LogName Application -Source \"DriverUpdater\" -Newest 20\n```\n\n## 🔐 Security Features\n\n### 🛡️ Built-in Protections\n\n| Feature | Description | Status |\n|---------|-------------|--------|\n| 🔐 **Admin Enforcement** | Requires administrator privileges | ✅ Mandatory |\n| 📝 **Driver Signatures** | Validates driver digital signatures | ✅ Default |\n| 💾 **Automatic Backup** | Backs up drivers before updates | ✅ Default |\n| 🔄 **Restore Points** | Creates system restore points | ⚙️ Optional |\n| 🚫 **Beta Filtering** | Excludes preview/beta drivers | ✅ Default |\n| 📊 **Audit Trail** | Comprehensive logging of all actions | ✅ Always |\n| 🔒 **TLS Security** | Uses TLS 1.2/1.3 for downloads | ✅ Enforced |\n\n### 🔑 Security Best Practices\n\n1. **🔐 Run from trusted sources only**\n2. **📝 Review logs after deployment**\n3. **💾 Keep driver backups for 30 days**\n4. **🔄 Test on non-production systems first**\n5. **📊 Monitor Event Logs for anomalies**\n\n## 🆘 Troubleshooting\n\n### ❌ Common Issues \u0026 Solutions\n\n#### 🚫 \"Administrator privileges required\"\n\n**Solution:**\n```batch\n:: Right-click and \"Run as administrator\"\n:: Or use the Install-DriverUpdater.cmd launcher\n```\n\n#### 🌐 \"No internet connection detected\"\n\n**Solution:**\n```powershell\n# Check Windows Update service\nGet-Service wuauserv | Start-Service\n\n# Test connectivity\nTest-NetConnection download.windowsupdate.com -Port 443\nTest-NetConnection windowsupdate.microsoft.com -Port 443\n\n# Check firewall\nGet-NetFirewallRule | Where DisplayName -like \"*Windows Update*\"\n```\n\n#### 📦 \"PSWindowsUpdate module installation failed\"\n\n**Solution:**\n```powershell\n# Manual installation\n[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12\nInstall-PackageProvider -Name NuGet -Force\nSet-PSRepository -Name PSGallery -InstallationPolicy Trusted\nInstall-Module -Name PSWindowsUpdate -Force -AllowClobber -Scope AllUsers\n```\n\n#### 🔄 \"Script not running at startup\"\n\n**Solution:**\n```powershell\n# Verify Registry entry\nGet-ItemProperty \"HKLM:\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\" -Name \"DriverUpdaterAutoStart\"\n\n# Check Scheduled Task\nGet-ScheduledTask -TaskName \"DriverUpdaterAutoStart\" | Get-ScheduledTaskInfo\n\n# Re-add to startup manually\n.\\WindowsDriverUpdater_AutoStart.ps1\n```\n\n#### 💾 \"State file corrupted\"\n\n**Solution:**\n```powershell\n# Delete state file and restart\nRemove-Item \"$env:ProgramData\\DriverUpdater\\DriverUpdater.state\" -Force\n.\\WindowsDriverUpdater_AutoStart.ps1\n```\n\n### 📊 Diagnostic Commands\n\n```powershell\n# Full system diagnostic\n$diag = @{\n    OS = Get-CimInstance Win32_OperatingSystem | Select Caption, Version, BuildNumber\n    PowerShell = $PSVersionTable.PSVersion\n    WUService = Get-Service wuauserv | Select Name, Status, StartType\n    Internet = Test-NetConnection download.windowsupdate.com -Port 443 -InformationLevel Quiet\n    Modules = Get-Module -ListAvailable PSWindowsUpdate\n    AdminRights = ([Security.Principal.WindowsPrincipal][Security.Principal.WindowsIdentity]::GetCurrent()).IsInRole([Security.Principal.WindowsBuiltInRole]::Administrator)\n    StateFile = Test-Path \"$env:ProgramData\\DriverUpdater\\DriverUpdater.state\"\n    LogFile = Test-Path \"$env:ProgramData\\DriverUpdater\\DriverUpdater_AutoStart.log\"\n}\n$diag | ConvertTo-Json -Depth 3\n```\n\n## ⚠️ Important Notes\n\n### 🚨 Critical Information\n\n\u003e **⚡ USB Deployment:** The tool automatically detects USB execution and copies itself to the local drive. You can safely remove the USB after starting installation.\n\n\u003e **🔄 Reboot Handling:** The tool schedules automatic reboots when required. Save your work before running!\n\n\u003e **🗑️ Self-Removal:** After 3 consecutive runs with no updates found, the tool removes itself completely.\n\n\u003e **💾 Backup Location:** Driver backups are stored in `%ProgramData%\\DriverUpdater\\DriverBackups\\` with timestamp folders.\n\n### 📋 Pre-Installation Checklist\n\n- [ ] ✅ Windows 10/11 or Server 2016+\n- [ ] ✅ Administrator privileges available\n- [ ] ✅ Internet connection active\n- [ ] ✅ Windows Update service enabled\n- [ ] ✅ At least 500MB free disk space\n- [ ] ✅ System backup completed (recommended)\n\n### 🔄 Update Cycle\n\n1. **Initial Run**: Installs available updates, adds to startup\n2. **Subsequent Runs**: Checks for new updates at each startup\n3. **Completion**: Removes itself after confirming no more updates\n\n## 📈 Performance\n\n### ⚡ Performance Metrics\n\n| Metric | Value | Notes |\n|--------|-------|-------|\n| 🚀 **Startup Impact** | \u003c 5 seconds | Minimal boot time increase |\n| 💾 **Memory Usage** | ~50-100 MB | During active updating |\n| 🌐 **Network Usage** | Variable | Depends on driver sizes |\n| ⏱️ **Average Runtime** | 5-30 minutes | Per update session |\n| 📦 **Driver Install Rate** | 1-3 min/driver | Includes validation |\n\n### 🎯 Optimization Tips\n\n1. **Use Silent Mode** for faster execution\n2. **Skip Backup** if you have recent system backup\n3. **Filter Drivers** to update only specific hardware\n4. **Schedule During Off-Hours** for minimal disruption\n\n## 🤝 Contributing\n\n### 🐛 Reporting Issues\n\nWhen reporting issues, please include:\n1. 📋 Full error message\n2. 📝 Relevant log excerpts\n3. 💻 System specifications\n4. 🔄 Steps to reproduce\n\n### 📧 Contact\n\n- **Issues**: Create an issue in the repository\n- **Security**: Report security issues privately\n- **Feature Requests**: Use the feature request template\n\n---\n\n## Changelog\n\n### Version 4.4 (2025-12-19) - Drivers, Updates, and Apps Auto-Start`r`n`r`n**Changes:**`r`n- Added app updates (WinGet and Microsoft Store)`r`n- Added Defender definitions and PowerShell module updates`r`n- Maintained feature-upgrade exclusion`r`n`r`n\n**Changes:**\n- Added Windows updates (security/critical/rollups) alongside driver updates\n- Explicitly excluded feature upgrades (e.g., Windows 10 to Windows 11)\n- Updated auto-start logs to reflect new version\n### Version 4.2 (2025-12-19) - Reliability \u0026 Cleanup Fixes\n\n**Fixes:**\n- Prevented state/log recreation after self-removal\n- Ensured log/state directories are created reliably under ProgramData\n- Allowed driver updates without KB metadata to be processed\n\n**Improvements:**\n- Added TLS hardening to auto-start module installation\n- Updated connectivity checks to use Microsoft endpoints\n\n### Version 4.1 (2025-12-02) - Code Audit \u0026 Modernization Release\n\n**Security Fixes:**\n- Fixed potential command injection vulnerability in startup registration (path validation added)\n- Replaced insecure temp script execution with scheduled task cleanup\n- Added path validation before startup registration\n\n**Bug Fixes:**\n- Fixed incorrect filter logic in `Select-DriverUpdates` (formerly `Filter-DriverUpdates`)\n- Fixed System Restore check that incorrectly queried restore points instead of service status\n- Fixed string multiplication syntax (`\"=\"*60`) that returned empty string\n- Fixed version mismatch between header (v3.3) and log output (v3.4)\n- Added null checks for driver update properties\n\n**Modernization:**\n- Replaced deprecated `Get-WmiObject` with `Get-CimInstance` (CIM is the modern standard)\n- TLS 1.3 now added conditionally only when available (prevents errors on older systems)\n- Renamed `Rotate-LogFile` to `Invoke-LogRotation` (PowerShell approved verbs)\n- Renamed `Filter-DriverUpdates` to `Select-DriverUpdates` (PowerShell approved verbs)\n- Added comprehensive documentation blocks to all functions\n\n**Code Quality:**\n- Added `[CmdletBinding()]` and proper parameter blocks to functions\n- Improved error handling with specific exception catching\n- Enhanced log rotation with efficient `-Filter` parameter usage\n- Fixed inconsistent brace styles throughout codebase\n- Added proper exit codes to all batch launchers\n\n**New Features:**\n- Added `Test-DriverUpdater.ps1` validation script for installation verification\n- Improved batch file error handling and user feedback\n\n**Performance:**\n- Optimized log file cleanup to use `-Filter` parameter directly\n- Reduced unnecessary string operations\n\n### Version 4.0 (Previous)\n- Initial Auto-Start Edition release\n- USB deployment support\n- Self-removal after completion\n\n### Version 3.3 (Legacy)\n- Core driver update functionality\n- PSWindowsUpdate integration\n\n---\n\n## License\n\nThis project is licensed under the MIT License - see the LICENSE file for details.\n\n## Acknowledgments\n\n- Microsoft Windows Update team for the update infrastructure\n- PSWindowsUpdate module contributors\n- Community testers and contributors\n\n---\n\n**Happy Updating!**\n\n*Made for Windows System Administrators*\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjtgsystems%2Fdriver-updater---windows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjtgsystems%2Fdriver-updater---windows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjtgsystems%2Fdriver-updater---windows/lists"}