BYTE
创建新数组。
语法
virtual HRESULT GetOutputBuffer(
DWORD cbBuffer,
OUT BYTE** ppbBuffer
) = 0;
parameters
cbBuffer
[IN]包含 DWORD
要分配的字节数的 。
ppbBuffer
[OUT]指向 BYTE
包含新缓冲区的数组的指针。
返回值
HRESULT
。 可能的值包括(但并不限于)下表中的项。
值 | 定义 |
---|---|
S_OK | 指示操作成功。 |
E_OUTOFMEMORY | 指示堆内存已用尽。 |
备注
注册GL_RSCA_QUERY事件的 CGlobalModule 派生类接收 IGlobalRscaQueryProvider 指针作为 CGlobalModule::OnGlobalRSCAQueryvirtual
方法上的参数。 然后,可以通过对指针调用 GetOutputBuffer
方法来IGlobalRSCAQueryProvider
检索新BYTE
数组。
返回 GetOutputBuffer
值取决于实现。 应将以下信息用作指南,但并非所有情况都正确:
实现 IGlobalRSCAQueryProvider
者将私有 BYTE
指针声明为名为 buffer
的成员变量;实现程序在构造时初始化 buffer
为 NULL。 如果在buffer
调用 时GetOutputBuffer
不为 NULL,则会在 上buffer
调用 LocalFree 函数。 调用 LocalAlloc 函数以分配给buffer
堆上大小cbBuffer
的新BYTE
数组。 buffer
如果 GetOutputBuffer
返回 S_OK,则会在取消引用ppbBuffer
参数中返回 。
重要 此方法是 IIS 7 基础结构的一部分,不应直接从代码中使用。
实现者须知
IGlobalRSCAQueryProvider
实施者负责使用此数据进行内存管理;因此,IGlobalRSCAQueryProvider
使用动态内存分配的实现程序必须在不再需要指针时释放或调用delete
BYTE
指针。
对调用者的说明
IGlobalRSCAQueryProvider
实施者负责使用此数据进行内存管理;因此,当不再需要此数据时, IGlobalRSCAQueryProvider
客户端不得释放或调用返回 BYTE
的指针上的 delete。
要求
类型 | 说明 |
---|---|
客户端 | - Windows Vista 上的 IIS 7.0 - Windows 7 上的 IIS 7.5 - Windows 8 上的 IIS 8.0 - Windows 10 上的 IIS 10.0 |
服务器 | - Windows Server 2008 上的 IIS 7.0 - Windows Server 2008 R2 上的 IIS 7.5 - Windows Server 2012 上的 IIS 8.0 - Windows Server 2012 R2 上的 IIS 8.5 - Windows Server 2016 上的 IIS 10.0 |
产品 | - 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 |
Header | Httpserv.h |
另请参阅
IGlobalRSCAQueryProvider 接口
IGlobalRSCAQueryProvider::ResizeOutputBuffer 方法