Interface IWbemProviderInitSink¦@¦
<span style=color:#FF0000>[This is preliminary documentation and subject to change.]</span>
The IWbemProviderInitSink interface is exported by CIMOM and called by the provider during the initialization sequence.
Methods in Vtable Order
IUnknown Methods | Description |
QueryInterface_hmm_IWbemProviderInitSink_QueryInterface | Determines if the current object supports a given interface. |
Addref_hmm_IWbemProviderInitSink_Addref | Increases the object's reference count by 1. |
Release_hmm_IWbemProviderInitSink_Release | Decrements the object's reference count by 1, and frees the object when the reference count is zero. |
IWbemProviderInitSink Methods | Description |
SetStatus_hmm_IwbemProviderInitSink_SetStatus | Called by the provider to indicate success or failure of initialization. |
^# $ K + IWbemProviderInitSink::QueryInterface¦@¦
<span style=color:#FF0000>[This is preliminary documentation and subject to change.]</span>
The IWbemProviderInitSink::QueryInterface method determines if the object supports a particular COM interface. If it does, the system increases the object's reference count, and the application can use that interface immediately.
HRESULT IWbemProviderInitSink::QueryInterface(
[in] REFIID riid,
[out] LPVOID *ppv
);
Parameters
riid
The COM interface identifier of the requested interface.
obp
Address of a pointer that will be filled with the interface pointer if the query succeeds.
Return Values
Returns standard COM error codes for QueryInterface. It returns WBEM_S_NO_ERROR if the call succeeds. If the call fails because the requested interface was not supported, the method returns E_NOINTERFACE.
Remarks
When the application no longer needs the interface retrieved by a call to this method, it must call the Release method for that interface to free it. The QueryInterface method allows the extension of objects without interfering with each object's existing or future functionality.
This method is part of the IUnknown interface inherited by the object. For more information about this method, see the COM documentation in the Microsoft Platform SDK.
See Also
IUnknown Interface Basics_hmm_IUnknown_Interface_Basics
^# $ K + IWbemProviderInitSink::AddRef¦@¦
<span style=color:#FF0000>[This is preliminary documentation and subject to change.]</span>
The IWbemProviderInitSink::AddRef method increases the object's reference count by 1.
ULONG AddRef( );
Parameters
None.
Return Values
Returns the new reference count.
Remarks
When the object is created, its reference count is set to 1. Every time an application obtains an interface to the object or calls the AddRef method, the object's reference count is increased by 1. Use the Release_hmm_IWbemProviderInitSink_Release method to decrease the object's reference count by 1.
This method is part of the IUnknown interface inherited by the object. For a complete discussion of IUnknown methods, see IUnknown Programming Basics.
For more information about this method, see the COM documentation in the Microsoft Platform SDK.
See Also
IUnknown Interface Basics_hmm_IUnknown_Interface_Basics
^# $ K + IWbemProviderInitSink::Release¦@¦
<span style=color:#FF0000>[This is preliminary documentation and subject to change.]</span>
The IWbemProviderInitSink::Release method decreases the object's reference count by 1.
ULONG IWbemProviderInitSink::Release( );
Parameters
None.
Return Values
Returns the new reference count.
Remarks
The object deallocates itself when its reference count reaches zero. Use the AddRef_hmm_IWbemProviderInitSink_AddRef method to increase the object's reference count by 1.
This method is part of the IUnknown interface inherited by the object. For more information about this method, see the COM documentation in the Microsoft Platform SDK.
See Also
IUnknown Interface Basics_hmm_IUnknown_Interface_Basics
^# $ K + IWbemProviderInitSink::SetStatus¦@¦
<span style=color:#FF0000>[This is preliminary documentation and subject to change.]</span>
The IWbemProviderInitSink::SetStatus method indicates to CIMOM whether a provider is fully or partially initialized.
HRESULT IWbemProviderInitSink::SetStatus(
[in] LONG lStatus,
[in] LONG lFlags
);
Parameters
lStatus
Indicates to CIMOM a provider's initialization status. One of the following values can be set:
Value | Description |
WBEM_S_INITIALIZED | Indicates that the provider is fully initialized and ready to accept requests. |
WBEM_S_LIMITED_SERVICE | Indicates that the provider is partially initialized. The provider is not ready to accept client requests, but can accept requests made by other providers during their attempts to initialize. |
WBEM_E_FAILED | Indicates that the provider has failed to initialize and is not functional. |
lFlags
Reserved. It must be zero.
Return Values
CIMOM always returns WBEM_S_NO_ERROR.
Remarks
All types of providers calls IWbemProviderInitSink::SetStatus to indicate its initialization status to CIMOM.
If lStatus is set to WBEM_S_INITIALIZED, CIMOM expects the provider to be fully capable of immediately servicing requests.
If lStatus is set to WBEM_S_LIMITED_SERVICE, CIMOM will forward requests made by other providers during their attempts to initialize, but will not forward client requests. The provider must still eventually call SetStatus with WBEM_S_INITIALIZED or WBEM_E_FAILED to indicate its final initialization status.
See Also
Initializing a Provider_hmm_Initializing_a_Provider