Функция NdrPointerUnmarshall (rpcndr.h)
Функция NdrPointerUnmarshall отменяет работу указателя верхнего уровня на что-либо. Указатели, внедренные в структуры, массивы или объединения, вызывают NdrPointerUnmarshall напрямую.
Синтаксис
unsigned char * NdrPointerUnmarshall(
[in, out] PMIDL_STUB_MESSAGE pStubMsg,
[in] unsigned char **ppMemory,
[in] PFORMAT_STRING pFormat,
[in] unsigned char fMustAlloc
);
Параметры
[in, out] pStubMsg
Указатель на структуру MIDL_STUB_MESSAGE , которая поддерживает текущее состояние заглушки RPC. Структура предназначена только для внутреннего использования; не изменять.
[in] ppMemory
Указатель на память, где указатель будет немаршализован. Сведения о защите от переполнения буфера в RPC см. в разделе Защита буфера MCCP: http://msdn.microsoft.com/en-us/library/ff621497(VS.85).aspx
[in] pFormat
Указатель на описание строки формата.
[in] fMustAlloc
Не используется.
Возвращаемое значение
Возвращает значение NULL при успешном выполнении. При возникновении ошибки функция создает один из следующих кодов исключений.
Ошибка | Описание |
---|---|
RPC_BAD_STUB_DATA или RPC_X_INVALID_BOUND | Неправильный сетевой буфер. |
RPC_S_OUT_OF_MEMORY | В системе не хватает памяти. |
STATUS_ACCESS_VIOLATION | Произошло нарушение доступа. |
RPC_S_INTERNAL_ERROR | В RPC произошла ошибка. |
Комментарии
Эта функция используется для строк формата FC_RP, FC_UP, FC_FP FC_OP.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 2000 Профессиональная [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows 2000 Server [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | rpcndr.h (включая Rpc.h) |
Библиотека | Rpcrt4.lib |
DLL | Rpcrt4.dll |