3.1.1.4.1 GetProviderMgmtInterface (Opnum 3)
The GetProviderMgmtInterface method retrieves the IVssDifferentialSoftwareSnapshotMgmt interface.
-
HRESULT GetProviderMgmtInterface( [in] VSS_ID ProviderId, [in] REFIID InterfaceId, [out, iid_is(InterfaceId)] IUnknown** ppItf );
ProviderId: MUST be set to the shadow copy provider UUID in Standards Assignments (section 1.9).
InterfaceId: MUST be set to the UUID for the IVssDifferentialSoftwareSnapshotMgmt interface in Standards Assignments (section 1.9).
ppItf: A pointer to an IUnknown pointer that upon completion contains a pointer to an instance of the interface object that is specified by InterfaceId. A caller MUST release the ppItf that is received when the caller is done with it.
Return Values: The method MUST return the following error code for the specific conditions.
-
Return value/code
Description
0x80042304
VSS_E_PROVIDER_NOT_REGISTERED
Returned when the provider with ID ProviderId does not exist on the server.
0x80070057
E_INVALIDARG
Returned when ppItf is NULL or REFIID is not equal to __uuidof(IVssDifferentialSoftwareSnapshotMgmt).
0x80070005
E_ACCESSDENIED
Returned when the user making the request does not have sufficient privileges to perform the operation.
-
For any other conditions, the method MUST return zero when it has succeeded or an implementation-specific nonzero error code on failure.
No exceptions are thrown except those that are thrown by the underlying RPC protocol [MS-RPCE].
When the server receives this message, it MUST verify that ppItf is not NULL.
The server MUST set ppItf to the IUnknown interface of an object that also implements IVssDifferentialSoftwareSnapshotMgmt or return an implementation-specific nonzero error code.