Freigeben über


SCSIWMI_REQUEST_CONTEXT Struktur (scsiwmi.h)

Eine SCSIWMI_REQUEST_CONTEXT Struktur enthält Kontextinformationen für einen WMI-SRB.

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 Treibermodelle.

Syntax

typedef struct {
  PVOID  UserContext;
  ULONG  BufferSize;
  PUCHAR Buffer;
  UCHAR  MinorFunction;
  UCHAR  ReturnStatus;
  ULONG  ReturnSize;
} SCSIWMI_REQUEST_CONTEXT, *PSCSIWMI_REQUEST_CONTEXT;

Angehörige

UserContext

Verweist auf einen Miniporttreiberpuffer, der alle Daten enthält, die der Miniporttreiber zum Verarbeiten des SRB benötigt. Dies kann ein Zeiger auf die HW_DEVICE_EXTENSION Struktur des Miniporttreibers oder einen anderen Puffer sein.

BufferSize

Reserviert für die Systemverwendung und nicht für die Verwendung durch Miniporttreiber.

Buffer

Reserviert für die Systemverwendung und nicht für die Verwendung durch Miniporttreiber.

MinorFunction

Reserviert für die Systemverwendung und nicht für die Verwendung durch Miniporttreiber.

ReturnStatus

Gibt den Rückgabestatus des SRB an. Dieser Member ist erst gültig, nachdem der Miniporttreiber ScsiPortWmiPostProcess- aufgerufen hat, um den Anforderungskontext zu aktualisieren.

ReturnSize

Gibt die Anzahl der Bytes an, die für den SRB übertragen wurden. Dieser Member ist erst gültig, nachdem der Miniporttreiber ScsiPortWmiPostProcess- aufgerufen hat, um den Anforderungskontext zu aktualisieren.

Bemerkungen

Wenn der Miniporttreiber einen SRB empfängt, in dem der Function Member auf SRB_FUNCTION_WMI festgelegt ist, ruft er ScsiPortWmiDispatchFunction mit Anforderungsparametern auf, einschließlich eines Zeigers auf einen Anforderungskontext. ScsiPortWmiDispatchFunction übergibt den Anforderungskontext an die entsprechende HwScsiWmiXxx- Routine des Miniporttreibers.

Wenn der Miniporttreiber die Verarbeitung des SRB und vor abschluss des SRB abgeschlossen hat, sollte der Miniporttreiber ScsiPortWmiPostProcess- aufrufen, um die ReturnStatus- zu aktualisieren und ReturnSize Member des Anforderungskontexts zurückzugeben. Der Miniporttreiber aktualisiert die Länge und den Status der SRB-Datenübertragung auf diese Werte, indem ScsiPortWmiGetReturnSize und ScsiPortWmiGetReturnStatusaufgerufen wird. beziehungsweise.

Ein Anforderungskontext muss während der gesamten Verarbeitung eines SRB gültig bleiben. Wenn der SRB stiften kann, muss der Miniporttreiber die SCSIWMI_REQUEST_CONTEXT Struktur aus der SRB-Erweiterung zuordnen, damit er gültig bleibt, bis der SRB abgeschlossen ist. Bei nicht ausstehenden SRBs kann die Struktur aus einem Stapelframe zugewiesen werden, der nicht außerhalb des Gültigkeitsbereichs liegt.

Anforderungen

Anforderung Wert
Header- scsiwmi.h (include Scsiwmi.h)

Siehe auch

ScsiPortWmiDispatchFunction

ScsiPortWmiGetReturnSize

ScsiPortWmiGetReturnStatus-

ScsiPortWmiPostProcess-