Hantera Configuration Manager synkrona fel med hjälp av WMI
Du hanterar synkrona fel i Configuration Manager genom att SWbemLastError
inspektera objektet när ett fel inträffar. Ett fel har uppstått när felobjektegenskapen Number
inte är noll.
Obs!
I VBScript bör du deklarera att du vill fortsätta köra skriptet om ett fel inträffar. Annars avslutas skriptet när ett feltillstånd inträffar. Det gör du genom att använda deklarationen On Error Resume Next
i skriptet.
Exempel
I följande VBScript-exempel visas den senaste felinformationen som är tillgänglig från objektet SWbemLastError
. Du kan använda följande kod, som försöker få ett ogiltigt SMS_Package paket för att testa det.
Information om hur du anropar exempelkoden finns i Anropa Configuration Manager kodfragment.
Sub ExerciseError(connection)
On Error Resume next
Dim packages
Dim package
' Run the query.
Set package = connection.Get("SMS_Package.PackageID='UNKNOWN'")
If Err.Number<>0 Then
Call DisplayLastError
End If
End Sub
Sub DisplayLastError
Dim ExtendedStatus
' Get the error object.
Set ExtendedStatus = CreateObject("WbemScripting.SWBEMLastError")
' Determine the type of error.
If ExtendedStatus.Path_.Class = "__ExtendedStatus" Then
WScript.Echo "WMI Error: "& ExtendedStatus.Description
ElseIf ExtendedStatus.Path_.Class = "SMS_ExtendedStatus" Then
WScript.Echo "Provider Error: "& ExtendedStatus.Description
WScript.Echo "Code: " & ExtendedStatus.ErrorCode
End If
End Sub