Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
26 commits
Select commit Hold shift + click to select a range
f7adf9d
Update SystemTester.bat
Pnwcomputers Oct 3, 2025
d3e3834
Update SystemTester.ps1
Pnwcomputers Oct 3, 2025
1290f9c
Update SystemTester.bat
Pnwcomputers Oct 3, 2025
c21df4b
Update SystemTester.ps1
Pnwcomputers Oct 3, 2025
d9922ae
Update SystemTester.bat
Pnwcomputers Oct 3, 2025
d7f2d4b
Update SystemTester.ps1
Pnwcomputers Oct 4, 2025
eae00d2
Update SystemTester.bat
Pnwcomputers Oct 4, 2025
18ae7bc
Update SystemTester.bat
Pnwcomputers Oct 4, 2025
6e6fc3f
Update SystemTester.ps1
Pnwcomputers Oct 4, 2025
5d8a270
Update README.md
Pnwcomputers Oct 4, 2025
935430d
Update SystemTester.ps1
Pnwcomputers Oct 24, 2025
bfac07f
Update README.md
Pnwcomputers Oct 24, 2025
1b1cad6
Upgrade SystemTester to version 2.3
Pnwcomputers Oct 24, 2025
bf4da00
Downgrade SCRIPT_VERSION from 2.3 to 2.2
Pnwcomputers Oct 24, 2025
86edb55
Add network speed testing features and enhancements
Pnwcomputers Oct 24, 2025
d4d589d
Update README with new features and enhancements
Pnwcomputers Oct 24, 2025
81e9a71
Revise README for version 2.2 updates
Pnwcomputers Oct 24, 2025
4664e9f
Add additional commands to FULL Network Analysis section
Pnwcomputers Oct 24, 2025
c817eed
Update SystemTester.ps1 for version 2.2 enhancements
Pnwcomputers Oct 25, 2025
a253172
Fix exit command formatting in SystemTester.bat
Pnwcomputers Oct 25, 2025
a1c3111
Update
Pnwcomputers Oct 25, 2025
f2de85a
Update version to 2.3 in SystemTester.ps1
Pnwcomputers Oct 25, 2025
eceda71
Downgrade version references from v2.3 to v2.2
Pnwcomputers Oct 25, 2025
472008c
Add Windows Update alert for pending updates
Pnwcomputers Oct 25, 2025
72e34ef
Enhance tool verification with detailed stats and summary
Pnwcomputers Oct 25, 2025
317ffbe
Merge branch 'main' into Version2.2
Pnwcomputers Oct 31, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
92 changes: 28 additions & 64 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,21 @@
# 🧰 Portable Sysinternals System Tester (v2.1)
# 🧰 Portable Sysinternals System Tester v2.2

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

A no-install PowerShell solution that runs a curated set of **Sysinternals** and Windows hardware diagnostics tools, then produces: **Clean Summary Report** (human-readable, de-noised) and **Detailed Report** (cleaned tool outputs). Perfect for **field diagnostics**, **baseline health checks**, and **handoff reports** to clients.
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.

---

## ✨ Key Features
## 🚀 NEW in v2.2: Advanced Network Speed & Latency Testing

Version 2.2 introduces a complete **Network Speed Test Suite** (Menu Option 8) for in-depth connectivity and performance analysis, integrated directly into the clean reporting system.

### Key New Capabilities:

* 🖱️ **One-click Menu or Autorun** — interactive menu or `-AutoRun` parameter
* 🧹 **Output Cleaner** — removes banners, EULA text, usage blocks for readable reports
Expand Down Expand Up @@ -60,7 +69,7 @@ A no-install PowerShell solution that runs a curated set of **Sysinternals** and

## 🚀 Quick Start

### **Option A: Batch Launcher (Recommended)**
### Option A: Batch Launcher (Recommended)

1. Download or clone this repository
2. Run `SystemTester.bat` (will request admin elevation)
Expand All @@ -69,7 +78,7 @@ A no-install PowerShell solution that runs a curated set of **Sysinternals** and
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**
### Option B: Direct PowerShell

```powershell
# Interactive menu
Expand Down Expand Up @@ -102,7 +111,7 @@ For enhanced GPU testing:
| 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** | Active connections, adapter info | `netstat`, `Get-NetAdapter` |
| 7 | **FULL Network Analysis** | Active connections, adapter info | `netstat`, `Get-NetAdapter`, `psping`,`Test-NetConncetion` |
| 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` |
Expand Down Expand Up @@ -248,68 +257,23 @@ When you select GPU testing in the PowerShell menu, you can:

---

## 📋 What's New in Version 2.1

### ✅ Enhanced GPU Testing
* **Multi-GPU Support** - Detects and tests all installed graphics cards
* **Display Configuration** - Monitor details, manufacturer, model, serial numbers
* **Enhanced Driver Info** - Provider, signer, INF files, installation date
* **DirectX Diagnostics** - Improved parsing of dxdiag output
* **OpenGL Detection** - Registry-based OpenGL driver information
* **GPU Capabilities** - DWM composition, hardware-accelerated GPU scheduling, DirectX feature levels
* **NVIDIA Integration** - nvidia-smi metrics (temperature, utilization, memory, power, clocks)
* **AMD Support** - Registry-based AMD GPU and driver detection
* **GPU Memory Testing** - VRAM capacity and usage via performance counters
* **GPU-Z Integration** - Optional integration with GPU-Z for detailed monitoring

### ✅ GPU Tools Manager (Batch Menu Option 6)
* GPU-Z download assistant with browser launcher
* NVIDIA nvidia-smi verification and testing
* AMD driver detection and information
* Comprehensive tool recommendations (FurMark, 3DMark, Unigine, etc.)
* Safety warnings for stress testing tools

### ✅ Enhanced Recommendations Engine
* **Storage Health** - SMART warnings, drive failure detection
* **Storage Performance** - Speed analysis (< 50 MB/s = critical, < 100 MB/s = warning)
* **Storage Capacity** - Free space warnings (< 10% = critical, < 20% = warning)
* **SSD TRIM** - Detection and fix commands for disabled TRIM
* **Network Speed** - Slow adapter detection (10/100 Mbps warnings)
* **Network Connectivity** - No active adapter detection
* **Windows Update** - Pending update counts with severity levels
* **OS Health** - DISM/SFC corruption detection with fix commands
* **Hardware Errors** - WHEA event log analysis
* **CPU Performance** - Slow performance detection
* **GPU Drivers** - Outdated driver warnings (> 1 year old)
* **Battery Health** - Energy report references for laptops
* **Overall Health** - Multiple test failure detection

### ✅ Tool Integrity Verification (Batch Menu Option 4)
* Digital signature verification for all Sysinternals tools
* File size validation to detect corrupt downloads
* Distinguishes Microsoft-signed vs. other valid signatures
* Summary statistics with actionable recommendations

### ✅ Other Improvements
* Launcher awareness detection (knows if launched via batch file)
* Fixed memory usage calculation bug (KB to GB conversion)
* Improved error messages throughout
* Better path length warnings (Windows 260 character limit)
* Enhanced help system with troubleshooting guide
* Dual report system (Clean Summary + Detailed)
## 📋 What's New in Version 2.2

### Key New Capabilities:

| Feature | Description |
| :--- | :--- |
| **Local Connectivity** | Tests local network, default gateway reachability (`Test-NetConnection`). |
| **Internet Reachability** | Connectivity tests to multiple endpoints (Google DNS, Cloudflare DNS, Google.com, Microsoft.com). Includes 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. |

---

## 🗺️ Roadmap

### Version 2.2
* Temperature monitoring (CPU, GPU, drives via WMI)
* Advanced GPU stress testing integration
* Report history viewer in launcher
* Old report cleanup functionality
* Configuration file support (JSON) for test customization
* Performance comparison mode (vs. previous tests)

### Version 2.3
* HTML report export with charts and graphs
* Baseline comparison mode (compare current vs. previous tests)
Expand Down
54 changes: 45 additions & 9 deletions SystemTester.bat
Original file line number Diff line number Diff line change
Expand Up @@ -119,6 +119,23 @@ if not exist "%SCRIPT_DIR%\Sysinternals" (
timeout /t 2 >nul
)

:: Check for PSPing specifically (for network speed tests)
if exist "%SCRIPT_DIR%\Sysinternals\psping.exe" (
echo [INFO] PSPing detected - Full network speed tests available
) else (
echo [INFO] PSPing not found - Basic network tests only
echo Download Sysinternals Suite for full network testing
)
echo.

:: Check for Sysinternals folder
if not exist "%SCRIPT_DIR%\Sysinternals" (
echo [WARNING] Sysinternals folder not found!
echo Use Menu Option 5 to download automatically.
echo.
timeout /t 2 >nul
)

:MENU
cls
echo ========================================================
Expand Down Expand Up @@ -242,6 +259,8 @@ set "DOWNLOAD_URL=https://download.sysinternals.com/files/SysinternalsSuite.zip"
echo This will download ~35MB from Microsoft.
echo Target: %SYSINT_DIR%
echo.
echo NOTE: Includes PSPing for advanced network speed testing
echo.
set /p "confirm=Proceed? (Y/N): "
if /i not "%confirm%"=="Y" goto MENU

Expand Down Expand Up @@ -282,6 +301,15 @@ echo.
set "TOOL_COUNT=0"
for %%F in ("%SYSINT_DIR%\*.exe") do set /a TOOL_COUNT+=1
echo [SUCCESS] %TOOL_COUNT% tools installed in %SYSINT_DIR%
echo.

:: Check specifically for PSPing
if exist "%SYSINT_DIR%\psping.exe" (
echo [SUCCESS] PSPing installed - Network speed tests enabled!
) else (
echo [WARNING] PSPing not found - Basic network tests only
)

echo.
echo TIP: Use Menu Option 4 to verify tool integrity
echo.
Expand Down Expand Up @@ -617,11 +645,17 @@ echo https://download.sysinternals.com/files/SysinternalsSuite.zip
echo Extract to: %SCRIPT_DIR%\Sysinternals\
echo.
echo 5. MEMORY SHOWS 100%% (but Task Manager shows less)
echo This was a bug in v2.08 - FIXED in v2.2
echo This was a bug in v2.08 - FIXED in v2.1+
echo.
echo 6. NETWORK SPEED TESTS LIMITED
echo Cause: PSPing.exe not found
echo Solution: Download Sysinternals Suite (Option 5)
echo PSPing enables: Bandwidth testing, TCP latency
echo.
echo 6. TESTS TAKE TOO LONG
echo 7. TESTS TAKE TOO LONG
echo Expected durations:
echo - CPU Test: 10 seconds
echo - Network Speed: 30-60 seconds
echo - Energy Report: 15 seconds
echo - Windows Update: 30-90 seconds
echo - DISM/SFC: 5-15 minutes each
Expand All @@ -640,6 +674,14 @@ echo --------------------------------------------------------
echo FEATURES:
echo --------------------------------------------------------
echo.
echo NETWORK SPEED TESTING (NEW):
echo - Gateway connectivity tests
echo - Internet endpoint testing (Google, Cloudflare, MS)
echo - Latency measurements to multiple servers
echo - PSPing bandwidth capacity testing
echo - DNS resolution speed testing
echo - MTU path discovery
echo.
echo REPORT TYPES:
echo Clean Report - Summary with key findings
echo Detailed Report - Full output from all tests
Expand All @@ -649,12 +691,6 @@ echo Checks digital signatures of all tools
echo Validates file sizes
echo Identifies Microsoft-signed vs others
echo.
echo GPU TESTING:
echo Enhanced multi-GPU support
echo NVIDIA-SMI integration
echo AMD driver detection
echo GPU-Z download assistant
echo.
echo ADMIN DETECTION:
echo Auto-elevates on startup
echo Skips admin-required tests when not elevated
Expand All @@ -669,7 +705,7 @@ goto MENU
:EXIT
echo.
echo ========================================================
echo Thank you for using PNW Computers' Portable Sysinternals System Tester!
echo Thank you for using Portable Sysinternals System Tester!
echo Version %SCRIPT_VERSION%
echo ========================================================
echo.
Expand Down
Loading
Loading