IWbemConfigureRefresher::AddObjectByTemplate method

With the IWbemConfigureRefresher::AddObjectByTemplate method, you can add an object you want refreshed to a refresher by specifying an IWbemClassObject instance template. Use this method when it is difficult to construct an object path for an object to add to a refresher.

Note  The key properties of the instance object must be filled out before you can call the AddObjectByTemplate method.

Syntax


HRESULT AddObjectByTemplate(
  IWbemServices *pNamespace,
  [in]   IWbemClassObject *pTemplate,
  [in]   long lFlags,
  [in]   IWbemContext *pCtx,
  [out]  IWbemClassObject **ppRefreshable,
  [out]  long *plid
);

Parameters

pNamespace

An IWbemServices pointer back into Windows Management, which can service any request made by the provider. The provider should call AddRef on this pointer if it is going to call back into Windows Management during its execution.

pTemplate [in]

Pointer to a IWbemClassObject object that contains the instance template.

lFlags [in]

Bitmask of flags that modify the behavior of this method. If this parameter is set to WBEM_FLAG_USE_AMENDED_QUALIFIERS, the returned instance will contain localized qualifiers if available.

pCtx [in]

Typically NULL; otherwise, a pointer to an IWbemContext object that is required by one or more dynamic class providers. The values in the context object must be specified in the specific provider documentation. For more information about this parameter, see Making Calls to WMI.

ppRefreshable [out]

Pointer to hold the reference to a IWbemClassObject object, which will contain the refreshable instance object. The client must call Release on the returned object when it is no longer required.

plid [out]

Pointer to an integer returned by the provider that uniquely identifies this refreshable object.

Return value

This method returns an HRESULT indicating the status of the method call. The following table lists the value contained within an HRESULT.

Return codeDescription
WBEM_E_INVALID_PARAMETER

A parameter is not valid.

WBEM_E_NOT_FOUND

The requested instance could not be found.

WBEM_E_ACCESS_DENIED

The current user does not have permission to retrieve the specified instance.

WBEM_E_INVALID_OPERATION

The requested instance is not supplied by the High-Performance Provider.

WBEM_S_NO_ERROR

The method was successful.

WBEM_E_REFRESHER_BUSY

The refresher is busy with another operation.

 

Remarks

The supplied instance must specify a valid object, which is provided by the High-Performance Provider. The returned object must not be modified by the client while a refresh operation is in process. The returned identifier can be used by the Remove function to remove the object.

It is not necessary for the user to explicitly remove added objects. The client must call Release on the returned object when it is no longer required.

Requirements

Minimum supported client

Windows Vista

Minimum supported server

Windows Server 2003

Header

Wbemcli.h (include Wbemidl.h)

Library

Wbemuuid.lib

DLL

Wbemperf.dll

See also

IWbemConfigureRefresher
Accessing Performance Data in C++
Making an Instance Provider into a High-Performance Provider
Performance Counter Provider

 

 

Show:
© 2014 Microsoft