Обработка синхронных ошибок Configuration Manager с помощью WMI

Синхронные ошибки обрабатываются в Configuration Manager путем проверки SWbemLastError объекта при возникновении ошибки. Произошла ошибка, если свойство объекта Number error не равно нулю.

Примечание.

В VBScript следует объявить, что при возникновении ошибки вы хотите возобновить выполнение скрипта. В противном случае скрипт завершится при возникновении ошибки. Для этого используйте On Error Resume Next объявление в скрипте.

Пример

В следующем примере VBScript отображаются последние сведения об ошибке, доступные из SWbemLastError объекта . Вы можете использовать следующий код, который пытается получить недопустимый пакет SMS_Package для его тестирования.

Сведения о вызове примера кода см. в разделе Вызов фрагментов кода Configuration Manager.


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  

См. также

Сведения об ошибках
WMI SDK