Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
ChangerError führt eine gerätespezifische Fehlerbehandlung durch.
Syntax
VOID ChangerError(
PDEVICE_OBJECT DeviceObject,
PSCSI_REQUEST_BLOCK Srb,
NTSTATUS *Status,
BOOLEAN *Retry
);
Parameter
DeviceObject
Zeiger auf das Geräteobjekt, das den Changer darstellt.
Srb
Zeiger auf den SCSI-Anforderungsblock für den fehlgeschlagenen Vorgang.
Status
Gibt die Adresse des vom System festgelegten STATUS_XXX- Codes an. Der Changer-Miniklassentreiber kann den Status ändern oder ihn wie folgt belassen.
Retry
Zeigen Sie auf ein Flag, das angibt, ob die Anforderung erneut versucht werden soll. Der Changer-Miniklassentreiber kann dieses Kennzeichen festlegen oder es wie folgt belassen.
Rückgabewert
Nichts
Bemerkungen
Diese Routine ist erforderlich.
Wenn ein SRB mit einem SCSI-Status von CHECK CONDITION fehlschlägt, ruft der SCSI-Klassentreiber die ChangerClassError Routine des Änderungsklassentreibers auf. ChangerClassError führt eine geräteunabhängige Fehlerbehandlung durch und ruft die ChangerError Routine des ChangerError-Treibers auf.
ChangerError überprüft zuerst Srb-–>SrbStatus mit SRB_STATUS_AUTOSENSE_VALID, um sicherzustellen, dass der sinnvolle Datenpuffer gültig ist. Wenn ja, überprüft es die Sinnesdaten in Srb->SenseInfoBuffer, um zu bestimmen, ob *Status mit einem genaueren STATUS_XXX- Code aktualisiert werden soll und/oder ob das Retry Flag festgelegt werden soll, bevor sie zum Änderungsklassentreiber zurückkehren. Die Wiederholungsanzahl des Änderungsklassentreibers bestimmt, ob der SRB tatsächlich wiederholt wird.
Anforderungen
| Anforderung | Wert |
|---|---|
| Zielplattform- | Desktop |
| Header- | mcd.h (include Mcd.h, Ntddchgr.h) |
| IRQL- | PASSIVE_LEVEL |