SCSI_PNP_REQUEST_BLOCK Struktur (storport.h)
DieSCSI_PNP_REQUEST_BLOCK-Struktur ist eine spezielle Version einer SCSI_REQUEST_BLOCK, die für Plug-and-Play-Anforderungen (PNP) verwendet wird.
Anmerkung
Die SCSI-Porttreiber- und SCSI-Miniporttreibermodelle können in Zukunft geändert oder nicht verfügbar sein. Stattdessen empfehlen wir die Verwendung des Storport-Treibers und Storport Miniport-Treiber Modellen.
Syntax
typedef struct _SCSI_PNP_REQUEST_BLOCK {
USHORT Length;
UCHAR Function;
UCHAR SrbStatus;
UCHAR PnPSubFunction;
UCHAR PathId;
UCHAR TargetId;
UCHAR Lun;
STOR_PNP_ACTION PnPAction;
ULONG SrbFlags;
ULONG DataTransferLength;
ULONG TimeOutValue;
PVOID DataBuffer;
PVOID SenseInfoBuffer;
struct _SCSI_REQUEST_BLOCK *NextSrb;
PVOID OriginalRequest;
PVOID SrbExtension;
ULONG SrbPnPFlags;
ULONG Reserved;
UCHAR Reserved4[16];
} SCSI_PNP_REQUEST_BLOCK, *PSCSI_PNP_REQUEST_BLOCK;
Angehörige
Length
Die Größe der SCSI_PNP_REQUEST_BLOCK Struktur in Byte.
Function
Der auszuführende Vorgang. Für die SCSI_PNP_REQUEST_BLOCK Struktur ist dieses Element immer auf SRB_FUNCTION_PNP festgelegt.
SrbStatus
Der Status der abgeschlossenen Anforderung. Der Miniporttreiber sollte diesen Wert festlegen, bevor der Storport-Treiber benachrichtigt wird, dass die Anforderung abgeschlossen ist. Ein Miniporttreiber benachrichtigt den Storport-Treiber, dass die Anforderung abgeschlossen wurde, indem die StorPortNotification-Routine mit einem Benachrichtigungstyp von RequestComplete-aufgerufen wird. Eine Liste der möglichen Statuswerte finden Sie unter SCSI_REQUEST_BLOCK.
PnPSubFunction
Dieses Element wird derzeit nicht verwendet. Miniporttreiber ignorieren dieses Element.
PathId
Der SCSI-Port- oder Busbezeichner für die Anforderung. Dieser Wert basiert auf Null.
TargetId
Der Zielcontroller oder die Geräte-ID auf dem Bus.
Lun
Die logische Einheitsnummer (LUN) des Geräts.
PnPAction
Die auszuführende Plug-and-Play-Aktion. Dieses Element kann einen der folgenden Werte aufweisen:
Wert | Bedeutung |
---|---|
StorStartDevice (0x00) | Starten Sie das Gerät. |
StorRemoveDevice (0x02) | Entfernen Sie das Gerät. |
StorStopDevice (0x04) | Beenden Sie das Gerät. |
StorQueryCapabilities- (0x09) | Fragen Sie die Funktionen des Geräts ab. |
StorQueryResourceRequirements (0x0B) | Fragen Sie die Ressourcenanforderungen für das Gerät ab. |
StorFilterResourceRequirequirements- (0x0D) | Filtern Sie die Ressourcenanforderungen für das Gerät. |
StorSupriseRemoval (0x17) | Überraschungsentfernung des Geräts. Dieser Wert wurde in Windows 7 hinzugefügt. |
SrbFlags
Miniport-Treiber sollte dieses Element ignorieren.
DataTransferLength
Miniport-Treiber sollte dieses Element ignorieren.
TimeOutValue
Das Intervall in Sekunden, das die Anforderung ausführen kann, bevor der Storport-Treiber feststellt, dass die Anforderung ein Timeout aufweist.
DataBuffer
Miniport-Treiber sollte dieses Element ignorieren.
SenseInfoBuffer
Miniport-Treiber sollte dieses Element ignorieren.
NextSrb
Miniport-Treiber sollte dieses Element ignorieren.
OriginalRequest
Miniport-Treiber sollte dieses Element ignorieren.
SrbExtension
Ein Zeiger auf die SRB-Erweiterung. Ein Miniporttreiber darf dieses Element nicht verwenden, wenn er SrbExtensionSize- in der HW_INITIALIZATION_DATA-Struktur auf Null festgelegt hat. Der Storport-Treiber initialisiert nicht den Speicher, auf den dieses Element verweist. Die HBA kann direkt auf die Daten zugreifen, die der Miniporttreiber in die SRB-Erweiterung schreibt. Ein Miniporttreiber kann die physische Adresse der SRB-Erweiterung abrufen, indem die StorPortGetPhysicalAddress Routine aufgerufen wird.
SrbPnPFlags
Die PNP-Flags. Derzeit ist das einzige zulässige Flag SRB_PNP_FLAGS_ADAPTER_REQUEST, was angibt, dass die PNP-Anforderung für den Adapter gilt und nicht für eines der Geräte auf dem Adapter. Wenn dieses Flag festgelegt ist, sollte der Miniporttreiber die Werte in der PathId-, TargetId-und Lun-ignorieren.
Reserved
Reserviert für die Systemverwendung.
Reserved4[16]
Reserviert für die Systemverwendung.
Bemerkungen
Der Storport-Treiber sendet SCSI_PNP_REQUEST_BLOCK Anforderungen an einen Miniporttreiber, um den Miniporttreiber über Windows-Plug-and-Play-Ereignisse zu benachrichtigen, die sich auf Speichergeräte auswirken, die mit dem Adapter verbunden sind.
Der Storport-Treiber ruft HwStorBuildIo- auf, um SRBs an den Miniporttreiber zu übergeben. HwStorBuildIo überprüft das Function Member des SRB, um den Typ des SRB zu bestimmen. Wenn das element Function auf SRB_FUNCTION_PNP festgelegt ist, ist der SRB eine Struktur vom Typ SCSI_PNP_REQUEST_BLOCK.
Anforderungen
Anforderung | Wert |
---|---|
Header- | storport.h (einschließlich Storport.h, Minitape.h, Srb.h) |