HEX
Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1j PHP/8.4.25
System: Windows NT DESKTOP-4TAV2RJ 10.0 build 19045 (Windows 10) AMD64
User: fred (0)
PHP: 8.4.25
Disabled: NONE
Upload Files
File: C:/Windows/diagnostics/system/Printer/TS_PrinterDriverError.ps1
# Copyright © 2008, Microsoft Corporation. All rights reserved.
PARAM($printerName)

. .\CL_Utility.ps1
#
# Check whether the printer driver has encountered an error
#
Import-LocalizedData -BindingVariable localizationString -FileName CL_LocalizationData

Write-DiagProgress -activity $localizationString.progress_ts_printerDriverError

$pName = $printerName.Replace("\","\\")
$pnpEntity = Get-WmiObject -Query "Select * from Win32_PnpEntity where Name='$pName'" -ErrorAction SilentlyContinue

if($pnpEntity -eq $null)
{
	Update-DiagRootCause -id "RC_PrinterDriverError" -Detected $false -parameter @{ "PRINTERNAME" = $printerName}
    return
}

if($pnpEntity.ConfigManagerErrorCode -ne 0)
{
    $PnPDeviceID = $pnpEntity.PNPDeviceID.Replace("&", "&")
    Update-DiagRootCause -id "RC_PrinterDriverError" -Detected $true -parameter @{ "PRINTERNAME" = $printerName; "DEVICEID" = $PnPDeviceID}
} else {
    Update-DiagRootCause -id "RC_PrinterDriverError" -Detected $false -parameter @{ "PRINTERNAME" = $printerName}
}