NdrGetUserMarshalInfo 함수(rpcndr.h)

NdrGetUserMarshalInfo 함수는 wire_marshal 및 user_marshal 도우미 함수에 대한 추가 정보를 제공합니다.

구문

RPC_STATUS NdrGetUserMarshalInfo(
  unsigned long         *pFlags,
  unsigned long         InformationLevel,
  NDR_USER_MARSHAL_INFO *pMarshalInfo
);

매개 변수

pFlags

RPC가 도우미 함수에 전달한 것과 동일한 이름의 포인터입니다.

InformationLevel

원하는 수준의 세부 정보를 받을 수 있습니다. 수준은 서로 다른 정보 필드 집합을 의미합니다. 현재 수준 1만 정의되어 있습니다.

pMarshalInfo

요청된 정보를 수신하기 위해 애플리케이션에서 제공하는 메모리 버퍼의 주소입니다. 버퍼는 InformationLevel에 표시된 정보 구조만큼 커야 합니다.

반환 값

의미
RPC_S_OK
호출이 성공했습니다.
RPC_S_INVALID_ARG
하나 이상의 인수가 잘못되었습니다.
RPC_X_INVALID_BUFFER
현재 마샬링 버퍼가 잘못되었습니다.

설명

NdrGetUserMarshalInfo 함수는 호출 상태에 대한 추가 정보를 수신하기 위해 wire_marshal 또는 user_marshal 도우미 함수(애플리케이션에서 제공) <형식>_UserSize<, type>_UserMarshal,<type>_UserUnmarshal 및 <type>_UserFree 호출에 의해 호출됩니다. 이 함수의 일반적인 용도는 버퍼 조건의 끝을 확인하기 위해 마샬링 버퍼의 크기를 가져오는 것입니다. 잘못된 크기의 데이터를 보내는 것은 시스템 보안을 위반하는 일반적으로 사용되는 방법입니다.

NdrGetUserMarshalInfo에서 반환된 정보의 전체 목록은 NDR_USER_MARSHAL_INFO 참조하세요.

요구 사항

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

추가 정보

NDR_USER_MARSHAL_INFO

user_marshal

wire_marshal