다음을 통해 공유


NdrStubCall2 함수(rpcndr.h)

NdrStubCall2 함수는 /Oicf 모드 스텁의 서버 쪽 진입점입니다.

구문

long NdrStubCall2(
  [in]      void          *pThis,
  [in]      void          *pChannel,
  [in, out] PRPC_MESSAGE  pRpcMsg,
  [out]     unsigned long *pdwStubPhase
);

매개 변수

[in] pThis

DCOM 인터페이스에 대해 IRpcStubBuffer를 구현하는 CStdStubBuffer 개체의 instance 대한 포인터입니다. nonobject RPC 인터페이스의 경우 NULL 로 설정합니다.

[in] pChannel

OLE에서 제공하는 DCOM 인터페이스에 대한 IRpcChannelBuffer 에 대한 포인터입니다. nonobject 인터페이스의 경우 NULL 로 설정합니다.

[in, out] pRpcMsg

RPC 요청에 대한 정보를 포함하는 RPC_MESSAGE 구조체에 대한 포인터입니다. nonobject 인터페이스에서 pRpcMsg 에는 원격 메서드에 대한 정보도 포함됩니다.

[out] pdwStubPhase

현재 인터프리터 호출의 활동을 추적하는 플래그에 대한 포인터입니다.

반환 값

성공 시 S_OK 반환합니다. 오류 발생 시 예외를 발생합니다.

설명

RPC 런타임 또는 OLE 런타임은 NdrStubCall2 를 호출하여 서버 관리자 루틴을 호출합니다. [out] 매개 변수는 마샬링되고 RPC 런타임 또는 OLE 런타임으로 반환되어 클라이언트로 다시 보냅니다.

pdwStubPhase 매개 변수는 개체 인터페이스에서 예외 처리 동작을 확인하는 데 사용됩니다. 다음 표에서는 pdwStubPhase 매개 변수에 사용할 수 있는 값에 대해 설명합니다.

Description
STUB_UNMARSHAL 스텁이 마샬링 단계에 있습니다.
STUB_CALL_SERVER 스텁이 서버 관리자 루틴을 호출하고 있습니다.
STUB_MARSHAL 스텁은 경계를 풀지 않는 단계에 있습니다.
STUB_CALL_SERVER_NO_HRESULT 사용되지 않습니다. 사용되지 않는 스텁의 경우에만 해당합니다.

요구 사항

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