IObjectWithSite::GetSite
Retrieves the last site set with
IObjectWithSite::SetSite. If there’s no
known site, the object return a failure code.
HRESULT GetSite(
REFIID riid,
|
//IID of interface pointer being requested
|
void** ppvSite
|
//Indirect pointer to caller’s void
|
);
|
|
Parameters
-
riid
-
[in] The IID of the interface pointer that should be returned in ppvSite.
-
ppvSite
-
[out] Indirect pointer to the caller’s void * variable in which the
object stores the interface pointer of the site last seen in
IObjectWithSite::SetSite. The specific
interface returned depends on the riid argument&emdash;in essence, the
two arguments act identically to those in IUnknown::QueryInterface. If
the appropriate interface pointer is available, the object must call IUnknown::AddRef
on that pointer before returning successfully. If no site is available, or the
requested interface is not supported, the object sets this argument to NULL
and returns a failure code.
Return Values
-
S_OK
-
The site was returned successfully and the caller is responsible for calling IUnknown::Release
when the site is no longer needed.
-
E_FAIL
-
There is no site in which case *ppvSite contains NULL on return.
-
E_NOINTERFACE
-
There is a site but it does not support the interface requested by riid.
Remarks
E_NOTIMPL is not allowed&emdash;any object implementing this interface must be
able to return the last site seen in
IObjectWithSite::SetSite.