IRemUnknown::RemRelease

HRESULT IRemUnknown::RemRelease(cInterfaceRefs, rgRefs)

Release ownership of one or more reference counts on one or more IPIDs managed by the corresponding OXID.

Argument

Type

Description


cInterfaceRefs

USHORT

The size of the rgRefs array.

rgRefs

REMINTERFACEREF

An array of IPID, cRefs pairs, cInterfaceRefs large. Each IPID indicates an interface managed by this OXID on whom more reference counts are being returned. The corresponding reference count, which may not be zero (and thus is one or more), indicates the number of reference counts returned on that IPID.


Return Value

Meaning


S_OK

Success. An attempt was made to retrieve each of the requested interfaces.

E_INVALIDARG

One or more of the IPIDs indicated were not in fact managed by this OXID, or one or more of the requested reference counts was zero. None of the offered reference counts have been accepted by the server; the call is a no-op.

E_UNEXPECTED

An unspecified error occurred. It is unknown whether any or all of the offered reference counts have been accepted.