Usando WMI
Você pode usar o WMI a partir de aplicativos cliente e scripts. Ele fornece uma infraestrutura que facilita a descoberta e a execução de tarefas de gerenciamento. Além disso, você pode adicionar ao conjunto de possíveis tarefas de gerenciamento criando seus próprios provedores WMI.
Observação
A versão de próxima geração do WMI para escrever aplicativos e scripts está disponível por meio da Infraestrutura de Gerenciamento do Windows (MI). Para obter mais informações, consulte MI Providers and Clients.
Os seguintes tópicos são discutidos nesta seção:
Obtendo dados do WMI
O procedimento a seguir descreve como obter dados do WMI escrevendo um script ou aplicativo.
Para obter dados do WMI escrevendo um script ou aplicativo
Decida qual idioma usar. Para obter mais informações sobre scripts, consulte Criando um script WMI. Para obter mais informações sobre C++, consulte Criando um aplicativo WMI usando C++. Para usar mais informações sobre C# ou WMI .NET, consulte Visão geral do WMI .NET .
Você pode visualizar ou manipular dados WMI em vários idiomas. A tabela a seguir lista os tópicos que descrevem como usar as linguagens de script e aplicativo para obter dados.
Língua de aplicação | Tópico |
---|---|
Scripts escritos em hospedagem de scripts Microsoft ActiveX, incluindo Visual Basic Scripting Edition (VBScript) e Perl |
API de script para WMI. Comece com Criando um script WMI. Para obter exemplos de código de script, consulte WMI Tasks for Scripts and Applications e o TechNet ScriptCenter Script Repository. |
Windows PowerShell |
Introdução ao Windows PowerShell Cmdlets do PowerShell WMI, como Get-WmiObject. |
Aplicativos Visual Basic |
API de script para WMI. |
Páginas do Ative Server |
API de script para WMI. Comece com Criando Active Server Pages para WMI. |
Aplicativos C++ |
API COM para WMI. Comece com Criando um aplicativo WMI usando C++ e Exemplos de aplicativos WMI C++ (contém exemplos). |
Aplicativos .NET Framework escritos em C#, Visual Basic .NET ou J# |
Classes na namespace Microsoft.Management.Infrastructure . Nota:System.Management era o namespace original que cobria o código gerenciado para WMI. No entanto, a tecnologia subjacente do System.Management é geralmente mais lenta e não se dimensiona tão bem quanto a Microsoft.Management.Infrastructure. Como tal, não é recomendável que você use System.Management para novos projetos. (Para obter mais informações sobre System.Management, consulte Visão geral do WMI .NET.) |
Certifique-se de que as suas ligações a computadores remotos funcionam.
Para obter mais informações, consulte Conectando-se ao WMI em um computador remoto.
A conexão com o WMI em computadores remotos requer as configurações de segurança corretas, conforme explicado em Manter a Segurança do WMI. A tabela a seguir lista os tópicos que descrevem como definir configurações de segurança com as linguagens de script e aplicativo.
Idioma Tópico Scripts em qualquer linguagem, aplicativos Visual Basic Definindo o nível de segurança de processo padrão usando VBScript Páginas do Ative Server Configurando o IIS 5 e versões posteriores para script WMI ASP C++ Definindo o nível de segurança de processo padrão usando C++ e Definindo a segurança em IWbemServices e outros proxies Depois de se conectar ao WMI, você pode obter dados por meio de consultas e enumerações.
Para obter mais informações, consulte Manipulando informações de classe e instância e Consultando com WQL.
Os dados do Registro estão disponíveis através do WMI e você pode criar novas chaves e valores ou modificar os existentes.
Para obter mais informações, consulte Modificar o registo do sistema.
Você pode assinar notificações de eventos por meio do WMI, temporariamente entre as reinicializações do sistema ou permanentemente.
Para obter mais informações, consulte Monitorização de Eventos e Receber um Evento WMI.
Os dados do contador de desempenho de um sistema estão disponíveis através do WMI.
Os contadores da biblioteca de desempenho do sistema são convertidos em classes WMI. Para obter mais informações, consulte Monitorização de Dados de Desempenho.
WMI Tasks for Scripts and Applications descreve como executar muitas tarefas administrativas com o WMI.
Fornecendo dados ao WMI
O procedimento a seguir descreve como fornecer dados ao WMI escrevendo um provedor.
Para fornecer dados ao WMI escrevendo um provedor
Decida sobre o tipo de provedor a escrever.
Não é possível escrever um provedor WMI no VBScript. No entanto, você pode adotar várias outras abordagens para escrever um provedor WMI COM:
Usando o Assistente de ATL WMI no Visual Studio.
Essa abordagem cria um provedor COM não gerenciado. Para obter mais informações, consulte Adicionando um provedor de instância WMI e Adicionando um provedor de eventos WMI.
Usando COM diretamente em qualquer ambiente de desenvolvimento integrado.
Essa abordagem cria um provedor COM não gerenciado.
Usando WMI no .NET Framework para criar um provedor de código gerenciado.
Essa abordagem cria um provedor de código gerenciado. Os provedores de código gerenciado podem ser escritos em qualquer linguagem do .NET Framework, são mais simples de escrever do que os provedores WMI COM e podem obter dados das classes baseadas em do WMI, como Win32 Classes. No entanto, o provedor WMI do .NET Framework tem algumas limitações. Para obter mais informações, consulte Gerenciando aplicativos usando WMI.
Não é recomendado o uso das classes de estrutura do fornecedor .
A estrutura do provedor foi substituída pelos assistentes WMI ATL, pelos provedores do .NET Framework ou pelo uso direto de COM. A criação de um provedor WMI COM com as classes de estrutura do provedor não é mais recomendada. A tabela a seguir lista os tópicos que descrevem como usar provedores COM ou .NET Framework.
Fornecedor Tópico O provedor COM no mesmo processo que o WMI Fornecimento de dados para o WMI Fornecedor COM desacoplado Incorporando um provedor em um aplicativo Provedor do .NET Framework em C# ou Visual Basic.NET Gerenciando aplicativos usando WMI
Tarefas importantes para WMI
Os tópicos a seguir fornecem informações sobre como usar o WMI para monitorar e controlar componentes corporativos.
Tópico | Descrição |
---|---|
tarefas WMI para scripts e aplicativos |
Descreve como localizar a classe WMI correta e procedimentos para usar em scripts e aplicativos que executam tarefas comuns de administração de computador e rede, como adicionar uma nova conexão de impressora para um computador remoto ou localizar todos os hotfixes instalados em um computador. |
Criando um aplicativo ou script WMI |
Qualquer linguagem de script, como VBScript ou Perl, que funcione com objetos ActiveX pode acessar dados WMI. As aplicações podem aceder ao WMI em C++, usando a API COM para WMI ou no Visual Basic, usando a biblioteca de tiposWbemdisp.tlb e a API de Scripting para WMI. |
Conectando-se ao WMI em um computador remoto |
Descreve como scripts, aplicativos e provedores podem estabelecer conexões com WMI em computadores remotos para obter dados ou controlar hardware e software. |
Conectando-se ao WMI em um computador remoto usando o Windows PowerShell |
Descreve como usar o Windows PowerShell para estabelecer conexões com o WMI em computadores remotos para obter dados ou controlar hardware e software. |
Monitoramento de eventos |
Descreve como obter notificações de eventos criando consumidores de eventos WMI temporários ou permanentes. |
Fornecimento de dados para WMI |
O WMI fornece dados de gerenciamento dinâmico para scripts e aplicativos de clientes obtendo-os de provedores. |
Obtendo e fornecendo dados em um computador de 64 bits |
Descreve como aceder a fornecedores não predeterminados e considerações para desenvolvedores de fornecedores em sistemas de 64 bits. |