3.1.4.12.5 IWbemRefreshingServices::GetRemoteRefresher (Opnum 7)

The IWbemRefreshingServices::GetRemoteRefresher method MUST return an IWbemRemoteRefresher interface pointer. This pointer is needed by the client to refresh objects and enumerations.

 HRESULT GetRemoteRefresher(
   [in] _WBEM_REFRESHER_ID* pRefresherId,
   [in] long lFlags,
   [in] DWORD dwClientRefrVersion,
   [out] IWbemRemoteRefresher** ppRemRefresher,
   [out] GUID* pGuid,
   [out] DWORD* pdwSvrRefrVersion
 );

pRefresherId: MUST be a pointer to the _WBEM_REFRESHER_ID structure, as specified in section 2.2.21, that identifies the client that is requesting refreshing services. This parameter MUST NOT be NULL.

lFlags: This parameter is not used, and its value SHOULD be 0x0.

dwClientRefrVersion: MUST be the version of the client refresher. This value SHOULD<69> be 0x2. The server MUST allow all client versions.

ppRemRefresher: MUST be a pointer to an IWbemRemoteRefresher interface pointer that the client can use to call the IWbemRemoteRefresher::RemoteRefresh method to refresh CIM instances and enumerations. This parameter MUST NOT be NULL.

pGuid: MUST be an output parameter that MUST be a pointer to a GUID value that MUST identify the returned refresher object. This parameter MUST NOT be NULL.

pdwSvrRefrVersion: MUST be an output parameter that MUST be the version of the server refresher. The value of this parameter SHOULD be 0x1.

Return Values: This method MUST return an HRESULT value that MUST indicate the status of the method call. The server MUST return WBEM_S_NO_ERROR (specified in section 2.2.11) to indicate the successful completion of the method.

In case of failure, the server MUST return an HRESULT whose S (severity) bit is set as specified in [MS-ERREF] section 2.1. The actual HRESULT value is implementation dependent.

WBEM_S_NO_ERROR (0x00)

The security principal that makes the call MUST have WBEM_REMOTE_ENABLE and WBEM_ENABLE accesses to the namespace; otherwise, WBEM_E_ACCESS_DENIED MUST be returned.

The IWbemRefreshingServices::GetRemoteRefresher method evaluates the pRefresherID parameter and MUST return an IWbemRemoteRefresher interface pointer and a GUID that is randomly generated by the server in order to identify this interface pointer. The IWbemRefreshingServices interface pointer MUST have the same value as the one initially returned by the IWbemRefreshingServices::AddObjectToRefresher, IWbemRefreshingServices::AddObjectToRefresherByTemplate, or IWbemRefreshingServices::AddEnumToRefresher method.

A successful call to IWbemRefreshingServices::GetRemoteRefresher MUST return WBEM_S_NO_ERROR and fill the ppRemRefresher and pGuid fields. The pdwSvrRefrVersion field is reserved for future use and MUST be set to 0x1.

The returned IWbemRemoteRefresher interface MUST be used in calls to the IWbemRemoteRefresher::RemoteRefresh and IWbemRemoteRefresher::StopRefreshing methods.