# PCS Toolkit - Battery Report # Generates detailed battery health report for laptops $timestamp = Get-Date -Format "yyyy-MM-dd_HH-mm-ss" $outputDir = "$env:USERPROFILE\Desktop" $htmlFile = "$outputDir\BatteryReport_$timestamp.html" $logFile = "$outputDir\BatteryReport_$timestamp.txt" function Log($msg) { Write-Host $msg Add-Content $logFile $msg } Log "========================================" Log " PCS Toolkit - Battery Report" Log "========================================" Log "Generated: $(Get-Date)" Log "Computer: $env:COMPUTERNAME" Log "" $battery = Get-CimInstance -ClassName Win32_Battery -EA SilentlyContinue if (-not $battery) { Log "No battery detected. This may be a desktop computer." Log "" explorer.exe "/select,$logFile" Read-Host "Press Enter to exit" exit } Log "=== CURRENT BATTERY STATUS ===" Log "Battery Name: $($battery.Name)" Log "Status: $($battery.Status)" Log "Estimated Charge: $($battery.EstimatedChargeRemaining)%" Log "" Log "Generating detailed battery report..." try { powercfg /batteryreport /output $htmlFile 2>&1 | Out-Null Log "Battery report generated!" Log "HTML Report: $htmlFile" Start-Process $htmlFile } catch { Log "ERROR: Failed to generate battery report: $_" } Log "" Log "========================================" explorer.exe "/select,$htmlFile" Read-Host "Press Enter to exit"