Bemærk
Adgang til denne side kræver godkendelse. Du kan prøve at logge på eller ændre mapper.
Adgang til denne side kræver godkendelse. Du kan prøve at ændre mapper.
Because WMI loads a high-performance provider in-process to either WMI or a client application, you must design your high-performance provider as an in-process server. In addition, you must implement the high-performance provider methods in the IWbemHiPerfProvider and IWbemRefresher interfaces.
You should implement a high-performance provider as an in-process server. One feature you should be aware of when implementing the security of an in-process server is how the provider identifies its own location. When loaded in-process to WMI, WMI instantiates the provider using a CLSID. When loaded in process to a client application, the client application instantiates the provider with the ClientLoadableCLSID property. By giving different values to a CLSID and ClientLoadableCLSID, you allow the provider to determine if it is loaded in-process to WMI or to a client application. If located in a WMI process, the provider should do any necessary client impersonation by using ClientLoadableCLSID. If located in a client process, the provider inherits the access token of the thread it is called on. For more information about implementing an in-process server, see the Component Object Model (COM) documentation.
As an in-process server, a high-performance provider uses a refresher object to keep data current for the remote client. The following table lists methods that you must implement for a high-performance provider.
| Method | Feature |
|---|---|
| IWbemHiPerfProvider::QueryInstances | Queries |
| IWbemHiPerfProvider::GetObjects | Object retrieval |
| IWbemHiPerfProvider::CreateRefresher | Creates a refresher |
| IWbemHiPerfProvider::CreateRefreshableObject | Creates a refreshable instance object |
| IWbemHiPerfProvider::CreateRefreshableEnum | Creates a refreshable enumerator |
| IWbemHiPerfProvider::StopRefreshing | Stops refreshing an enumerator or instance object |
| IWbemRefresher::Refresh | Creates a refresher |
Related topics