Función KsCreateDevice (ks.h)

La función KsCreateDevice crea un dispositivo AVStream.

Sintaxis

KSDDKAPI NTSTATUS KsCreateDevice(
  [in]            PDRIVER_OBJECT            DriverObject,
  [in]            PDEVICE_OBJECT            PhysicalDeviceObject,
  [in, optional]  const KSDEVICE_DESCRIPTOR *Descriptor,
  [in]            ULONG                     ExtensionSize,
  [out, optional] PKSDEVICE                 *Device
);

Parámetros

[in] DriverObject

Puntero al objeto de controlador WDM del minidriver.

[in] PhysicalDeviceObject

Puntero al objeto de dispositivo físico WDM para el dispositivo que desea crear en AVStream.

[in, optional] Descriptor

Puntero a un descriptor de dispositivo que describe las características del dispositivo que se va a crear. Si el autor de la llamada no especifica este parámetro opcional, AVStream crea un dispositivo con características predeterminadas y sin generadores de filtros asociados.

[in] ExtensionSize

Este parámetro contiene el tamaño de la extensión de dispositivo. Si es cero, se usa el tamaño de extensión predeterminado. Si no es así, debe ser al menos sizeof (KSDEVICE_HEADER).

[out, optional] Device

Puntero a una ubicación de memoria que contiene la dirección de la estructura KSDEVICE creada. Opcional.

Valor devuelto

Devuelve STATUS_SUCCESS si el dispositivo se crea correctamente. De lo contrario, devuelve un código de error adecuado.

Comentarios

Normalmente, el minidriver no llama directamente a esta función. En su lugar, se llama a KsCreateDevice mediante el controlador AddDevice predeterminado, KsAddDevice. Dado que KsAddDevice realiza una llamada interna a KsCreateDevice, los controladores que llaman a KsCreateDevice no deben llamar a KsAddDevice por separado.

Un minidriver que llama directamente a KsCreateDevice no debe usar KsInitializeDriver. Si el minidriver no llama a KsInitializeDriver, debe proporcionar su propia devolución de llamada AddDevice . A continuación, el minidriver puede llamar a KsCreateDevice desde esa devolución de llamada AddDevice .

Si no se proporciona ningún KSDEVICE_DESCRIPTOR , AVStream crea un dispositivo con las características predeterminadas y sin generadores de filtros asociados. Si se proporciona un KSDEVICE_DESCRIPTOR y contiene una tabla KSDEVICE_DISPATCH con un envío create, se llama a create dispatch.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Microsoft Windows XP y sistemas operativos posteriores y DirectX 8.0 y versiones posteriores de DirectX.
Plataforma de destino Universal
Encabezado ks.h (incluya Ks.h)
Library Ks.lib
IRQL PASSIVE_LEVEL

Consulte también

DEVICE_OBJECT

DRIVER_OBJECT

KSDEVICE

KSDEVICE_DESCRIPTOR

KSDEVICE_DISPATCH

KsAddDevice

KsInitializeDevice

KsInitializeDriver