IWMSWMIBridgeAdmin Interface

banner art

Previous Next

IWMSWMIBridgeAdmin Interface

Windows Management Instrumentation (WMI) provides a flexible mechanism for delivering events through the WMS WMI Event Handler plug-in. The server registers as an event provider for WMI through event classes that you can manage by using the IWMSWMIBridgeAdmin interface.

In addition to the methods inherited from IDispatch, the IWMSWMIBridgeAdmin interface exposes the following methods.

Method Description
get_ExposedEventClasses Retrieves the exposed event classes.
put_ExposedEventClasses Specifies the exposed event classes.

Example Code

The following example illustrates how to retrieve a pointer to an IWMSWMIBridgeAdmin interface.

#include <windows.h>
#include <atlbase.h>    // Includes CComVariant.

// To access system plug-in interfaces, the
// entire type library must be imported as shown.
#import "WMSServerTypeLib.dll" no_namespace named_guids \
                               raw_interfaces_only

// Declare variables and interfaces.
IWMSServer          *pServer;
IWMSPlugins         *pPlugins;
IWMSPlugin          *pPlugin;
IDispatch           *pDispatch;
IWMSWMIBridgeAdmin  *pWMIBridgeAdmin;

HRESULT         hr;
CComVariant     varIndex;

// Initialize the COM library and retrieve a pointer
// to an IWMSServer interface.
hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_WMSServer,
                      NULL,
                      CLSCTX_ALL,
                      IID_IWMSServer,
                      (void **)&pServer);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to an IWMSPlugins interface
// containing event handler plug-ins.
hr = pServer->get_EventHandlers(&pPlugins);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPlugin interface
// of the plug-in to be configured.
varIndex = "WMS WMI Event Handler";
hr = pPlugins->get_Item(varIndex, &pPlugin);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the custom interface
// of the plug-in.
hr = pPlugin->get_CustomInterface(&pDispatch);
if (FAILED(hr)) goto EXIT;

// Query the specific administration interface
// for the plug-in.
hr = pDispatch->QueryInterface(IID_IWMSWMIBridgeAdmin,
                              (void **)&pWMIBridgeAdmin);
if (FAILED(hr)) goto EXIT;

EXIT:
    // TODO: Release temporary COM objects and uninitialize COM.

See Also

Previous Next