IOCTL_SCSI_MINIPORT IOCTL (ntddscsi.h)
Sendet eine spezielle Steuerungsfunktion an einen HBA-Spezifischen (Host Bus Adapter)-Miniporttreiber. Die Ergebnisse variieren je nach dem jeweiligen Miniporttreiber, an den diese Anforderung weitergeleitet wird. Wenn der Aufrufer eine nonzero Length angibt, muss der Eingabe- oder Ausgabepuffer mindestens (sizeof(SRB_IO_CONTROL) + DataBufferLength)) sein.
Die vorgeschriebene Möglichkeit zum Öffnen des HBA ist die Verwendung der SetupDiXxx-APIs, um alle ausgeführten Geräte der ScsiAdapter-Klasse abzurufen. Rufen Sie die Eigenschaften der einzelnen Geräte instance Namen ab, und öffnen Sie den HBA direkt. SCSI%d (z. B. \\.\Scsi0:) ist eine symbolische Verknüpfung, und nicht ALLE Speichertreiber erstellen den Link.
Hinweis
Der SCSI-Porttreiber und die SCSI-Miniporttreibermodelle können in Zukunft geändert oder nicht mehr verfügbar sein. Stattdessen wird empfohlen, die Modelle Storport-Treiber und Storport-Miniporttreiber zu verwenden.
Hauptcode
Eingabepuffer
Der Puffer bei Irp-AssociatedIrp.SystemBuffer> muss eine SRB_IO_CONTROL-Struktur enthalten.
Eingabepufferlänge
Parameters.DeviceIoControl.InputBufferLength gibt die Größe des Puffers in Bytes an, die mindestens sizeof(SRB_IO_CONTROL) sein muss, mit zusätzlichem Speicher für Daten, wenn das Feld Length nicht zero ist.
Ausgabepuffer
Eine aktualisierte SRB_IO_CONTROL-Struktur wird an den Puffer unter Irp-AssociatedIrp.SystemBuffer> zurückgegeben.
Länge des Ausgabepuffers
Die Länge der SRB_IO_CONTROL Struktur.
Eingabe-/Ausgabepuffer
Keine.
Länge des Eingabe-/Ausgabepuffers
Nicht zutreffend.
Statusblock
Das Feld Information enthält die Anzahl der im Ausgabepuffer zurückgegebenen Bytes. Das Feld Status gibt die Ergebnisse des Vorgangs an.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntddscsi.h (include Ntddscsi.h) |