다음을 통해 공유


ICallUnmarshal::Unmarshal 메서드(callobj.h)

마샬링된 데이터 패킷을 활성화 레코드로 되돌립니다. 그러면 다른 방법으로 호출하거나 조작할 수 있습니다.

구문

HRESULT Unmarshal(
  [in]  ULONG                    iMethod,
  [in]  PVOID                    pBuffer,
  [in]  ULONG                    cbBuffer,
  [in]  BOOL                     fForceBufferCopy,
  [in]  RPCOLEDATAREP            dataRep,
  [in]  CALLFRAME_MARSHALCONTEXT *pcontext,
  [out] ULONG                    *pcbUnmarshalled,
  [out] ICallFrame               **ppFrame
);

매개 변수

[in] iMethod

메서드 번호입니다. 이 매개 변수가 -1이면 메서드 번호가 데이터에서 unmarshaled로 결정됩니다.

[in] pBuffer

활성화 레코드를 만들 버퍼에 대한 포인터입니다.

[in] cbBuffer

버퍼의 크기(바이트)입니다.

[in] fForceBufferCopy

버퍼를 복사하여 보존해야 하는지(0이 아닌 경우) 버퍼가 유효한지(0)로 유지할지 여부를 나타냅니다.

[in] dataRep

데이터가 마샬링된 데이터 표현입니다.

[in] pcontext

CALLFRAME_MARSHALCONTEXT 구조체 에 대한 포인터로, 경계를 벗어나야 하는 컨텍스트에 대한 정보를 포함합니다.

[out] pcbUnmarshalled

성공적으로 숨겨지지 않은 바이트 수에 대한 포인터입니다.

[out] ppFrame

umarshaled 호출에 바인딩된 호출 프레임입니다.

반환 값

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

반환 코드 Description
S_OK
메서드가 완료되었습니다.
E_UNEXPECTED
예기치 않은 오류가 발생했습니다.

요구 사항

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

추가 정보

ICallUnmarshal