CoGetCancelObject 함수(combaseapi.h)

동일한 또는 다른 클라이언트 스레드에서 보류 중인 아웃바운드 COM 메서드 호출에 해당하는 cancel 개체에서 호출 제어 인터페이스(일반적으로 ICancelMethodCalls)에 대한 포인터를 가져옵니다.

구문

HRESULT CoGetCancelObject(
  [in]  DWORD  dwThreadId,
  [in]  REFIID iid,
  [out] void   **ppUnk
);

매개 변수

[in] dwThreadId

보류 중인 COM 호출을 취소할 스레드의 식별자입니다. 이 매개 변수가 0이면 호출이 현재 스레드에 있습니다.

[in] iid

취소할 호출에 대한 cancel 개체의 인터페이스에 대한 전역적으로 고유한 식별자입니다. 이 인수는 일반적으로 IID_ICancelMethodCalls.

[out] ppUnk

riid로 지정된 인터페이스에 대한 포인터의 주소를 받습니다.

반환 값

이 함수는 다음 값뿐만 아니라 표준 반환 값 E_FAIL, E_INVALIDARG, E_OUTOFMEMORY 및 E_UNEXPECTED 반환할 수 있습니다.

반환 코드 Description
S_OK
호출 컨트롤 개체가 성공적으로 검색되었습니다.
E_NOINTERFACE
호출이 실행되는 개체는 riid로 지정된 인터페이스를 지원하지 않습니다.

설명

중첩된 호출을 통해 동일한 스레드에서 두 개 이상의 호출이 보류 중인 경우 스레드 ID로는 취소할 호출을 식별하기에 충분하지 않을 수 있습니다. 이 경우 CoGetCancelObject 는 스레드에서 보류 중이고 cancel 개체를 등록한 가장 안쪽 호출에 해당하는 취소 인터페이스를 반환합니다.

이 함수는 비동기 호출에 대한 취소 개체를 찾지 않습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 2000 Professional[데스크톱 앱만]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 combaseapi.h(Objbase.h 포함)
라이브러리 Ole32.lib
DLL Ole32.dll