PSCSIWMI_SET_DATAITEM fungsi panggilan balik (scsiwmi.h)
Rutinitas HwScsiWmiSetDataItem driver miniport dipanggil untuk mengubah satu item data dalam instans blok data. Rutinitas ini bersifat opsional.
Sintaks
PSCSIWMI_SET_DATAITEM PscsiwmiSetDataitem;
BOOLEAN PscsiwmiSetDataitem(
[in] PVOID DeviceContext,
[in] PSCSIWMI_REQUEST_CONTEXT RequestContext,
[in] ULONG GuidIndex,
[in] ULONG InstanceIndex,
[in] ULONG DataItemId,
[in] ULONG BufferSize,
[in] PUCHAR Buffer
)
{...}
Parameter
[in] DeviceContext
Menunjuk ke nilai konteks miniport yang ditentukan driver yang diteruskan ke ScsiPortWmiDispatchFunction.
[in] RequestContext
Menunjuk ke struktur SCSIWMI_REQUEST_CONTEXT yang diteruskan driver miniport ke ScsiPortWmiDispatchFunction.
[in] GuidIndex
Menentukan blok data menurut indeksnya ke dalam daftar GUID dalam struktur SCSI_WMILIB_CONTEXT yang diteruskan driver miniport ke ScsiPortWmiDispatchFunction.
[in] InstanceIndex
Jika blok yang ditentukan oleh GuidIndex memiliki beberapa instans, InstanceIndex menentukan instans.
[in] DataItemId
Menentukan ID item data yang akan diatur.
[in] BufferSize
Menentukan ukuran dalam byte buffer di Buffer.
[in] Buffer
Menunjuk ke buffer yang berisi nilai baru untuk item data.
Nilai kembali
HwScsiWmiSetDataItem mengembalikan SRB_STATUS_PENDING jika permintaan tertunda, atau nilai status SRB bukan nol jika permintaan selesai. Nilai status SRB yang dikembalikan oleh rutinitas ini sama dengan apa yang diteruskan ke HwScsiWmiSetDataItem. Meskipun jenis data nilai yang dikembalikan adalah BOOLEAN, rutinitas HwScsiWmiSetDataItem benar-benar mengembalikan nilai status SRB.
Keterangan
Ketika driver miniport menerima SRB di mana anggota Fungsi diatur ke SRB_FUNCTION_WMI, ia memanggil ScsiPortWmiDispatchFunction dengan pointer ke struktur SCSI_WMILIB_CONTEXT yang diinisialisasi dan MinorFunction diatur ke Srb-WmiSubFunction>. Driver port SCSI memanggil rutinitas HwScsiWmiSetDataItem driver miniport jika MinorFunction menunjukkan permintaan untuk mengubah item dalam instans blok data.
Jika driver miniport tidak menerapkan rutinitas HwScsiWmiSetDataItem , driver miniport harus mengatur SetWmiDataItem ke NULL di SCSI_WMILIB_CONTEXT driver miniport lolos ke ScsiPortWmiDispatchFunction. Dalam keadaan ini, driver port akan mengembalikan SRB_STATUS_ERROR ke pemanggil.
Jika permintaan tidak tertunda, driver miniport harus memanggil ScsiPortWmiPostProcess dalam panggilan balik HwScsiWmiSetDataItem . Jika tidak, driver miniport harus memanggil ScsiPortWmiPostProcess ketika permintaan benar-benar selesai. Driver miniport harus memanggil ScsiPortWmiPostProcess dengan nilai SrbStatus yang sesuai.
Jika item bersifat baca-saja, driver miniport memanggil ScsiPortWmiPostProcess dengan SRB_STATUS_ERROR. Jika tidak, driver miniport mengubah item dan memanggil ScsiPortWmiPostProcess dengan SRB_STATUS_SUCCESS.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | scsiwmi.h (termasuk Scsiwmi.h) |
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk