video.h) PINT10_ALLOCATE_BUFFER 回调函数 (
Int10AllocateBuffer 函数可用于在另一个线程的上下文中分配单个 4 KB 内存块。 分配内存块后,必须先释放该内存块,然后才能分配另一个内存块。
语法
PINT10_ALLOCATE_BUFFER Pint10AllocateBuffer;
VP_STATUS Pint10AllocateBuffer(
[in] IN PVOID Context,
[out] OUT PUSHORT Seg,
[out] OUT PUSHORT Off,
[in, out] IN OUT PULONG Length
)
{...}
参数
[in] Context
指向接口的视频端口驱动程序定义的上下文的指针。 在 VideoPortQueryServices 返回后,此值应与 VIDEO_PORT_INT10_INTERFACE 结构的 Context 成员中的值相同。
[out] Seg
指向将接收已分配内存缓冲区的段地址的内存位置的指针。
[out] Off
指向内存位置的指针,该位置将接收分配的内存缓冲区的 *Seg 指定的段内的偏移量。
[in, out] Length
指向内存位置的指针,该位置包含所请求内存缓冲区的长度(以字节为单位),该缓冲区可能最大为 4096。 当函数返回时,无论内存是否实际分配,此内存位置都将包含值 4096。
返回值
Int10AllocateBuffer 函数在成功后返回NO_ERROR。 如果之前已分配缓冲区或请求的缓冲区大小大于 4096 字节,则返回STATUS_INSUFFICIENT_RESOURCES。
注解
视频端口实现此函数,可通过 VIDEO_PORT_INT10_INTERFACE 结构中的指针访问该函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Windows 2000 及更高版本的 Windows 操作系统中可用。 |
目标平台 | 桌面 |
标头 | video.h (包括 Video.h) |
IRQL | PASSIVE_LEVEL |