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 驱动程序对象的指针。
[in] PhysicalDeviceObject
指向要在 AVStream 下创建的设备的 WDM 物理设备对象的指针。
[in, optional] Descriptor
指向描述所创建设备特征的设备描述符的指针。 如果调用方未指定此可选参数,AVStream 将创建具有默认特征且没有关联的筛选器工厂的设备。
[in] ExtensionSize
此参数包含设备扩展的大小。 如果为零,则使用默认扩展大小。 如果没有,则其大小必须至少为 (KSDEVICE_HEADER) 。
[out, optional] Device
指向包含所创建 KSDEVICE 结构的地址的内存位置的指针。 可选。
返回值
如果成功创建设备,则返回STATUS_SUCCESS。 否则,它将返回相应的错误代码。
注解
通常,微型驱动程序不会直接调用此函数。 相反, KsCreateDevice 由默认 的 AddDevice 处理程序 KsAddDevice 调用。 由于 KsAddDevice 对 KsCreateDevice 进行内部调用,因此调用 KsCreateDevice 的驱动程序不应单独调用 KsAddDevice 。
直接调用 KsCreateDevice 的微型驱动程序不应使用 KsInitializeDriver。 如果微型驱动程序未调用 KsInitializeDriver,则应改为提供自己的 AddDevice 回调。 然后,微型驱动程序可以从该 AddDevice 回调调用 KsCreateDevice。
如果未提供 KSDEVICE_DESCRIPTOR,AVStream 将创建具有默认特征且没有关联的筛选器工厂的设备。 如果提供了KSDEVICE_DESCRIPTOR,并且包含具有 create 调度 的KSDEVICE_DISPATCH 表,则调用 create dispatch。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 在 Microsoft Windows XP 及更高版本的操作系统以及 DirectX 8.0 及更高版本的 DirectX 中可用。 |
目标平台 | 通用 |
标头 | ks.h (包括 Ks.h) |
Library | Ks.lib |
IRQL | PASSIVE_LEVEL |