Implementar a interface de alto desempenho
Como o WMI carrega um provedor de alto desempenho em processo no WMI ou em um aplicativo cliente, você deve projetar seu provedor de alto desempenho como um servidor em processo. Além disso, você deve implementar os métodos de provedor de alto desempenho nas interfaces IWbemHiPerfProvider e IWbemRefresher.
Você deve implementar um provedor de alto desempenho como um servidor em processo. Uma questão que você deve estar ciente ao implementar a segurança de um servidor em processo é como o provedor identifica sua própria localização. Quando carregado em processo no WMI, o WMI cria uma instância do provedor usando um CLSID. Quando carregado em processo em um aplicativo cliente, o aplicativo cliente cria uma instância do provedor com a propriedade ClientLoadableCLSID. Ao fornecer valores diferentes para um CLSID e ClientLoadableCLSID, você permite que o provedor determine se ele é carregado em processo no WMI ou em um aplicativo cliente. Se estiver localizado em um processo do WMI, o provedor deverá fazer qualquer representação de cliente necessária usando ClientLoadableCLSID. Se estiver localizado em um processo cliente, o provedor herdará o token de acesso do thread em que ele é chamado. Para obter mais informações sobre como implementar um servidor em processo, veja a seção COM do MSDN.
Como um servidor em processo, um provedor de alto desempenho usa um objeto refresher para manter os dados atualizados para o cliente remoto. A tabela a seguir lista os métodos que você deve implementar para um provedor de alto desempenho.
Método | Recurso |
---|---|
IWbemHiPerfProvider::QueryInstances | Consultas |
IWbemHiPerfProvider::GetObjects | Recuperação de objeto |
IWbemHiPerfProvider::CreateRefresher | Cria um atualizador |
IWbemHiPerfProvider::CreateRefreshableObject | Cria um objeto de instância atualizável |
IWbemHiPerfProvider::CreateRefreshableEnum | Cria um enumerador atualizável |
IWbemHiPerfProvider::StopRefreshing | Interrompe a atualização de um enumerador ou objeto de instância |
IWbemRefresher::Refresh | Cria um atualizador |
Tópicos relacionados
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de