IObjectWithSiteImpl 클래스
이 클래스는 개체가 해당 사이트와 통신할 수 있도록 하는 메서드를 제공합니다.
구문
template <class T>
class ATL_NO_VTABLE IObjectWithSiteImpl :
public IObjectWithSite
매개 변수
T
에서 파생된 IObjectWithSiteImpl
클래스입니다.
멤버
공용 메서드
이름 | 설명 |
---|---|
IObjectWithSiteImpl::GetSite | 사이트에 인터페이스 포인터를 쿼리합니다. |
IObjectWithSiteImpl::SetChildSite | 개체에 사이트의 IUnknown 포인터를 제공합니다. |
IObjectWithSiteImpl::SetSite | 개체에 사이트의 IUnknown 포인터를 제공합니다. |
공용 데이터 멤버
속성 | 설명 |
---|---|
IObjectWithSiteImpl::m_spUnkSite | 사이트의 IUnknown 포인터를 관리합니다. |
설명
IObjectWithSite 인터페이스를 사용하면 개체가 해당 사이트와 통신할 수 있습니다. 클래스 IObjectWithSiteImpl
는 이 인터페이스의 기본 구현을 IUnknown
제공하고 디버그 빌드의 덤프 디바이스에 정보를 전송하여 구현합니다.
IObjectWithSiteImpl
는 두 가지 메서드를 지정합니다. 클라이언트는 먼저 사이트의 IUnknown
포인터를 전달하여 호출SetSite
합니다. 이 포인터는 개체 내에 저장되며 나중에 호출 GetSite
을 통해 검색할 수 있습니다.
일반적으로 컨트롤이 아닌 개체를 만들 때 클래스 IObjectWithSiteImpl
를 파생합니다. 컨트롤의 경우 사이트 포인터를 제공하는 IOleObjectImpl에서 클래스를 파생합니다. 둘 다 IObjectWithSiteImpl
에서 클래스를 파생하지 마세요.IOleObjectImpl
상속 계층 구조
IObjectWithSite
IObjectWithSiteImpl
요구 사항
헤더: atlcom.h
IObjectWithSiteImpl::GetSite
사이트에서 식별된 인터페이스에 대한 포인터를 쿼리합니다 riid
.
STDMETHOD(GetSite)(
REFIID riid,
void** ppvSite);
설명
사이트에서 이 인터페이스를 지원하는 경우 포인터는 .를 통해 ppvSite
반환됩니다. 그렇지 않으면 ppvSite
NULL로 설정됩니다.
Windows SDK에서 IObjectWithSite::GetSite를 참조하세요.
IObjectWithSiteImpl::m_spUnkSite
사이트의 IUnknown
포인터를 관리합니다.
CComPtr<IUnknown> m_spUnkSite;
설명
m_spUnkSite
는 SetSite에 대한 호출을 통해 이 포인터를 처음에 받습니다.
IObjectWithSiteImpl::SetChildSite
개체에 사이트의 IUnknown
포인터를 제공합니다.
HRESULT SetChildSite(IUnknown* pUnkSite);
매개 변수
pUnkSite
[in] 이 개체를 IUnknown
관리하는 사이트의 인터페이스 포인터에 대한 포인터입니다. NULL이면 개체가 해당 사이트를 더 이상 알지 못하는 기존 사이트에서 개체를 호출 IUnknown::Release
해야 합니다.
Return Value
S_OK 반환합니다.
IObjectWithSiteImpl::SetSite
개체에 사이트의 IUnknown
포인터를 제공합니다.
STDMETHOD(SetSite)(IUnknown* pUnkSite);
설명
Windows SDK에서 IObjectWithSite::SetSite를 참조하세요.