Fungsi ChangerInitializeElementStatus (mcd.h)

ChangerInitializeElementStatus menangani aspek khusus perangkat dari IRP kontrol perangkat dengan kode IOCTL IOCTL_CHANGER_INITIALIZE_ELEMENT_STATUS.

Sintaks

NTSTATUS ChangerInitializeElementStatus(
  [in] PDEVICE_OBJECT DeviceObject,
  [in] PIRP           Irp
);

Parameter

[in] DeviceObject

Arahkan ke objek perangkat yang mewakili pengubah.

[in] Irp

Arahkan ke IRP.

Nilai kembali

ChangerInitializeElementStatus mengembalikan status yang dikembalikan oleh driver port sistem atau salah satu nilai berikut:

STATUS_SUCCESS

STATUS_INVALID_PARAMETER

STATUS_INSUFFICIENT_RESOURCES

Jika pengubah tidak mendukung inisialisasi rentang elemen dari jenis tertentu dan ChangerInitializeElementStatus dipanggil dengan jenis elemen selain AllElements, maka akan mengembalikan STATUS_INVALID_PARAMETER.

Keterangan

Rutinitas ini diperlukan.

ChangerInitializeElementStatus memperbarui memori internal pengubah dengan informasi saat ini tentang elemennya.

Driver kelas pengubah memeriksa panjang buffer input di lokasi tumpukan I/O sebelum memanggil ChangerInitializeElementStatus.

Irp-SystemBuffer> menunjuk ke struktur CHANGER_INITIALIZE_ELEMENT_STATUS sebagai parameter input yang menunjukkan elemen untuk menginisialisasi status dan apakah akan menginisialisasi status elemen dengan data yang diperoleh dari label kode batang.

Untuk pengubah SCSI, ChangerInitializeElementStatus membangun SRB dengan CDB untuk menginisialisasi status elemen, menerjemahkan alamat elemen berbasis nol ke alamat khusus perangkat, dan mengirim SRB ke driver port sistem.

ChangerInitializeElementStatus mengatur bidang Informasi di blok status I/O ke sizeof(CHANGER_INITIALIZE_ELEMENT_STATUS) sebelum kembali ke driver kelas pengubah.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header mcd.h (termasuk Mcd.h, Ntddchgr.h)
IRQL PASSIVE_LEVEL

Lihat juga

CHANGER_ELEMENT_LIST

CHANGER_INITIALIZE_ELEMENT_STATUS

ChangerGetElementStatus