Condividi tramite


Funzione di callback PFNKSDEVICEIRP (ks.h)

Una routine del gestore IRP di AVStream viene chiamata quando questi IRP vengono inviati dal dispositivo.

IRP_MN_QUERY_REMOVE_DEVICE

IRP_MN_QUERY_STOP_DEVICE

IRP_MN_QUERY_INTERFACE

Sintassi

PFNKSDEVICEIRP Pfnksdeviceirp;

NTSTATUS Pfnksdeviceirp(
  [in] PKSDEVICE Device,
  [in] PIRP Irp
)
{...}

Parametri

[in] Device

Puntatore al KSDEVICE che ha inviato l'IRP.

[in] Irp

IRP rilasciata dal dispositivo.

Valore restituito

Deve restituire STATUS_SUCCESS o il codice di errore restituito dal tentativo di eseguire l'operazione. In caso contrario, restituire un codice di errore appropriato.

Commenti

IRP Descrizione
IRP_MN_QUERY_REMOVE_DEVICE Il minidriver specifica l'indirizzo di questa routine nel membro QueryRemove della relativa struttura di KSDEVICE_DISPATCH . Questa routine viene chiamata quando un IRP_MN_QUERY_REMOVE_DEVICE viene inviato dal dispositivo. In genere verrà fornito da minidriver che vogliono impedire la rimozione del dispositivo o da minidriver che devono impedire l'attività che altrimenti impedisce loro di eseguire il commit a un'operazione di rimozione del dispositivo. Se questa routine non viene fornita, AVStream presuppone che il dispositivo possa eseguire il commit in una rimozione. La routine viene chiamata a IRQL = PASSIVE_LEVEL e potrebbe non restituire STATUS_PENDING; un codice di esito positivo indica che il dispositivo può eseguire il commit a una rimozione e un codice di errore indica che non è possibile. Restituisce l'esito positivo se il dispositivo può essere rimosso (o i driver possono essere aggiornati) senza interrompere il computer. Questa routine è facoltativa.
IRP_MN_QUERY_STOP_DEVICE Il minidriver specifica un puntatore a questa routine nel membro QueryStop della relativa struttura di KSDEVICE_DISPATCH . Usare AVStrMiniQueryStop per impedire l'arresto del dispositivo o di impedire l'attività che impedirebbe al minidriver di eseguire il commit in un'operazione di arresto. Se questa routine non è specificata, AVStream presuppone che il minidriver possa eseguire il commit in un'operazione di arresto. Questa routine è facoltativa. L'esito positivo indica che il dispositivo può eseguire il commit in un arresto e un codice di errore indica che non è possibile. Non restituire STATUS_PENDING.
IRP_MN_QUERY_INTERFACE Un driver o un componente di sistema invia questo IRP per ottenere informazioni su un'interfaccia esportata dal driver. Per altre informazioni sull'IRP, vedere IRP_MN_QUERY_INTERFACE. Il minidriver specifica l'indirizzo di questa routine nel membro QueryInterface della relativa struttura KSDEVICE_DISPATCH . Questa routine è facoltativa.

Requisiti

Requisito Valore
Piattaforma di destinazione Desktop
Intestazione ks.h (include Ks.h)
IRQL PASSIVE_LEVEL (vedere la sezione Osservazioni)

Vedi anche

KSDEVICE

KSDEVICE_DISPATCH