Condividi tramite


Metodo IQueueCallbackIoStop::OnIoStop (wudfddi.h)

[Avviso: UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Nessuna nuova funzionalità viene aggiunta a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2. Per altre informazioni, vedere Introduzione con UMDF.]

La funzione di callback OnIoStop arresta l'elaborazione della richiesta di I/O specificata dalla coda specificata.

Sintassi

void OnIoStop(
  [in] IWDFIoQueue   *pWdfQueue,
  [in] IWDFIoRequest *pWdfRequest,
  [in] ULONG         ActionFlags
);

Parametri

[in] pWdfQueue

Puntatore all'interfaccia IWDFIoQueue per l'oggetto coda I/O da cui viene interrotta l'elaborazione della richiesta di I/O.

[in] pWdfRequest

Puntatore all'interfaccia IWDFIoRequest che rappresenta l'oggetto richiesta del framework il cui elaborazione viene arrestata.

[in] ActionFlags

Or bit per bit valido di valori tipizzati di WDF_REQUEST_STOP_ACTION_FLAGS che identifica lo stato di una richiesta di azione di arresto.

Valore restituito

nessuno

Osservazioni

Un driver registra l'interfaccia IQueueCallbackIoStop quando il driver chiama il metodo IWDFDevice::CreateIoQueue per creare una coda I/O o per configurare la coda I/O predefinita.

Se un driver registra una funzione di callback OnIoStop per una coda di I/O, il framework lo chiama quando il dispositivo sottostante della coda lascia lo stato di lavoro (D0). Il framework chiama la funzione di callback OnIoStop per ogni richiesta di I/O che il driver non è stato completato, incluse le richieste proprietarie del driver e quelle inoltrate a una destinazione di I/O.

La funzione di callback OnIoStop deve completare, annullare o rinviare ulteriormente l'elaborazione della richiesta di I/O. È necessario usare le regole seguenti:

Se il driver possiede la richiesta di I/O, deve chiamare IWDFIoRequest::Complete per completare o annullare la richiesta oppure deve rinviare ulteriormente l'elaborazione della richiesta e quindi chiamare IWDFIoRequest2::StopAcknowledge.

Se il driver ha inoltrato la richiesta di I/O a una destinazione di I/O, deve chiamare IWDFIoRequest::CancelSentRequest per tentare di annullare la richiesta oppure deve rinviare ulteriormente l'elaborazione della richiesta e quindi chiamare StopAcknowledge.

Se il flag WdfRequestStopRequestCancelable è impostato nel parametro ActionFlags , il driver deve chiamare IWDFIoRequest::UnmarkCancelable prima di chiamare IWDFIoRequest::Complete per completare (o annullare) la richiesta o chiamare IWDFIoRequest2::StopAcknowledge per ripetere la richiesta.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione wudfddi.h (include Wudfddi.h)

Vedi anche

IQueueCallbackIoStop

IWDFDevice::CreateIoQueue

IWDFIoQueue

IWDFIoRequest

IWDFIoRequest2::StopAcknowledge

WDF_REQUEST_STOP_ACTION_FLAGS