|
Server : Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 System : Windows NT SERVER-PC 10.0 build 26200 (Windows 11) AMD64 User : ServerPC ( 0) PHP Version : 8.2.12 Disable Function : NONE Directory : C:/Windows/diagnostics/system/DeviceCenter/ |
Upload File : |
# Copyright � 2008, Microsoft Corporation. All rights reserved.
. .\CL_Utility.ps1
Import-LocalizedData -BindingVariable localizationString -FileName CL_LocalizationData
Write-DiagProgress -activity $localizationString.Progress_Troubleshoot
try
{
[string]$DeviceErrorInfo = Get-DiagInput -ID "IT_DeviceInfo"
}
catch
{
return
}
if([String]::IsNullOrEmpty($DeviceErrorInfo) -eq $True)
{
return
}
$DeviceDataArray = GetProblematicFunctionForObject $DeviceErrorInfo
if($DeviceDataArray -eq $Null)
{
return
}
$PnPDeviceID = ""
$PrinterName = ""
foreach($DeviceData in $DeviceDataArray)
{
$DeviceType = $DeviceData.Type
if([String]::IsNullOrEmpty($DeviceType) -eq $True)
{
return
}
if($DeviceType -eq "PNPDevice")
{
$PnPDeviceID += $DeviceData.DeviceID
$PnPDeviceID += "#"
}
if($DeviceType -eq "Printer")
{
$PrinterName = $DeviceData.DeviceName
}
}
if([String]::IsNullOrEmpty($PnPDeviceID) -eq $False)
{
$PnPDeviceID = $PnPDeviceID.Replace("&", "&")
Update-DiagRootCause -id "RC_ProblematicPNPDevice" -Detected $true -p @{'DEVICEID' = $PnPDeviceID}
}
if([String]::IsNullOrEmpty($PrinterName) -eq $False)
{
Update-DiagRootCause -id "RC_ProblematicPrinter" -Detected $true -p @{'PRINTERNAME' = $PrinterName}
}