| Server IP : 123.56.80.60 / Your IP : 216.73.216.78 Web Server : Apache/2.4.54 (Win32) OpenSSL/1.1.1s PHP/7.4.33 mod_fcgid/2.3.10-dev System : Windows NT iZhx3sob14hnz7Z 10.0 build 14393 (Windows Server 2016) i586 User : SYSTEM ( 0) PHP Version : 7.4.33 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /Windows/diagnostics/system/Printer/ |
Upload File : |
# Copyright ?2008, Microsoft Corporation. All rights reserved.
PARAM($printerName)
#
# Check the Power Off bit of the Availability property of the printer user selected
#
Import-LocalizedData -BindingVariable localizationString -FileName CL_LocalizationData
. .\CL_Utility.ps1
#
# Restart the spooler service to sync up with the latest printer status.
#
[string]$faxStatus = (Get-Service Fax).Status
try
{
Restart-Service Spooler -Force
WaitFor-ServiceStatus "Spooler" ([ServiceProcess.ServiceControllerStatus]::Running)
}
finally
{
if($faxStatus -eq "Running")
{
Start-Service Fax
WaitFor-ServiceStatus "Fax" ([ServiceProcess.ServiceControllerStatus]::Running)
}
}
try
{
# Wait 5 seconds so that the Spooler service can sync up the latest printer status.
Start-Sleep -Seconds 5
[int]$PRINTER_STATUS_OFFLINE = 0x00000080
[int]$printStatus = GetPrinterStatus $printerName
if($printStatus -band $PRINTER_STATUS_OFFLINE)
{
Update-DiagRootCause -id "RC_PrinterTurnedOff" -Detected $true -parameter @{ "PRINTERNAME" = $printerName}
} else {
Update-DiagRootCause -id "RC_PrinterTurnedOff" -Detected $false -parameter @{ "PRINTERNAME" = $printerName}
}
}
catch {}