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

另请参阅

VIDEO_PORT_INT10_INTERFACE