InstrumentationManager Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece métodos que gerenciam o tempo de vida e o modelo usados para provedores separados.
Observação: as bibliotecas do .NET no WMI agora são consideradas em estado final e nenhum desenvolvimento, melhorias ou atualizações adicionais estarão disponíveis para problemas não relacionados à segurança que afetarem essas bibliotecas. As APIs de MI devem ser usadas para todos os novos desenvolvimentos.
public ref class InstrumentationManager abstract sealed
public static class InstrumentationManager
type InstrumentationManager = class
Public Class InstrumentationManager
- Herança
-
InstrumentationManager
Exemplos
O exemplo a seguir demonstra como usar o modelo de publicação/revogação. Duas instâncias da classe de roteador são criadas e publicadas. Mais tarde, eles são revogados.
public class Sample_InstanceProvider
{
public int Main (string[] args)
{
var r_one = new Router();
r_one.Name = "one";
InstrumentationManager.Publish(r_one);
var r_two = new Router ();
r_two.Name = "two";
InstrumentationManager.Publish(r_two);
// ....
InstrumentationManager.Revoke(r_one);
InstrumentationManager.Revoke(r_two);
return 0;
}
}
No próximo exemplo, o método de retorno de chamada de registro é usado para expor a classe RouterNew.
public int MainNew(string[] args)
{
InstrumentationManager.RegisterType(typeof(RouterNew));
// ....
InstrumentationManager.UnRegisterType(typeof(RouterNew));
return 0;
}
Comentários
Provedores separados são hospedados por um aplicativo. Dois métodos podem ser usados pelo aplicativo para disponibilizar instâncias de classes WMI: publicar/revogar ou o método de retorno de chamada. O método de retorno de chamada usa os RegisterType métodos e UnregisterType .
No modelo de publicação/revogação, a infraestrutura WMI fornece um comportamento padrão para muitos dos métodos que você precisa escrever no método de retorno de chamada. Eles incluem os métodos de enumeração e associação. Nesse modelo, o aplicativo cria instâncias e as publica. O aplicativo é responsável por garantir que as principais propriedades das classes sejam respeitadas. O aplicativo também é responsável por excluir instâncias.
No modelo de retorno de chamada, a infraestrutura WMI espera que o aplicativo tenha métodos que lidam com enumeração, associação e quaisquer outros métodos necessários para implementar a funcionalidade do provedor. Ele chama o aplicativo para essa funcionalidade e falha se ela não existir ou não for implementada corretamente. O aplicativo registra o tipo de suas classes WMI com a infraestrutura chamando RegisterType e indica que não deseja mais que as classes WMI sejam expostas chamando UnregisterType.
Métodos
Publish(Object) |
Disponibiliza uma instância de um provedor na infraestrutura de WMI. |
RegisterAssembly(Assembly) |
Registra um assembly com a infraestrutura de WMI. |
RegisterType(Type) |
Registra uma classe com a infraestrutura de WMI. |
Revoke(Object) |
Pega uma instância de um provedor disponível no momento e a torna indisponível na infraestrutura de WMI. |
UnregisterAssembly(Assembly) |
Cancela o registro de um assembly atualmente registrado com a infraestrutura WMI. |
UnregisterType(Type) |
Cancela o registro de uma classe registrada com a infraestrutura WMI. |