Condividi tramite


Routine dispatch richieste

La maggior parte dei driver deve gestire le routine Dispatch seguenti:

  • DispatchPnP

    IRP_MJ_PNP indica una richiesta che coinvolge il riconoscimento del dispositivo PnP, la configurazione hardware o l'allocazione delle risorse. Tali richieste vengono in genere inviate a un driver di dispositivo dal gestore PnP o da un driver di livello superiore strettamente associato.

  • DispatchPower

    IRP_MJ_POWER indica una richiesta relativa allo stato di alimentazione del dispositivo o del sistema. Tali richieste vengono inviate al driver di dispositivo dal risparmio energia o da un driver di livello superiore strettamente associato.

  • DispatchCreate

    IRP_MJ_CREATE indica che un sottosistema protetto in modalità utente, possibilmente per conto di un driver specifico dell'applicazione o del sottosistema, ha richiesto un handle per l'oggetto file associato all'oggetto dispositivo di destinazione oppure che un driver di livello superiore si connette o collega il relativo oggetto dispositivo all'oggetto dispositivo di destinazione.

  • DispatchClose

    IRP_MJ_CLOSE indica che l'ultimo handle dell'oggetto file associato all'oggetto dispositivo di destinazione è stato chiuso e rilasciato. Tutte le richieste di I/O sono state completate o annullate, pertanto non sono presenti riferimenti in sospeso al puntatore all'oggetto file.

  • DispatchRead

    IRP_MJ_READ indica una richiesta di I/O per trasferire i dati dal dispositivo fisico sottostante al sistema.

  • DispatchWrite

    IRP_MJ_WRITE indica una richiesta di I/O per trasferire i dati dal sistema al dispositivo fisico sottostante.

  • DispatchDeviceControl

    IRP_MJ_DEVICE_CONTROL indica una richiesta che contiene un codice di controllo di I/O specifico del tipo di dispositivo definito dal sistema che specifica un'operazione specifica del tipo di dispositivo. I driver di livello superiore passano questi irP ai driver di dispositivo sottostanti, che in genere elaborano la richiesta accedendo al dispositivo.

  • DispatchInternalDeviceControl

    IRP_MJ_INTERNAL_DEVICE_CONTROL indica una richiesta inviata al driver di dispositivo, nella maggior parte dei casi da un driver di livello superiore strettamente associato, in genere con un'operazione specifica del dispositivo, specifica del driver e del tipo di dispositivo, specifica del dispositivo o codice di controllo di I/O specifico del dispositivo che richiede un'operazione specifica del tipo di dispositivo o specifica del dispositivo.

    Solo determinati tipi di driver sono necessari per gestire le richieste di controllo di I/O del dispositivo interno definite dal sistema, inclusi determinati driver SCSI, driver di tastiera o mouse e driver paralleli che interagiscono con i driver forniti dal sistema.

  • DispatchSystemControl

    IRP_MJ_SYSTEM_CONTROL viene usato per specificare le richieste WMI ai driver. Per altre informazioni su WMI, vedere Strumentazione gestione Windows.

Le routine dispatch che un driver deve fornire variano in base al tipo e alla funzionalità del dispositivo fisico sottostante. Per informazioni specifiche sul tipo di dispositivo sui codici di funzione principali di IRP che i driver devono gestire, vedere la documentazione specifica del tipo di dispositivo in Windows Driver Kit (WDK).