IRunningObjectTable::GetObject 메서드(objidl.h)
지정한 모니커로 식별된 개체가 실행 중인지 여부를 확인하고 이 개체가 실행 중인 경우 해당 개체에 대한 포인터를 검색합니다.
구문
HRESULT GetObject(
[in] IMoniker *pmkObjectName,
[out] IUnknown **ppunkObject
);
매개 변수
[in] pmkObjectName
모 니커의 IMoniker 인터페이스에 대한 포인터입니다.
[out] ppunkObject
실행 중인 개체에 대한 인터페이스 포인터를 수신하는 IUnknown 포인터 변수에 대한 포인터입니다. 성공하면 구현은 개체에서 AddRef 를 호출합니다. 릴리스를 호출하는 것은 호출자의 책임입니다. 개체가 실행되고 있지 않거나 오류가 발생하면 구현에서 *ppunkObject 를 NULL로 설정합니다.
반환 값
이 메서드는 다음 값을 반환할 수 있습니다.
반환 코드 | Description |
---|---|
|
ROT에서 pmkObjectName 이 발견되었고 포인터가 검색되었음을 나타냅니다. |
|
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 |