Função KsCreateDevice (ks.h)

A função KsCreateDevice cria um dispositivo AVStream.

Sintaxe

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

Um ponteiro para o objeto de driver WDM do minidriver.

[in] PhysicalDeviceObject

Um ponteiro para o objeto de dispositivo físico WDM para o dispositivo que você deseja criar em AVStream.

[in, optional] Descriptor

Um ponteiro para um descritor de dispositivo que descreve as características do dispositivo que está sendo criado. Se o chamador não especificar esse parâmetro opcional, o AVStream criará um dispositivo com características padrão e nenhuma fábrica de filtros associada.

[in] ExtensionSize

Esse parâmetro contém o tamanho da extensão do dispositivo. Se for zero, o tamanho da extensão padrão será usado. Caso contrário, deve ser pelo menos sizeof (KSDEVICE_HEADER).

[out, optional] Device

Um ponteiro para um local de memória que contém o endereço da estrutura KSDEVICE criada. Opcional.

Retornar valor

Retorna STATUS_SUCCESS se o dispositivo for criado com êxito. Caso contrário, ele retornará um código de erro apropriado.

Comentários

Normalmente, o minidriver não chama essa função diretamente. Em vez disso, KsCreateDevice é chamado pelo manipulador AddDevice padrão, KsAddDevice. Como KsAddDevice faz uma chamada interna para KsCreateDevice, os drivers que chamam KsCreateDevice não devem chamar KsAddDevice separadamente.

Um minidriver que chama KsCreateDevice diretamente não deve usar KsInitializeDriver. Se o minidriver não estiver chamando KsInitializeDriver, ele deverá fornecer seu próprio retorno de chamada AddDevice . O minidriver pode chamar KsCreateDevice desse retorno de chamada addDevice .

Se nenhuma KSDEVICE_DESCRIPTOR for fornecida, o AVStream criará um dispositivo com as características padrão e nenhuma fábrica de filtros associada. Se um KSDEVICE_DESCRIPTOR for fornecido e contiver uma tabela KSDEVICE_DISPATCH com uma expedição de criação, a expedição de criação será chamada.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Microsoft Windows XP e em sistemas operacionais posteriores e no DirectX 8.0 e versões posteriores do DirectX.
Plataforma de Destino Universal
Cabeçalho ks.h (inclua Ks.h)
Biblioteca Ks.lib
IRQL PASSIVE_LEVEL

Confira também

DEVICE_OBJECT

DRIVER_OBJECT

KSDEVICE

KSDEVICE_DESCRIPTOR

KSDEVICE_DISPATCH

KsAddDevice

KsInitializeDevice

KsInitializeDriver