Метод IGlobalRSCAQueryProvider::GetOutputBuffer
Создает новый BYTE
массив.
Синтаксис
virtual HRESULT GetOutputBuffer(
DWORD cbBuffer,
OUT BYTE** ppbBuffer
) = 0;
Параметры
cbBuffer
[IN] Объект DWORD
, содержащий количество выделенных байтов.
ppbBuffer
[OUT] Указатель на BYTE
массив, содержащий новый буфер.
Возвращаемое значение
Объект HRESULT
. Допустимые значения включают, но не ограничиваются, значения, приведенные в следующей таблице.
Значение | Определение |
---|---|
S_OK | Указывает, что операция выполнена успешно. |
E_OUTOFMEMORY | Указывает, что память кучи исчерпана. |
Комментарии
Производные классы CGlobalModule, которые регистрируются для событий GL_RSCA_QUERY, получают указатель IGlobalRscaQueryProvider в качестве параметра в методе CGlobalModule::OnGlobalRSCAQueryvirtual
. Затем можно получить новый BYTE
массив, вызвав GetOutputBuffer
метод для указателя IGlobalRSCAQueryProvider
.
Возвращаемое GetOutputBuffer
значение зависит от реализации. В качестве руководства следует использовать следующие сведения, но они могут быть неправильными во всех сценариях:
Реализующий IGlobalRSCAQueryProvider
объект объявляет частный BYTE
указатель в качестве переменной-члена с именем buffer
; при построении он инициализирует buffer
значение NULL. Если buffer
значение не равно NULL при GetOutputBuffer
вызове , функция LocalFree вызывается для buffer
. Функция LocalAlloc вызывается для назначения buffer
новому BYTE
массиву размера cbBuffer
в куче. buffer
затем возвращается в разыменованном параметре ppbBuffer
, если GetOutputBuffer
возвращает S_OK.
Важно Этот метод является частью инфраструктуры IIS 7 и не предназначен для использования непосредственно из кода.
Примечания для разработчиков
IGlobalRSCAQueryProvider
разработчики отвечают за управление памятью с помощью этих данных; Поэтому разработчики, использующие динамическое выделение памяти, IGlobalRSCAQueryProvider
должны освобождать или вызывать BYTE
delete
указатель, когда он больше не нужен.
Примечания для вызывающих абонентов
IGlobalRSCAQueryProvider
разработчики отвечают за управление памятью с помощью этих данных; IGlobalRSCAQueryProvider
Поэтому клиенты не должны освобождать или вызывать метод delete для возвращаемого BYTE
указателя, если эти данные больше не нужны.
Требования
Тип | Описание |
---|---|
клиент | — IIS 7.0 в Windows Vista — IIS 7.5 в Windows 7 — IIS 8.0 в Windows 8 — IIS 10.0 в Windows 10 |
Сервер | — IIS 7.0 в Windows Server 2008 — IIS 7.5 в Windows Server 2008 R2 — IIS 8.0 в Windows Server 2012 — IIS 8.5 в Windows Server 2012 R2 — IIS 10.0 в Windows Server 2016 |
Продукт | — IIS 7.0, IIS 7.5, IIS 8.0, IIS 8.5, IIS 10.0 — IIS Express 7.5, IIS Express 8.0, IIS Express 10.0 |
Заголовок | Httpserv.h |
См. также:
Интерфейс IGlobalRSCAQueryProvider
Метод IGlobalRSCAQueryProvider::ResizeOutputBuffer