classe __ExtendedStatus

A classe de sistema __ExtendedStatus é usada para relatar informações detalhadas de status e de erro.

A sintaxe a seguir é simplificada do código MOF (Managed Object Format) e inclui todas as propriedades herdadas. As propriedades são listadas em ordem alfabética e não na ordem do MOF.

Sintaxe

class __ExtendedStatus : __NotifyStatus
{
  string Description;
  string Operation;
  string ParameterInfo;
  string ProviderName;
  uint32 StatusCode;
};

Membros

A classe __ExtendedStatus tem estes tipos de membros:

Propriedades

A classe __ExtendedStatus tem essas propriedades.

Descrição

Tipo de dados: string

Tipo de acesso: Somente leitura

Qualquer cadeia de caracteres definida pelo usuário que descreva um erro ou status operacional.

Operação

Tipo de dados: string

Tipo de acesso: Somente leitura

Operação que ocorre no momento de uma falha ou anomalia. Normalmente, o WMI (Instrumentação de Gerenciamento do Windows) define essa propriedade com o nome de uma API COM para o método WMI, como por exemplo: IWbemServices::CreateInstanceEnum.

ParameterInfo

Tipo de dados: string

Tipo de acesso: Somente leitura

Parâmetros envolvidos em um erro ou mudança de status. Por exemplo, se um aplicativo tentar recuperar uma classe que não existe, essa propriedade será definida com o nome da classe inválida.

ProviderName

Tipo de dados: string

Tipo de acesso: Somente leitura

Identifica o provedor que causa ou relata um erro ou mudança de status. Se um provedor não estiver envolvido, essa cadeia de caracteres será definida como "Gerenciamento do Windows".

StatusCode

Tipo de dados: uint32

Tipo de acesso: Somente leitura

Contém um código de erro ou informações para uma operação. Isso pode ser qualquer valor definido pelo provedor, mas o valor 0 (zero) geralmente é reservado para indicar êxito. Essa propriedade é herdada de __NotifyStatus.

Comentários

A classe __ExtendedStatus é derivada da classe __NotifyStatus.

Use a classe __ExtendedStatus para relatar informações mais complexas do que um simples código de resultado. Os provedores podem derivar suas próprias classes de __ExtendedStatus se precisarem de mais propriedades para descrever os erros.

A propriedade StatusCode, herdada da classe pai __NotifyStatus, é um inteiro sem sinal que representa o erro ou valor do status. Quando as instâncias dessa classe são retornadas de um método por um provedor dinâmico, as propriedades StatusCode e Description são definidas pelo provedor e as outras propriedades são definidas pelo WMI.

Exemplos

O exemplo de código a seguir, obtido do código de exemplo VBScript FND:How to Handle Configuration Manager Asynchronous Errors by Using WMI na Galeria do TechNet, descreve como usar o __ExtendedStatus para recuperar informações de erro.

Sub sink_OnCompleted(HResult, oErr, oCtx) 
    WScript.Echo "All collections returned" 
  
    if HResult <> 0 Then  
    ' Determine the type of error. 
        If oErr.Path_.Class = "__ExtendedStatus" Then 
            WScript.Echo "WMI Error: "& oErr.Description             
        ElseIf ExtendedStatus.Path_.Class = "SMS_ExtendedStatus" Then 
            WScript.Echo "Provider Error: "& oErr.Description 
            WScript.Echo "Code: " & oErr.ErrorCode 
        End If 
    End If     
    bdone = true 
End sub

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista
Servidor mínimo com suporte
Windows Server 2008
Namespace
Todos os namespaces do WMI

Confira também

__NotifyStatus

Classes do sistema do WMI