Função NdrGetUserMarshalInfo (rpcndr.h)

A função NdrGetUserMarshalInfo fornece informações adicionais para wire_marshal e user_marshal funções auxiliares.

Sintaxe

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

Parâmetros

pFlags

Ponteiro com o mesmo nome que o RPC passou para a função auxiliar.

InformationLevel

Nível de detalhes desejado a ser recebido. Níveis diferentes implicam diferentes conjuntos de campos de informações. Somente o nível 1 está definido no momento.

pMarshalInfo

Endereço de um buffer de memória, fornecido pelo aplicativo, para receber as informações solicitadas. O buffer deve ser pelo menos tão grande quanto a estrutura de informações indicada por InformationLevel.

Valor retornado

Valor Significado
RPC_S_OK
A chamada foi bem-sucedida.
RPC_S_INVALID_ARG
Pelo menos um dos argumentos não era válido.
RPC_X_INVALID_BUFFER
O buffer de marshaling atual não era válido.

Comentários

A função NdrGetUserMarshalInfo é chamada pelas funções auxiliares wire_marshal ou user_marshal (fornecidas pelo aplicativo), <tipo>_UserSize, <tipo>_UserMarshal, <tipo>_UserUnmarshal e <tipo>_UserFree para receber informações extras sobre o estado da chamada. Um uso comum para essa função é obter o tamanho do buffer de marshaling com a finalidade de verificar o fim das condições do buffer. O envio de dados de tamanho incorreto é um método comumente usado para violar a segurança do sistema.

Para obter uma listagem completa das informações retornadas por NdrGetUserMarshalInfo, consulte NDR_USER_MARSHAL_INFO.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 2000 Professional [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows 2000 Server [aplicativos da área de trabalho | Aplicativos UWP]
Plataforma de Destino Windows
Cabeçalho rpcndr.h (inclua Rpc.h)
Biblioteca Rpcrt4.lib
DLL Rpcrt4.dll

Confira também

NDR_USER_MARSHAL_INFO

user_marshal

wire_marshal