Funzione KsCreateDevice (ks.h)
La funzione KsCreateDevice crea un dispositivo AVStream.
Sintassi
KSDDKAPI NTSTATUS KsCreateDevice(
[in] PDRIVER_OBJECT DriverObject,
[in] PDEVICE_OBJECT PhysicalDeviceObject,
[in, optional] const KSDEVICE_DESCRIPTOR *Descriptor,
[in] ULONG ExtensionSize,
[out, optional] PKSDEVICE *Device
);
Parametri
[in] DriverObject
Puntatore all'oggetto driver WDM del minidriver.
[in] PhysicalDeviceObject
Puntatore all'oggetto dispositivo fisico WDM per il dispositivo che si vuole creare in AVStream.
[in, optional] Descriptor
Puntatore a un descrittore di dispositivo che descrive le caratteristiche del dispositivo da creare. Se il chiamante non specifica questo parametro facoltativo, AVStream crea un dispositivo con caratteristiche predefinite e nessuna factory di filtro associata.
[in] ExtensionSize
Questo parametro contiene le dimensioni dell'estensione del dispositivo. Se è pari a zero, viene usata la dimensione predefinita dell'estensione. In caso contrario, deve essere almeno sizeof (KSDEVICE_HEADER).
[out, optional] Device
Puntatore a una posizione di memoria che contiene l'indirizzo della struttura di KS DEVICE creata. Opzionale.
Valore restituito
Restituisce STATUS_SUCCESS se il dispositivo viene creato correttamente. In caso contrario, restituisce un codice di errore appropriato.
Osservazioni
In genere, il minidriver non chiama direttamente questa funzione. Al contrario, KsCreateDevice viene chiamato dal gestore predefinito AddDevice, KsAddDevice. Poiché KsAddDevice effettua una chiamata interna a KsCreateDevice, i driver che chiamano KsCreateDevice non devono chiamare KsAddDevice separatamente.
Un minidriver che chiama KsCreateDevice direttamente non deve usare KsInitializeDriver. Se il minidriver non chiama KsInitializeDriver, deve invece fornire il proprio AddDevice callback. Il minidriver può quindi chiamare KsCreateDevice da tale callback AddDevice.
Se non viene specificata alcuna KSDEVICE_DESCRIPTOR, AVStream crea un dispositivo con le caratteristiche predefinite e nessuna factory di filtro associata. Se viene fornito un KSDEVICE_DESCRIPTOR e contiene una tabella KSDEVICE_DISPATCH con un dispatch di creazione, viene chiamato il comando create dispatch.
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Disponibile in Microsoft Windows XP e nei sistemi operativi successivi e in DirectX 8.0 e versioni successive di DirectX. |
piattaforma di destinazione | Universale |
intestazione | ks.h (include Ks.h) |
libreria | Ks.lib |
IRQL | PASSIVE_LEVEL |