다음을 통해 공유


ICallFrame::GetMarshalSizeMax 메서드(callobj.h)

호출 프레임을 마샬링하는 데 필요한 바이트 수의 상한을 검색합니다.

일반적으로 인터페이스 프록시는 이 메서드를 호출하여 버퍼가 얼마나 큰지 알아보고, 버퍼를 할당한 다음, Marshal 메서드를 호출하여 마샬링을 수행합니다.

구문

HRESULT GetMarshalSizeMax(
  [in]  CALLFRAME_MARSHALCONTEXT *pmshlContext,
  [in]  MSHLFLAGS                mshlflags,
  [out] ULONG                    *pcbBufferNeeded
);

매개 변수

[in] pmshlContext

마샬링이 수행되는 방법에 대한 컨텍스트 정보를 포함하는 CALLFRAME_MARSHALCONTEXT 구조체에 대한 포인터입니다.

[in] mshlflags

마샬링할 데이터를 클라이언트 프로세스(일반 사례)로 다시 전송할지, 아니면 여러 클라이언트에서 검색할 수 있는 전역 테이블에 쓸 것인지를 나타냅니다. 값 목록은 MSHLFLAGS 열거형을 참조하세요.

[out] pcbBufferNeeded

호출 프레임을 마샬링하는 데 필요한 버퍼 크기(바이트)에 대한 포인터입니다.

반환 값

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

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

요구 사항

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

추가 정보

ICallFrame