Функция KsCreateDevice (ks.h)
Функция KsCreateDevice создает устройство AVStream.
Синтаксис
KSDDKAPI NTSTATUS KsCreateDevice(
[in] PDRIVER_OBJECT DriverObject,
[in] PDEVICE_OBJECT PhysicalDeviceObject,
[in, optional] const KSDEVICE_DESCRIPTOR *Descriptor,
[in] ULONG ExtensionSize,
[out, optional] PKSDEVICE *Device
);
Параметры
[in] DriverObject
Указатель на объект драйвера WDM мини-driver.
[in] PhysicalDeviceObject
Указатель на объект физического устройства WDM для устройства, которое вы хотите создать в AVStream.
[in, optional] Descriptor
Указатель на дескриптор устройства, описывающий характеристики создаваемого устройства. Если вызывающий объект не задает этот необязательный параметр, AVStream создает устройство с характеристиками по умолчанию и не связаны фабрики фильтров.
[in] ExtensionSize
Этот параметр содержит размер расширения устройства. Если это равно нулю, используется размер расширения по умолчанию. В противном случае это должно быть по крайней мере размер (KSDEVICE_HEADER).
[out, optional] Device
Указатель на расположение памяти, содержащее адрес созданной структуры KSDEVICE. Необязательный.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если устройство успешно создано. В противном случае возвращается соответствующий код ошибки.
Замечания
Как правило, мини-driver не вызывает эту функцию напрямую. Вместо этого KsCreateDevice вызывается обработчиком AddDevice по умолчани ю KsAddDevice. Так как KsAddDevice выполняет внутренний вызов KsCreateDevice, драйверы, которые вызывают KsCreateDevice не должны вызывать KsAddDevice отдельно.
Мини-driver, который вызывает KsCreateDevice напрямую не должен использовать KsInitializeDriver. Если мини-driver не вызывает KsInitializeDriver, он должен вместо этого предоставить собственные AddDevice обратного вызова. Затем мини-driver может вызывать KsCreateDevice из этого обратного вызова AddDev ice.
Если KSDEVICE_DESCRIPTOR не предоставлено, AVStream создает устройство с характеристиками по умолчанию и не связано с фабриками фильтров. Если KSDEVICE_DESCRIPTOR предоставляется и содержит таблицу KSDEVICE_DISPATCH с отправкой создания, вызывается отправка.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Microsoft Windows XP и более поздних операционных системах и версиях DirectX 8.0 и более поздних версий DirectX. |
целевая платформа | Всеобщий |
заголовка | ks.h (include Ks.h) |
библиотеки | Ks.lib |
IRQL | PASSIVE_LEVEL |