Funzione ChangerInitializeElementStatus (mcd.h)
ChangerInitializeElementStatus gestisce gli aspetti specifici del dispositivo di un IRP di controllo del dispositivo con il codice IOCTL IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS.
Sintassi
NTSTATUS ChangerInitializeElementStatus(
[in] PDEVICE_OBJECT DeviceObject,
[in] PIRP Irp
);
Parametri
[in] DeviceObject
Puntatore all'oggetto dispositivo che rappresenta il modificatore.
[in] Irp
Puntatore all'IRP.
Valore restituito
ChangerInitializeElementStatus restituisce lo stato restituito dal driver della porta di sistema o uno dei valori seguenti:
STATUS_SUCCESS
STATUS_INVALID_PARAMETER
STATUS_INSUFFICIENT_RESOURCES
Se il modificatore non supporta l'inizializzazione di un intervallo di elementi di un particolare tipo e ChangerInitializeElementStatus viene chiamato con un tipo di elemento diverso da AllElements, restituisce STATUS_INVALID_PARAMETER.
Osservazioni
Questa routine è obbligatoria.
ChangerInitializeElementStatus aggiorna la memoria interna del modificatore con le informazioni correnti sui relativi elementi.
Il driver della classe changer controlla la lunghezza del buffer di input nella posizione dello stack I/O prima di chiamare ChangerInitializeElementStatus.
Irp:>SystemBuffer punta a una struttura CHANGER_INITIALIZE_ELEMENT_STATUS come parametro di input che indica gli elementi per cui inizializzare lo stato e se inizializzare lo stato degli elementi con i dati ottenuti dalle etichette di codice a barre.
Per un modificatore SCSI, ChangerInitializeElementStatus compila un SRB con un cdb per inizializzare lo stato dell'elemento, converte gli indirizzi degli elementi in base zero in indirizzi specifici del dispositivo e invia SRB al driver della porta di sistema.
ChangerInitializeElementStatus imposta il campo informazioni nel blocco di stato I/O su sizeof(CHANGER_INITIALIZE_ELEMENT_STATUS) prima di tornare al driver di classe del modificatore.
Fabbisogno
Requisito | Valore |
---|---|
piattaforma di destinazione | Desktop |
intestazione | mcd.h (include Mcd.h, Ntddchgr.h) |
IRQL | PASSIVE_LEVEL |