struktur SCSIWMI_REQUEST_CONTEXT (scsiwmi.h)
Struktur SCSIWMI_REQUEST_CONTEXT berisi informasi konteks untuk WMI SRB.
Catatan
Driver port SCSI dan model driver miniport SCSI dapat diubah atau tidak tersedia di masa mendatang. Sebagai gantinya, sebaiknya gunakan driver Storport dan model driver miniport Storport .
Sintaks
typedef struct {
PVOID UserContext;
ULONG BufferSize;
PUCHAR Buffer;
UCHAR MinorFunction;
UCHAR ReturnStatus;
ULONG ReturnSize;
} SCSIWMI_REQUEST_CONTEXT, *PSCSIWMI_REQUEST_CONTEXT;
Anggota
UserContext
Menunjuk ke buffer driver miniport yang berisi data apa pun yang diperlukan driver miniport untuk memproses SRB. Ini bisa menjadi penunjuk ke struktur HW_DEVICE_EXTENSION driver miniport atau beberapa buffer lainnya.
BufferSize
Dicadangkan untuk penggunaan sistem dan tidak tersedia untuk digunakan oleh driver miniport.
Buffer
Dicadangkan untuk penggunaan sistem dan tidak tersedia untuk digunakan oleh driver miniport.
MinorFunction
Dicadangkan untuk penggunaan sistem dan tidak tersedia untuk digunakan oleh driver miniport.
ReturnStatus
Menunjukkan status pengembalian SRB. Anggota ini tidak valid sampai setelah driver miniport memanggil ScsiPortWmiPostProcess untuk memperbarui konteks permintaan.
ReturnSize
Menunjukkan jumlah byte data yang ditransfer untuk SRB. Anggota ini tidak valid sampai setelah driver miniport memanggil ScsiPortWmiPostProcess untuk memperbarui konteks permintaan.
Keterangan
Ketika driver miniport menerima SRB di mana anggota Fungsi diatur ke SRB_FUNCTION_WMI, ia memanggil ScsiPortWmiDispatchFunction dengan parameter permintaan, termasuk penunjuk ke konteks permintaan. ScsiPortWmiDispatchFunction meneruskan konteks permintaan ke rutinitas HwScsiWmiXxx yang sesuai dari driver miniport.
Ketika driver miniport selesai memproses SRB dan sebelum menyelesaikan SRB, driver miniport harus memanggil ScsiPortWmiPostProcess untuk memperbarui anggota ReturnStatus dan ReturnSize dari konteks permintaan. Driver miniport memperbarui panjang dan status transfer data SRB ke nilai-nilai ini dengan memanggil ScsiPortWmiGetReturnSize dan ScsiPortWmiGetReturnStatus. masing-masing.
Konteks permintaan harus tetap valid selama pemrosesan SRB. Jika SRB dapat tertunda, driver miniport harus mengalokasikan struktur SCSIWMI_REQUEST_CONTEXT dari ekstensi SRB sehingga tetap valid sampai SRB selesai. Untuk SRB nonpending, struktur dapat dialokasikan dari bingkai tumpukan yang tidak keluar dari cakupan.
Persyaratan
Persyaratan | Nilai |
---|---|
Header | scsiwmi.h (termasuk Scsiwmi.h) |