IServiceProvider::QueryService
Creates or
accesses the specified service and returns an interface pointer to the
specified interface for the service.
HRESULT QueryService(
REFGUID guidService, |
//Unique identifier for the requested service |
REFIID riid, |
//Unique identifier for the requested interface |
void** ppv |
//Indirect pointer to the interface on the service |
); |
|
Parameter
guidService
[in] Unique
identifier for the requestedservice.
riid
[in] Unique
identifier for the requested interface on the service.
ppv
[out]
Indirect pointer to the interface on the service.
Return Values
S_OK
The service
was successfully created or retrieved.
E_OUTOFMEMORY
There is not
enough memory to create the service.
E_UNEXPECTED
An unknown
error occurred.
E_NOINTERFACE
The service
exists but the requested interface is not provided by the service.
SVC_E_UNKNOWNSERVICE
The service
identified with guidService is not recognized.
Note to Callers
The caller is
responsible for releasing the interface pointer when it is no longer needed.
Note to Implementers
Because there
is only one method in this interface, E_NOTIMPL is not a valid return code.