다음을 통해 공유


IOleObject::SetClientSite 메서드(oleidl.h)

컨테이너 내에서 "클라이언트 사이트"라고 하는 표시 위치를 포함된 개체에 알립니다.

구문

HRESULT SetClientSite(
  [in] IOleClientSite *pClientSite
);

매개 변수

[in] pClientSite

컨테이너 애플리케이션의 클라이언트 사이트에서 IOleClientSite 인터페이스에 대한 포인터입니다.

반환 값

이 메서드는 성공에 대한 S_OK 반환합니다. 가능한 다른 반환 값은 다음과 같습니다.

반환 코드 설명
E_UNEXPECTED
예기치 않은 오류가 발생했습니다.

설명

복합 문서 내에서 각 포함된 개체에는 자체 클라이언트 사이트(표시되는 위치 및 스토리지, 사용자 인터페이스 및 기타 리소스에 대한 정보를 수신하는 위치)가 있습니다. IOleObject::SetClientSite 는 포함된 개체가 클라이언트 사이트에 대한 포인터를 가져올 수 있도록 하는 유일한 방법입니다.

발신자에 대한 참고 사항

컨테이너는 개체를 만들 때 또는 이후에 개체가 초기화될 때 해당 클라이언트 사이트의 개체에 알릴 수 있습니다.

개체를 만들거나 로드할 때 컨테이너는 클라이언트 사이트 포인터(다른 인수와 함께)를 OleCreate,OleCreateFromFile, OleCreateFromData 또는 OleLoad와 같은 도우미 함수 중 하나에 전달할 수 있습니다. 이러한 도우미 함수는 새 개체에 대한 개체 처리기를 로드하고 컨테이너 대신 IOleObject::SetClientSite 를 호출한 후 새 개체에 대한 포인터를 반환합니다.

클라이언트 사이트 포인터를 전달하면 클라이언트 사이트가 요청을 처리할 준비가 되었다는 것을 개체 처리기에 알릴 수 있습니다. 처리기가 로드된 직후 클라이언트 사이트가 준비되지 않을 경우 컨테이너가 NULL 클라이언트 사이트 포인터를 도우미 함수에 전달하도록 할 수 있습니다. NULL 포인터는 사용할 수 있는 클라이언트 사이트가 없음을 표시하여 개체가 초기화될 때까지 클라이언트 사이트의 개체 처리기에 알리는 것을 지연합니다. 이에 대한 응답으로 도우미 함수는 개체에 대한 포인터를 반환하지만 해당 포인터를 받으면 컨테이너는 새 개체 초기화의 일부로 IOleObject::SetClientSite 를 호출해야 합니다.

구현자에 대한 참고 사항

구현은 단순히 참조 수를 증가시키고 클라이언트 사이트에 대한 포인터를 저장하는 것으로 구성됩니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 oleidl.h

추가 정보

IOleClientSite

IOleObject

IOleObject::GetClientSite

OleCreate

OleCreateFromData

OleCreateFromFile

OleLoad