Qualificadores WMI padrão

A seguir, estão listados os qualificadores padrão específicos do WMI.

Aditamento

Tipo de dados: booliano

Aplica-se a: classes

Indica que uma classe contém qualificadores alterados localizados. O valor padrão é TRUE.

A classe associada pode ser traduzida. Para acessar a versão traduzida, use a identificação de localidade para construir um nome de namespace.

Bypass_GetObject

Tipo de dados: booliano

Aplica-se a: métodos

Indica que a chamada de método deve passar diretamente para a chamada ExecMethodAsync do provedor, em vez do provedor primeiro fazer uma chamada para GetObject para validar o caminho do objeto. O padrão é FALSE. Usar Bypass_GetObject pode melhorar significativamente o desempenho.

Antes de usar Bypass_GetObject, verifique se nenhuma das seguintes ações foi executada:

  • Derivar uma classe da sua classe.
  • Substituir o método que tem o qualificador Bypass_GetObject.

A falha ao seguir essas precauções pode resultar na invocação da implementação de método da classe pai em vez da classe filho. Para obter mais informações, consulte Usar o qualificador Bypass_GetObject.

CIM_Key

Tipo de dados: CIM_BOOLEAN

Aplica-se a: propriedades

Indica que a propriedade associada é uma propriedade de chave no CIM, mas não no WMI.

CIMType

Tipo de dados: VT_BSTR

Aplica-se a: propriedades, métodos, parâmetros

Contém texto que descreve o tipo de uma propriedade.

ClassContext

Tipo de dados: VT_BSTR

Aplica-se a: classes

Indica que uma classe tem instâncias associadas a mais informações fornecidas dinamicamente por um provedor.

Deprecated

Tipo de dados: CIM_BOOLEAN

Aplica-se a: propriedades, classes

Indica que a propriedade foi substituída por outra propriedade.

Display

Aplica-se a: classes, propriedades

O UUID da classe associada.

Dynamic

Tipo de dados: booliano

Aplica-se a: classes, propriedades

Indica uma classe cujas instâncias são criadas dinamicamente. O valor desse qualificador deve ser definido como TRUE.

DynProps

Tipo de dados: booliano

Aplica-se a: classes, instâncias

Indica que uma instância contém valores fornecidos por provedores de propriedades dinâmicos. O valor padrão é TRUE.

Você deve especificar esse qualificador nessa instância. Somente o valor TRUE é permitido.

Fixed

Tipo de dados: CIM_BOOLEAN

Aplica-se a: instâncias

Indica que o valor dessa propriedade não pode ser alterado durante o tempo de vida da instância.

ID

Tipo de dados: VT_I4

Aplica-se a: propriedades, parâmetros

Identifica e sequencia exclusivamente um parâmetro de propriedade ou de método quando instruções MOF são geradas de forma automática.

Esse qualificador é necessário apenas para parâmetros de método. Ao criar parâmetros para um método, os designers de classe devem começar com Id(0) para o primeiro parâmetro e usar cada inteiro sucessivo para cada parâmetro sucessivo. Se os qualificadores ID forem omitidos involuntariamente, o compilador MOF vai gerar qualificadores ID de forma automática.

Implemented

Tipo de dados: booliano

Aplica-se a: métodos

Indica que um método tem uma implementação fornecida por um provedor.

InstanceContext

Tipo de dados: VT_BSTR

Aplica-se a: instâncias

Indica que uma instância contém valores fornecidos por provedores de propriedades dinâmicos.

O valor é passado para o provedor de propriedade como um argumento para o método IWbemPropertyProvider::GetProperty.

Locale

Tipo de dados: VT_BSTR

Aplica-se a: classes ou instâncias

Especifica o idioma de origem para uma classe ou instância. Para obter mais informações sobre valores de localidade, consulte Códigos de localidade.

NamespaceSecuritySDDL

Tipo de dados: matriz de cadeia de caracteres

Aplica-se a: instâncias de namespace

Especifica um descritor de segurança para o namespace no formato SDDL. Para obter mais informações, consulte Definir a segurança de namespace quando ele é criado. A cadeia de caracteres SDDL é processada pelo WMI para estabelecer a segurança de namespace, mas não armazenada como uma cadeia de caracteres. Se nenhum descritor de segurança for especificado, a segurança padrão será usada. Para obter mais informações, consulte Definir descritores de segurança de namespace.

Optional

Tipo de dados: booliano

Aplica-se a: parâmetros

Indica que um parâmetro não é necessário e que ele tem um valor padrão bem comportado.

Privileges

Tipo de dados: matriz de cadeia de caracteres

Aplica-se a: propriedades, métodos

Conjunto de valores usados para informar ao cliente quais privilégios são necessários para criar instâncias, preencher propriedades ou executar métodos. O padrão é FALSE.

PropertyContext

Tipo de dados: VT_BSTR

Aplica-se a: propriedades

Indica que uma propriedade de instância contém valores fornecidos por provedores de propriedades dinâmicos.

Especifique esse qualificador nessa instância. O valor é passado para o provedor de propriedade como um argumento para IWbemPropertyProvider::GetProperty.

Provider

Tipo de dados: VT_BSTR

Aplica-se a: classes

O valor desse qualificador é o nome do provedor dinâmico que fornece instâncias de classe e atualiza os dados da instância. Esse nome deve ser registrado com o WMI criando uma instância da classe __Win32Provider com a propriedade Name que contém esse nome. Quando esse qualificador é especificado em uma classe cujas instâncias são fornecidas dinamicamente, o qualificador Dynamic também deve ser especificado.

RequiresEncryption

Tipo de dados: booliano

Aplica-se a: instâncias de namespace

Se definido como TRUE, RequiresEncryption marca um namespace para que os aplicativos cliente e scripts se conectem com a autenticação criptografada. O nível de autenticação deve ser definido como RPC_C_AUTHN_LEVEL_PKT_PRIVACY no C++. No script ou no Visual Basic, o nível de autenticação deve ser definido como WbemAuthenticationLevelPktPrivacy. Para obter mais informações, consulte Definir descritores de segurança de namespace. O qualificador é usado no MOF com o comando de pré-processador pragma namespace.

Para obter mais informações, consulte Definir o nível de segurança do processo padrão usando C++ ou Definir o nível de segurança do processo padrão usando VBScript. Os níveis de autenticação de script são definidos em WbemAuthenticationLevelEnum.

Singleton

Tipo de dados: booliano

Aplica-se a: classes

Designa uma classe que só pode ter uma instância e que não contém propriedades de chave.

Somente o valor TRUE (padrão) é permitido.

Static

Tipo de dados: booliano

Aplica-se a: métodos

Indica se um método pode ser chamado usando a definição de classe ou suas instâncias.

O método não pode ser invocado de uma instância.

SubType

Tipo de dados: VT_BSTR

Aplica-se a: propriedades

Indica que uma propriedade do tipo CIM_DATETIME representa um intervalo de tempo em vez de uma hora específica.

Para identificar a propriedade como um intervalo, o valor desse qualificador deve ser "interval". Todos os outros valores desse qualificador são reservados para uso futuro.

UUID

Tipo de dados: cadeia de caracteres

Aplica-se a: classes

Identificador universalmente exclusivo aplicado à classe.

ClassVersion

Tipo de dados: cadeia de caracteres

Aplica-se a: classes

O número da versão do objeto de classe. O padrão é NULL. O número da versão é incrementado quando são feitas alterações na classe.

WritePrivileges

Tipo de dados: matriz de cadeia de caracteres

Aplica-se a: propriedades

Conjunto de valores que indicam quais privilégios do sistema devem estar disponíveis e habilitados para uma operação de gravação bem-sucedida.

Comentários

Códigos da localidade

Um código de localidade tem o formato "MS_<ID do idioma de três dígitos>". Por exemplo, a localidade Inglês é MS_409. A tabela a seguir lista as IDs de idioma.

Idioma ID de idioma (hexadecimal)
Árabe 401
Português (Brasil) 416
Chinês (Simplificado) 804
Chinês (Tradicional) 404
Tcheco 405
Dinamarquês 406
Holandês 413
Inglês (padrão) 409
Finlandês 40b
Francês 40c
Alemão 407
Grego 408
Hebraico 40d
Húngaro 40e
Italiano 410
Japonês 411
Coreano 412
Norueguês 414
Polonês 415
Português (Portugal) 816
Russo 419
Espanhol c0a
Sueco 41D
Turco 41f

Usar o qualificador Bypass_GetObject

O uso do qualificador Bypass_GetObject em um método pode produzir resultados confusos.

O exemplo a seguir define as classes Shape e Circle. Observe que a classe Circle é derivada da classe Shape.

class Shape
{
   string Name;
   uint32 DrawIt();  // - draws an irregular geometric shape
};

class Circle : Shape
{
   uint32 DrawIt();  // - draws a circle
};

A chamada a seguir para ExecMethod usa um objeto Circle chamado "MyCircle" para desenhar um círculo.

ExecMethod("Shape.Name='MyCircle'","DrawIt");

No cenário anterior, o WMI chama GetObject; descobre que "Shape.Name='MyCircle'" é um Circle; e executa a implementação Circle de DrawIt. No entanto, se você usar o qualificador Bypass_GetObject no DrawIt, o WMI não chamará GetObject, não descobrirá que "Shape.Name='MyCircle"" é um Circle e executará a implementação Shape de DrawIt em vez da implementação Circle de DrawIt.

A chamada a seguir para ExecMethod sempre invoca a implementação correta de DrawIt.

ExecMethod("Circle.Name='MyCircle'","DrawIt");

Requisitos

Requisito Valor
Cliente mínimo com suporte
Windows Vista
Servidor mínimo com suporte
Windows Server 2008

Confira também

Definir descritores de segurança de namespace

Qualificadores do WMI

Como adicionar um qualificador