diff --git a/README.md b/README.md index b812877..ea8af24 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,8 @@ -# ๐Ÿงฐ Portable Sysinternals System Tester v2.21 +# Portable Sysinternals System Tester v2.4 + +

+ Thumb-drive friendly, no-install Windows hardware health check toolkit powered by Sysinternals and PowerShell. +

![Automation Level](https://img.shields.io/badge/Automation-Zero%20Touch-green) ![Windows Support](https://img.shields.io/badge/Windows-10%20%7C%2011-blue) @@ -6,604 +10,499 @@ ![Enterprise Ready](https://img.shields.io/badge/Enterprise-Ready-purple) ![GitHub issues](https://img.shields.io/github/issues/Pnwcomputers/SystemTester) ![Maintenance](https://img.shields.io/badge/Maintained-Yes-green) - + **Thumb-drive friendly, no-install Windows hardware health check toolkit** powered by **Sysinternals** and **PowerShell**. - + A zero-dependency **PowerShell solution** that runs a comprehensive, curated set of Sysinternals and Windows diagnostic tools. It then processes the raw data to produce two essential reports: a **Clean Summary Report** (human-readable, de-noised, with recommendations) and a **Detailed Report** (cleaned tool outputs). - + **The essential utility for:** * Field diagnostics and client handoff reports. * Establishing a system baseline health check. * Quickly identifying performance bottlenecks. - --- - -## ๐Ÿš€ NOW With Enhanced GPU Testing, Advanced Network Suite & Critical Bug Fixes - -Version 2.21 introduces comprehensive GPU testing capabilities, advanced network speed/latency testing, and fixes several critical bugs that prevented the script from running properly. - -### Key New Capabilities: - -* ๐Ÿ–ฑ๏ธ **One-click Menu or Autorun** โ€” interactive menu or `-AutoRun` parameter -* ๐Ÿงน **Output Cleaner** โ€” removes banners, EULA text, usage blocks for readable reports -* ๐Ÿง  **Comprehensive Tests** โ€” CPU, RAM, Disk, GPU, Network, OS Health, Windows Update status -* ๐ŸŽฎ **Enhanced GPU Testing** โ€” Multi-GPU support, NVIDIA/AMD vendor tools, display configuration -* ๐ŸŒ **Advanced Network Speed Suite** โ€” Complete connectivity, latency, DNS, MTU, and bandwidth testing -* ๐Ÿ“ **Enhanced Network Testing** โ€” Link status, speed, IP/MAC addresses, PSPing integration -* ๐Ÿ”ง **Tool Integrity Verification** โ€” Digital signature checking for Sysinternals tools -* ๐Ÿ—‚๏ธ **Smart Reporting** โ€” timestamped **Summary** + **Detailed** TXT reports with actionable recommendations -* ๐Ÿ“ฆ **Fully Portable** โ€” run from USB; no installation required -* ๐Ÿงฐ **Graceful Degradation** โ€” missing tools detected and skipped automatically with helpful messages -* ๐Ÿ” **Robust Elevation Handling** โ€” reliable admin detection (Windows Home compatible) -* ๐Ÿ“ฅ **Auto-Download Tools** โ€” built-in Sysinternals Suite downloader (no manual setup needed!) -* ๐Ÿ”„ **Windows Update Integration** โ€” checks pending updates, history, and service status -* โšก **Modern PowerShell** โ€” uses CIM instances (not deprecated WMI) for better performance - + +## What's New in v2.4 + +v2.4 focuses on fixing real-world network testing failures observed in the field, particularly on systems running VPN software (Mullvad, Tailscale, WireGuard) and environments with virtual adapters (VMware, Hyper-V). It also resolves a latency test crash that affected every system, and fixes report encoding that caused garbled output in Notepad and legacy viewers. + +### Bug Fixes + +| # | Area | Issue | Impact | +|---|------|--------|--------| +| 1 | Network Latency | `$targetPort` was never defined โ€” `Test-NetConnection` received `Port=0` and threw a validation error on every run | **Critical** โ€” latency test always failed | +| 2 | Network Latency | `PsPing` output regex was too strict โ€” minor whitespace variations caused "Unable to parse" on valid results | Medium โ€” latency stats silently dropped | +| 3 | Network Speed | Single hardcoded Hetzner HTTPS URL failed under VPN/proxy TLS interception (e.g. Mullvad) | High โ€” speed test failed on VPN-connected machines | +| 4 | Network Speed | No fallback if the download URL failed | Medium โ€” single point of failure | +| 5 | Recommendations | VMware VMnet and VPN virtual adapters (Mullvad, Tailscale) were flagged as "slow physical NICs" at 100 Mbps | Low โ€” false positive recommendation | +| 6 | Reports | Report files written as UTF-8 with Unicode bullets (`โ€ข`) and arrows (`->`) rendered as mojibake (`รขโ‚ฌยข รขโ€ '`) in Notepad and legacy viewers | Medium โ€” garbled report output | +| 7 | Reports | Box-drawing characters (`โ””โ”€`) in the menu display caused non-ASCII bytes in the script itself | Low โ€” cosmetic | +| 8 | Batch Launcher | `VERIFY` section exit-code branching silently swallowed function output | Low โ€” misleading success messages | +| 9 | Batch Launcher | Sysinternals download had no SSL bypass โ€” same VPN TLS issue as PS1 | High โ€” download failed on VPN machines | + +### What Changed Technically + +**`Test-NetworkLatency`** +- Removed the undefined `$targetPort` variable entirely โ€” ICMP ping does not require a port +- Removed `-Port` and `-InformationLevel Detailed` from `Test-NetConnection` (both require a valid port number) +- Made `PsPing` ICMP args use bare IP instead of `IP:Port` format +- Widened PsPing regex to allow variable whitespace (`\s*` instead of literal spaces) +- Added a debug "raw tail" output line when PsPing parsing fails, so failures are diagnosable +**`Test-NetworkSpeed`** +- Replaced single Hetzner URL with a 3-URL fallback chain: Cloudflare โ†’ Hetzner HTTP โ†’ OVH +- Added `[Net.ServicePointManager]::ServerCertificateValidationCallback = { $true }` before each attempt to bypass VPN/proxy MITM certificate interception, restored immediately after +- Added minimum file size check (1000 bytes) so an error HTML page returned by a firewall isn't measured as a "successful" download +**Recommendation Engine โ€” NIC check** +- Now iterates adapter lines individually rather than pattern-matching the whole output block +- Skips lines matching: `VMware`, `VMnet`, `Virtual`, `vEthernet`, `Tailscale`, `Mullvad`, `WireGuard`, `Loopback`, `Hyper-V`, `VPN`, `TAP-Windows`, `OpenVPN` +- Only physical adapters at 10/100 Mbps generate a recommendation +**Report encoding** +- All `โ€ข` replaced with `*`, all `->` were already ASCII but confirmed clean +- `Out-File` changed from `-Encoding UTF8` to `-Encoding ASCII` +- Removed Unicode box-drawing characters (`โ””โ”€`) from the menu display strings +- Script itself is now fully 7-bit ASCII โ€” no encoding surprises in any viewer +**Batch Launcher (`SystemTester.bat`)** +- Added the same SSL bypass pattern to the Sysinternals Suite download block +- Simplified VERIFY section โ€” removed exit-code branching that produced misleading results +- Removed stale reference to legacy `SystemTester_FIXED.ps1` filename from the error message --- - -## ๐Ÿ› Critical Bug Fixes in v2.21 - -### PowerShell Script Fixes - -| Issue | Impact | Status | -|-------|--------|--------| -| **Missing `Initialize-Environment` function** | ๐Ÿ”ด **CRITICAL** - Script crashed on startup | โœ… Fixed | -| **Broken `Test-ToolIntegrity` function** | ๐Ÿ”ด Tool verification failed | โœ… Fixed | -| **Missing `Test-ToolVerification` function** | ๐ŸŸก Batch menu option 4 crashed | โœ… Fixed | -| **Wrong DISM/SFC code in SMART test** | ๐ŸŸก SMART test ran wrong operations | โœ… Fixed | -| **Incorrect TRIM output message** | ๐ŸŸข Cosmetic only | โœ… Fixed | -| **AMD GPU detection limited to registry \0000** | ๐ŸŸก Multi-GPU AMD systems not detected | โœ… Fixed | -| **GPU driver year parsing could crash** | ๐ŸŸข Rare crash in recommendations | โœ… Fixed | -| **COM object memory leak in Windows Update** | ๐ŸŸข Minor memory leak | โœ… Fixed | - -### Batch Launcher Fixes - -| Issue | Impact | Status | -|-------|--------|--------| -| **Duplicate Sysinternals folder check** | ๐ŸŸข Annoying duplicate warnings | โœ… Fixed | -| **AMD GPU detection limited to \0000** | ๐ŸŸก Multi-GPU AMD systems not detected | โœ… Fixed | -| **No GPU-Z size validation** | ๐ŸŸข Corrupted files not caught | โœ… Fixed | -| **Inconsistent errorlevel checking** | ๐ŸŸข Minor reliability issues | โœ… Fixed | - -### Impact Summary - -**Before Fixes:** -- โŒ PowerShell script would crash immediately on startup -- โŒ Tool verification from batch menu would fail -- โš ๏ธ AMD GPUs only detected if in first registry position -- โš ๏ธ SMART test would incorrectly run DISM/SFC scans - -**After Fixes:** -- โœ… Script runs reliably from startup -- โœ… All menu options functional -- โœ… Multi-GPU systems fully supported -- โœ… All tests run correct operations -- โœ… Better error handling throughout - + +## Key Capabilities + +* **One-click Menu or Autorun** โ€” interactive menu or `-AutoRun` parameter +* **Output Cleaner** โ€” removes banners, EULA text, usage blocks for readable reports +* **Comprehensive Tests** โ€” CPU, RAM, Disk, GPU, Network, OS Health, Windows Update status +* **Enhanced GPU Testing** โ€” Multi-GPU support, NVIDIA/AMD vendor tools, display configuration +* **Network Speed & Latency** โ€” Multi-URL fallback download test, PsPing integration, VPN-aware +* **Tool Integrity Verification** โ€” Digital signature checking for all Sysinternals tools +* **Smart Reporting** โ€” timestamped Clean Summary + Detailed TXT reports with recommendations +* **Fully Portable** โ€” runs from USB; no installation required +* **Graceful Degradation** โ€” missing tools detected and skipped automatically +* **Robust Elevation Handling** โ€” reliable admin detection (Windows Home compatible) +* **Auto-Download Tools** โ€” built-in Sysinternals Suite downloader via batch launcher +* **Windows Update Integration** โ€” checks pending updates and service status +* **Modern PowerShell** โ€” uses CIM instances (not deprecated WMI) for better performance --- - -## ๐Ÿงฉ Requirements - + +## Requirements + * **OS:** Windows 10/11 (Windows Server supported) * **PowerShell:** 5.1+ or PowerShell 7 * **Permissions:** Administrator rights recommended (some tests require elevation) * **Internet:** Only needed for auto-download feature (optional) * **Sysinternals Tools:** Auto-downloadable via launcher or manual installation * **GPU Tools (Optional):** NVIDIA drivers (nvidia-smi), AMD drivers, GPU-Z - --- - -## ๐Ÿ“ Recommended Folder Structure - + +## Recommended Folder Structure + ``` -๐Ÿ“‚ SystemTester/ -โ”œโ”€โ”€ ๐Ÿ“„ SystemTester.ps1 # Main PowerShell script (USE THIS) -โ”œโ”€โ”€ ๐Ÿ“„ SystemTester.bat # Batch launcher (USE THIS) -โ”œโ”€โ”€ ๐Ÿ“„ README.md # This file -โ”œโ”€โ”€ ๐Ÿ“„ LICENSE # MIT License -โ”œโ”€โ”€ ๐Ÿ“‚ Sysinternals/ # Auto-created by launcher -โ”‚ โ”œโ”€โ”€ psinfo.exe -โ”‚ โ”œโ”€โ”€ coreinfo.exe -โ”‚ โ”œโ”€โ”€ pslist.exe -โ”‚ โ”œโ”€โ”€ handle.exe -โ”‚ โ”œโ”€โ”€ autorunsc.exe -โ”‚ โ”œโ”€โ”€ psping.exe # For advanced network latency testing -โ”‚ โ””โ”€โ”€ ... (60+ other tools) -โ”œโ”€โ”€ ๐Ÿ“‚ Tools/ # GPU testing tools (optional) -โ”‚ โ””โ”€โ”€ GPU-Z.exe # Downloaded via Option 6 -โ””โ”€โ”€ ๐Ÿ“‚ Reports/ # Created when tests run - โ”œโ”€โ”€ SystemTest_Clean_20250103_143022.txt - โ””โ”€โ”€ SystemTest_Detailed_20250103_143022.txt +SystemTester/ ++-- SystemTester.ps1 # Main PowerShell script ++-- SystemTester.bat # Batch launcher ++-- README.md ++-- LICENSE ++-- Sysinternals/ # Auto-created by launcher (Option 5) +| +-- psinfo.exe +| +-- coreinfo.exe +| +-- pslist.exe +| +-- handle.exe +| +-- psping.exe # Required for latency testing +| +-- autorunsc.exe +| +-- ... (60+ other tools) ++-- Tools/ # GPU testing tools (optional) +| +-- GPU-Z.exe # Via launcher Option 6 ++-- Reports/ # Auto-created on first report generation + +-- SystemTest_Clean_20260423_143022.txt + +-- SystemTest_Detailed_20260423_143022.txt + +-- energy-report.html # If power test ran (admin only) ``` - + --- - -## ๐Ÿš€ Quick Start - + +## Quick Start + ### Option A: Batch Launcher (Recommended) - + 1. Download or clone this repository 2. Run `SystemTester.bat` (will request admin elevation) 3. Choose **Option 5** to auto-download Sysinternals Suite (first time only) 4. Choose **Option 6** to set up GPU testing tools (optional) 5. Choose **Option 1** for interactive menu or **Option 2** to run all tests 6. Reports are saved in the script directory - ### Option B: Direct PowerShell - + ```powershell # Interactive menu powershell -ExecutionPolicy Bypass -File .\SystemTester.ps1 - + # Run all tests automatically powershell -ExecutionPolicy Bypass -File .\SystemTester.ps1 -AutoRun ``` - -> โ„น๏ธ **Launcher compatibility:** The batch launcher automatically detects either `SystemTester_FIXED.ps1` or the legacy `SystemTester.ps1` filename, so both naming conventions continue to work. - -### **First-Time Setup** - + +### First-Time Setup + If Sysinternals tools are missing: 1. **Automatic:** Use launcher Menu Option 5 to download (~35 MB) 2. **Manual:** Download from [live.sysinternals.com](https://live.sysinternals.com), extract to `.\Sysinternals\` - For enhanced GPU testing: 1. **NVIDIA GPUs:** Install latest NVIDIA drivers (includes nvidia-smi) 2. **AMD GPUs:** Install latest AMD drivers -3. **GPU-Z (Optional):** Use launcher Menu Option 6 โ†’ 1 to download - +3. **GPU-Z (Optional):** Use launcher Menu Option 6 -> 1 to download --- - -## ๐Ÿงช Test Suites (18 Categories) - -| # | Category | Description | Key Tools Used | -|---|----------|-------------|----------------| -| 1 | **System Information** | OS details, computer info, clock resolution | `psinfo`, `clockres`, CIM queries | -| 2 | **CPU Testing** | Architecture, performance benchmarks, top processes | `coreinfo`, stress test, process analysis | -| 3 | **RAM Testing** | Memory capacity, modules, usage patterns | CIM queries, `testlimit`, performance counters | -| 4 | **Storage Testing** | Drives, fragmentation, performance, SMART data | `du`, `contig`, `streams`, read/write tests | -| 5 | **Process Analysis** | Running processes, handles, process tree | `pslist`, `handle` | -| 6 | **Security Analysis** | Autorun entries, startup items | `autorunsc` | -| 7 | **Network Analysis** | Connectivity, latency, DNS, bandwidth, MTU | `netstat`, `Get-NetAdapter`, `psping`, `Test-NetConnection` | -| 8 | **OS Health** | System file integrity, component store | `DISM`, `SFC` | -| 9 | **Storage SMART** | Drive health, reliability counters | `Get-PhysicalDisk`, WMI SMART | -| 10 | **SSD TRIM** | TRIM enablement status | `fsutil` | -| 11 | **Network Adapters** | Link status, speed, IP/MAC addresses | `Get-NetAdapter`, `Get-NetIPConfiguration` | -| 12 | **GPU (Enhanced)** | Multi-GPU info, vendor tools, memory | CIM, `dxdiag`, `nvidia-smi`, GPU-Z | -| 12a | **Basic GPU Info** | Details, displays, drivers, DirectX, OpenGL | CIM queries, `dxdiag` | -| 12b | **Vendor-Specific** | NVIDIA/AMD metrics, temperatures, utilization | `nvidia-smi`, AMD registry | -| 12c | **GPU Memory** | VRAM capacity, usage, performance counters | CIM, performance counters | -| 13 | **Power/Battery** | Battery health, energy report | `powercfg`, WMI Battery | -| 14 | **Hardware Events** | WHEA error logs (last 7 days) | Event Viewer (WHEA-Logger) | -| 15 | **Windows Update** | Pending updates, history, service status | Windows Update COM API | - -### Network Speed Test Suite (Option 7) Features: - -* **Local Connectivity** โ€” Tests local network and default gateway reachability (`Test-NetConnection`) -* **Internet Reachability** โ€” Connectivity tests to multiple endpoints (Google DNS, Cloudflare DNS, Google.com, Microsoft.com) with port-specific testing (DNS 53, HTTPS 443) -* **Latency Testing** โ€” Detailed ping tests to multiple targets with round-trip time measurements -* **PSPing Integration** โ€” Advanced latency and TCP bandwidth capacity testing for connection quality analysis (requires `psping.exe` in Sysinternals folder) -* **DNS Resolution Speed** โ€” Measures DNS lookup speed for multiple domains in milliseconds -* **Network MTU Discovery** โ€” Checks for standard MTU (1500 bytes) without fragmentation to help identify network configuration issues - + +## Test Suites (18 Categories) + +| # | Category | Description | Key Tools | +|---|----------|-------------|-----------| +| 1 | System Information | OS details, computer info, clock resolution | `psinfo`, `clockres`, CIM | +| 2 | CPU Testing | Architecture, performance benchmarks | `coreinfo`, synthetic test | +| 3 | RAM Testing | Capacity, usage patterns | CIM queries | +| 4 | Storage Testing | Drives, performance, fragmentation | `du`, `contig`, read/write test | +| 5 | Process Analysis | Running processes, handles, process tree | `pslist`, `handle` | +| 6 | Security Analysis | Autorun entries, startup items | `autorunsc` | +| 7 | Network Analysis | Connectivity, latency, speed, adapters | `netstat`, `psping`, `Test-NetConnection` | +| 8 | OS Health | System file integrity, component store | `DISM`, `SFC` | +| 9 | Storage SMART | Drive health | `Get-PhysicalDisk` | +| 10 | SSD TRIM | TRIM enablement status | `fsutil` | +| 11 | Network Adapters | Link status, speed, IP/MAC | `Get-NetAdapter` | +| 12 | GPU (Enhanced) | Multi-GPU info, vendor tools, memory | CIM, `dxdiag`, `nvidia-smi` | +| 12a | Basic GPU Info | Details, displays, drivers, DirectX, OpenGL | CIM, `dxdiag` | +| 12b | Vendor-Specific | NVIDIA/AMD metrics, temps, utilization | `nvidia-smi`, AMD registry | +| 12c | GPU Memory | VRAM capacity, usage, performance counters | CIM, perf counters | +| 13 | Power/Battery | Battery health, energy report | `powercfg`, WMI | +| 14 | Hardware Events | WHEA error logs (last 7 days) | Event Viewer | +| 15 | Windows Update | Pending updates, service status | Windows Update COM API | + +### Network Testing (Option 7) โ€” v2.4 Changes + +The network test was the most heavily revised area in v2.4. Specific improvements: + +* **Speed test** now tries three servers in sequence (Cloudflare, Hetzner HTTP, OVH) and stops at the first success, rather than failing outright if the single Hetzner HTTPS URL is blocked or intercepted +* **SSL certificate bypass** is applied per-attempt and restored immediately after, handling VPN and proxy setups that perform TLS interception (Mullvad, corporate proxies, etc.) +* **Latency test** now runs without a port parameter, so the `Test-NetConnection` ICMP ping actually executes on every system instead of throwing a port validation error +* **PsPing** parsing is more flexible โ€” results are captured correctly across different PsPing output formats +* **Adapter recommendations** no longer flag VMware, Hyper-V, Tailscale, Mullvad, or other virtual adapters as "slow physical NICs" --- - -## ๐Ÿ“Š Sample Output - + +## Sample Output + ### Clean Summary Report ``` ========================================= - SYSTEM TEST REPORT v2.21 + SYSTEM TEST REPORT v2.4 CLEAN SUMMARY ========================================= -Date: 2025-01-03 14:30:22 +Date: 04/23/2026 14:30:22 Computer: DESKTOP-ABC123 Admin: YES - + SUMMARY: - Total Tests: 32 - Success: 30 + Total Tests: 33 + Success: 31 Failed: 0 Skipped: 2 - Success Rate: 93.8% - + Success Rate: 93.9% + KEY FINDINGS: ------------- - + SYSTEM: - OS: Microsoft Windows 11 Pro 10.0.22631 + OS: Microsoft Windows 11 Pro 10.0.26200 Architecture: 64-bit Computer: DESKTOP-ABC123 - Manufacturer: Dell Inc. - Model: XPS 15 9520 - RAM: 32 GB - + Manufacturer: Micro-Star International Co., Ltd. + Model: MS-7D30 + RAM: 63.73 GB + MEMORY: - Total RAM: 32 GB - Available: 18.5 GB - Used: 13.5 GB - Usage: 42.2% - + Total RAM: 63.73 GB + Available: 42.07 GB + Used: 21.66 GB + Usage: 34% + DISK PERFORMANCE: - Write: 487.3 MB/s - Read: 523.1 MB/s - + Write: 200.51 MB/s + Read: 222.35 MB/s + GPU: - Name: NVIDIA GeForce RTX 3060 - Adapter RAM: 12 GB - Driver Version: 31.0.15.4601 - + Name: NVIDIA GeForce RTX 3080 + Adapter RAM: 10 GB + Driver Version: 32.0.15.9621 + +NETWORK SPEED: + Active Link Speeds: + Wi-Fi: 2.4 Gbps + Mullvad: 100 Gbps + Tailscale: 100 Gbps + Internet Download Test: + URL: https://speed.cloudflare.com/__down?bytes=10000000 + File Size: 9.54 MB + Time: 0.84 sec + Throughput: 906.7 Mbps (113.3 MB/s) + +NETWORK LATENCY: + Target: 8.8.8.8 + Test-NetConnection: + Ping Succeeded: True + Ping RTT: 12 ms + PsPing Summary: + Min: 11.2 ms + Max: 14.7 ms + Avg: 12.4 ms + +WINDOWS UPDATE: + Service: Running + Pending: 0 + Pending Updates: None + RECOMMENDATIONS: ---------------- -โ€ข GOOD: Low memory usage (42.2%) - plenty of RAM available -โ€ข INFO: GPU drivers are over 1 year old (2023) - โ†’ Update to latest drivers for best performance - โ†’ NVIDIA: GeForce Experience or nvidia.com - โ†’ AMD: amd.com/en/support -โ€ข WARNING: 15 pending Windows Updates - โ†’ Install updates soon for security and stability - โ†’ Schedule during non-working hours -โ€ข EXCELLENT: All tests passed successfully - โ†’ System is operating normally - -For detailed output, see: SystemTest_Detailed_20250103_143022.txt +* GOOD: Low memory usage (34%) - plenty of RAM available +* GOOD: Windows is up to date +* INFO: GPU drivers are over 1 year old + -> Update to latest drivers for best performance + -> NVIDIA: GeForce Experience or nvidia.com + -> AMD: amd.com/en/support + +For detailed output, see: SystemTest_Detailed_20260423_143022.txt ``` - + +Note: Report files use plain ASCII โ€” bullets are `*` and arrows are `->`. This ensures correct display in Notepad, legacy terminals, and any text viewer without encoding configuration. + --- - -## ๐Ÿ”ง Launcher Menu Options - + +## Launcher Menu Options + The batch launcher (`SystemTester.bat`) provides: - -1. **Run Interactive Menu** โ€” Select individual tests (includes GPU sub-options) + +1. **Run Interactive Menu** โ€” Select individual tests (includes GPU sub-options 12, 12a, 12b, 12c) 2. **Run ALL Tests Automatically** โ€” Complete system scan with auto-report 3. **Fix PowerShell Execution Policy** โ€” Set CurrentUser to RemoteSigned -4. **Verify Tool Integrity** โ€” Check digital signatures and file sizes (FIXED: now works!) -5. **Download/Update Sysinternals Suite** โ€” Auto-download from Microsoft (~35 MB) +4. **Verify Tool Integrity** โ€” Check digital signatures and file sizes of Sysinternals tools +5. **Download/Update Sysinternals Suite** โ€” Auto-download from Microsoft (~35 MB); VPN-compatible in v2.4 6. **GPU Testing Tools Manager** โ€” Download and manage GPU testing tools - - GPU-Z installation assistant (with size validation) - - NVIDIA tools verification (nvidia-smi) - - AMD driver detection (multi-GPU support) - - Tool recommendations (FurMark, 3DMark, etc.) -7. **Help / Troubleshooting** โ€” Comprehensive troubleshooting guide -8. **Exit** โ€” Close launcher - -### GPU Testing Sub-Menu (PowerShell Option 12) - -When you select GPU testing in the PowerShell menu, you can: -* **12** - Run all GPU tests (comprehensive) -* **12a** - Basic GPU info only (fastest, ~3-5 seconds) -* **12b** - Vendor-specific tools (NVIDIA-SMI, AMD - now detects all GPUs) -* **12c** - GPU memory testing - +7. **Help / Troubleshooting** โ€” Comprehensive troubleshooting guide updated for v2.4 +8. **Exit** --- - -## ๐Ÿ› ๏ธ Troubleshooting - -### "Sysinternals tools not found" -**Solution:** Use launcher Menu Option 5 to auto-download, or manually download from [live.sysinternals.com](https://live.sysinternals.com) - + +## Troubleshooting + +### Network speed test fails / SSL error +**Cause:** VPN or proxy performing TLS inspection (Mullvad, Tailscale, corporate proxy). +**Status:** Fixed in v2.4. The script now tries three different servers and bypasses certificate validation per-attempt. +If all three fail, check firewall rules blocking outbound HTTP/HTTPS. + +### Latency test always fails with "Port" error +**Cause:** Bug in v2.21 โ€” an undefined `$targetPort` variable caused `Test-NetConnection` to receive `Port=0`, which Windows rejects. +**Status:** Fixed in v2.4. + +### PsPing shows "Unable to parse latency results" +**Cause:** PsPing output formatting variation not matched by the old strict regex. +**Status:** Fixed in v2.4. If it still shows, the debug line will display the raw PsPing output for diagnosis. + +### VMware or VPN adapters flagged as "slow NIC" +**Cause:** Old recommendation logic matched `100 Mbps` anywhere in the adapter list, including virtual adapters. +**Status:** Fixed in v2.4. Virtual and VPN adapters are now excluded from the physical NIC speed check. + +### Reports contain garbled characters (รขโ‚ฌยข รขโ€ ') +**Cause:** Report was written as UTF-8 but viewed in Notepad or a tool expecting ASCII/Latin-1. +**Status:** Fixed in v2.4. Reports now use ASCII encoding and plain `*` / `->` characters. + ### "Execution policy" errors -**Solution:** Use launcher Menu Option 3, or run: `Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force` - +**Solution:** Use launcher Menu Option 3, or run: +`Set-ExecutionPolicy RemoteSigned -Scope CurrentUser -Force` + ### "Access denied" / Permission errors -**Solution:** Right-click launcher and choose "Run as administrator" - -### Script crashes immediately on startup (v2.21 original only) -**Solution:** โœ… **FIXED** - Use `SystemTester.ps1` instead. Original had missing `Initialize-Environment` function. - -### Tool verification (Menu Option 4) crashes -**Solution:** โœ… **FIXED** - Use `SystemTester.bat` and `SystemTester.ps1`. Missing function has been added. - -### AMD GPU not detected (multi-GPU systems) -**Solution:** โœ… **FIXED** - Script now checks ALL registry subkeys (\0000, \0001, \0002, etc.), not just \0000. - -### GPU-Z appears corrupted -**Solution:** โœ… **FIXED** - Launcher now validates file size (should be >1MB). Re-download if size is too small. - -### SMART test runs DISM/SFC instead -**Solution:** โœ… **FIXED** - Incorrect code has been removed from SMART test function. - -### Windows Update check fails -**Solution:** Ensure Windows Update service is running; may require administrator rights - -### GPU tests show "SKIPPED" -**Solution:** -- For NVIDIA: Install latest drivers from nvidia.com -- For AMD: Install latest drivers from amd.com/support -- nvidia-smi is included with NVIDIA drivers -- Some GPU tests don't require special tools and should always work -- **Note:** AMD detection now properly checks all registry locations - -### Tests taking too long -**Expected:** Some tests are intentionally slow: -- CPU Performance: 10-30 seconds -- Power/Energy Report: 15-20 seconds (admin only) +**Solution:** Right-click `SystemTester.bat` and choose "Run as administrator". + +### Sysinternals tools not found +**Solution:** Use launcher Menu Option 5 to auto-download, or manually download from [live.sysinternals.com](https://live.sysinternals.com). + +### Reports not found after running tests +Reports are saved to a `Reports\` subfolder inside the script directory โ€” not the script root itself. + +Full path: `