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 |