Share via


IRunningObjectTable::GetObject 메서드(objidl.h)

지정한 모니커로 식별된 개체가 실행 중인지 여부를 확인하고 이 개체가 실행 중인 경우 해당 개체에 대한 포인터를 검색합니다.

구문

HRESULT GetObject(
  [in]  IMoniker *pmkObjectName,
  [out] IUnknown **ppunkObject
);

매개 변수

[in] pmkObjectName

니커의 IMoniker 인터페이스에 대한 포인터입니다.

[out] ppunkObject

실행 중인 개체에 대한 인터페이스 포인터를 수신하는 IUnknown 포인터 변수에 대한 포인터입니다. 성공하면 구현은 개체에서 AddRef 를 호출합니다. 릴리스를 호출하는 것은 호출자의 책임입니다. 개체가 실행되고 있지 않거나 오류가 발생하면 구현에서 *ppunkObjectNULL로 설정합니다.

반환 값

이 메서드는 다음 값을 반환할 수 있습니다.

반환 코드 Description
S_OK
ROT에서 pmkObjectName 이 발견되었고 포인터가 검색되었음을 나타냅니다.
S_FALSE
ROT에는 pmkObjectName 에 대한 항목이 없거나 식별된 개체가 더 이상 실행되고 있지 않습니다(이 경우 항목이 해지됨).

설명

이 메서드는 pmkObjectName으로 지정된 모니커에 대해 ROT를 확인합니다. 해당 모니커가 이전에 IRunningObjectTable::Register에 대한 호출로 등록된 경우 이 메서드는 해당 시간에 등록된 포인터를 반환합니다.

발신자에 대한 참고 사항

일반적으로 고유한 모니커 클래스(즉, IMoniker 인터페이스 구현)를 작성하는 경우에만 IRunningObjectTable::GetObject 메서드를 호출합니다. 일반적으로 IMoniker::BindToObject 구현에서 이 메서드를 호출합니다.

그러나 IMoniker::BindToObject 의 모든 구현이 이 메서드를 호출할 필요는 없습니다. 모니커에 접두사(NULL이 아닌 pmkToLeft 매개 변수로 IMoniker::BindToObject로 표시됨)가 있을 것으로 예상되는 경우 ROT를 검사 않아야 합니다. 그 이유는 전체 모니커만 ROT에 등록되고 모니커에 접두사만 있는 경우 모니커가 복합의 일부이므로 완료되지 않기 때문입니다. 대신 모니커는 접두사로 식별된 개체(예: 모니커로 식별된 개체의 컨테이너)에서 서비스를 요청해야 합니다.

요구 사항

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

추가 정보

IMoniker::BindToObject

IRunningObjectTable