Поделиться через


Функция NdrInterfacePointerUnmarshall (rpcndr.h)

Функция NdrInterfacePointerUnmarshall отменяет удаление данных, на которые ссылается указатель интерфейса, из сетевого буфера в память.

Синтаксис

unsigned char * NdrInterfacePointerUnmarshall(
  [in, out] PMIDL_STUB_MESSAGE pStubMsg,
  [out]     unsigned char      **ppMemory,
  [in]      PFORMAT_STRING     pFormat,
  [in]      unsigned char      fMustAlloc
);

Параметры

[in, out] pStubMsg

Указатель на структуру MIDL_STUB_MESSAGE , которая поддерживает текущее состояние заглушки RPC. Структура предназначена только для внутреннего использования; не изменять.

[out] ppMemory

Указатель на указатель на немаршализованный указатель интерфейса.

[in] pFormat

Указатель на описание строки формата.

[in] fMustAlloc

Не используется.

Возвращаемое значение

Возвращает значение NULL при успешном выполнении. При возникновении ошибки функция выдает один из следующих кодов исключений. Кроме того, функция может выдавать коды исключений из CoUnmarshalInterface.

Ошибка Описание
RPC_BAD_STUB_DATA Неправильный сетевой буфер.
RPC_S_OUT_OF_MEMORY Системе не хватает памяти.
STATUS_ACCESS_VIOLATION Произошло нарушение доступа.
RPC_S_INTERNAL_ERROR В RPC произошла ошибка.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Профессиональная [классические приложения | Приложения UWP]
Минимальная версия сервера Windows 2000 Server [классические приложения | Приложения UWP]
Целевая платформа Windows
Header rpcndr.h (включая Rpc.h)
Библиотека Rpcrt4.lib
DLL Rpcrt4.dll