функция обратного вызова PINT10_ALLOCATE_BUFFER (video.h)
Функцию int10AllocateBuffer можно использовать для выделения одного блока памяти 4 КБ в контексте другого потока. После выделения блока памяти его необходимо освободить перед выделением другого блока памяти.
Синтаксис
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
Указатель на контекст драйвера видеопорта для интерфейса. Это должно совпадать со значением в Контексте член структуры VIDEO_PORT_INT10_INTERFACE после возврата VideoPortQueryServices.
[out] Seg
Указатель на расположение памяти, которое получит адрес сегмента выделенного буфера памяти.
[out] Off
Указатель на расположение памяти, которое получит смещение в сегменте, заданном *Seg, выделенного буфера памяти.
[in, out] Length
Указатель на расположение памяти, содержащее длину в байтах запрошенного буфера памяти, размер которого может превышать 4096. Когда функция возвращается, это расположение памяти будет содержать значение 4096, независимо от того, выделена ли память.
Возвращаемое значение
Функция Int10AllocateBuffer возвращает NO_ERROR при успешном выполнении. Он возвращает STATUS_INSUFFICIENT_RESOURCES, если буфер был выделен ранее или если запрошен размер буфера размером более 4096 байт.
Замечания
Видеопорт реализует эту функцию, доступ к которой можно получить через указатель в структуре VIDEO_PORT_INT10_INTERFACE.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows 2000 и более поздних версиях операционных систем Windows. |
целевая платформа | Настольный |
заголовка | video.h (include Video.h) |
IRQL | PASSIVE_LEVEL |