struktur CHANGER_ELEMENT_STATUS (ntddchgr.h)

Rutinitas ChangerGetElementStatus mengembalikan informasi status dalam struktur ini.

Sintaks

typedef struct _CHANGER_ELEMENT_STATUS {
  CHANGER_ELEMENT Element;
  CHANGER_ELEMENT SrcElementAddress;
  ULONG           Flags;
  ULONG           ExceptionCode;
  UCHAR           TargetId;
  UCHAR           Lun;
  USHORT          Reserved;
  UCHAR           PrimaryVolumeID[MAX_VOLUME_ID_SIZE];
  UCHAR           AlternateVolumeID[MAX_VOLUME_ID_SIZE];
} CHANGER_ELEMENT_STATUS, *PCHANGER_ELEMENT_STATUS;

Anggota

Element

Menentukan elemen jenis CHANGER_ELEMENT yang dirujuk oleh struktur ini.

SrcElementAddress

Menentukan elemen jenis CHANGER_ELEMENT dari mana media saat ini dalam elemen ini baru-baru ini dipindahkan. Anggota ini hanya valid jika ELEMENT_STATUS_SVALID juga diatur dalam Bendera. Nilai ini harus merupakan offset berbasis nol dari nilai unik perangkat.

Flags

Menunjukkan status elemen , yang bisa menjadi satu atau beberapa nilai berikut.

ELEMENT_STATUS_FULL

Elemen berisi sepotong media. Bendera ini valid jika ElementType di anggota Elemen adalah ChangerDrive, ChangerSlot, atau ChangerTransport. Jika ElementType adalah ChangerIEPort, bendera ini hanya valid jika CHANGER_REPORT_IEPORT_STATE juga diatur dalam Fitur0 GET_CHANGER_PARAMETERS.

ELEMENT_STATUS_IMPEXP

Media dalam elemen ini ditempatkan di sana oleh operator. Bendera ini hanya valid jika ElementType di anggota Elemen adalah ChangerIEPort.

ELEMENT_STATUS_EXCEPT

Elemen ini dalam keadaan abnormal. Periksa anggota ExceptionCode untuk informasi selengkapnya.

ELEMENT_STATUS_ACCESS

Elemen transportasi pengubah dapat mengakses bagian media dalam elemen ini. Driver miniclass menghapus bendera ini untuk menunjukkan bahwa media tidak dapat diakses karena salah satu alasan berikut: Jika ElementType dalam anggota Elemen adalah ChangerSlot, slot tidak ada di pengubah (misalnya, majalah yang berisi slot telah dihapus secara fisik). Jika ElementType adalah ChangerDrive, drive rusak atau telah dihapus. Jika ElementType adalah ChangerIEPort, IEport diperluas.

ELEMENT_STATUS_EXENAB

Elemen ini mendukung ekspor media melalui IEport pengubah.

ELEMENT_STATUS_INENAB

Elemen ini mendukung impor media melalui IEport pengubah.

ELEMENT_STATUS_LUN_VALID

Nomor perangkat di anggota Lun valid. Bendera ini hanya valid jika ElementType di anggota Elemen adalah ChangerDrive.

ELEMENT_STATUS_ID_VALID

ID target SCSI di anggota TargetID valid. Bendera ini hanya valid jika ElementType di anggota Elemen adalah ChangerDrive.

ELEMENT_STATUS_NOT_BUS

Drive di alamat yang ditunjukkan oleh Lun dan TargetID berada di bus SCSI yang berbeda dari changer itu sendiri.

ELEMENT_STATUS_INVERT

Media dalam elemen dibalik. Bendera ini hanya valid jika bendera ELEMENT_STATUS_SVALID juga diatur.

ELEMENT_STATUS_SVALID

Anggota SourceElement dan bendera ELEMENT_STATUS_INVERT keduanya valid.

ELEMENT_STATUS_PVOLTAG

Informasi volume utama di anggota PrimaryVolumeID valid.

ELEMENT_STATUS_AVOLTAG

Informasi volume alternatif di anggota AlternateVolumeID valid.

ExceptionCode

Menunjukkan bahwa elemen dalam keadaan abnormal. Anggota ini hanya valid jika ELEMENT_STATUS_EXCEPT diatur dalam Bendera. ExceptionCode dapat diatur ke salah satu nilai berikut.

ERROR_LABEL_UNREADABLE

Pembaca kode batang pengubah tidak dapat membaca label kode batang pada bagian media dalam elemen ini, karena media hilang, rusak, tidak diposisikan dengan benar, atau terbalik.

ERROR_LABEL_QUESTIONABLE

Label mungkin tidak valid karena kondisi perhatian unit.

ERROR_SLOT_NOT_PRESENT

Slot di alamat elemen ini saat ini tidak diinstal di pengubah. Driver miniclass menetapkan kode ini untuk setiap slot di majalah yang dapat dilepas untuk menunjukkan bahwa majalah telah dihapus.

ERROR_DRIVE_NOT_INSTALLED

Drive di alamat elemen ini tidak ada. Jika pengubah dapat terus beroperasi tanpa drive, driver miniclass-nya akan diatur ERROR_DRIVE_NOT_INSTALLED untuk drive.

ERROR_TRAY_MALFUNCTION

Drive pada alamat elemen ini memiliki baki yang harus diperluas untuk memuat atau menghapus media, dan baki tidak diperluas sesuai kebutuhan.

ERROR_UNHANDLED_ERROR

Kondisi kesalahan tidak diketahui.

TargetId

Menentukan ID target SCSI drive di alamat elemen ini untuk pengubah SCSI. Anggota ini hanya valid jika ElementType di anggota Elemen adalah ChangerDrive dan ELEMENT_STATUS_ID_VALID diatur dalam Bendera.

Lun

Menentukan nomor perangkat SCSI drive pada alamat elemen ini. Anggota ini hanya valid jika ElementType di anggota Elemen adalah ChangerDrive dan ELEMENT_STATUS_LUN_VALID diatur dalam Bendera.

Reserved

Disiapkan untuk penggunaan masa mendatang. Nilai anggota ini harus nol.

PrimaryVolumeID[MAX_VOLUME_ID_SIZE]

Menentukan pengidentifikasi volume utama untuk media. Jika pengubah mendukung pembaca kode batang dan pembaca diinstal (seperti yang ditunjukkan oleh CHANGER_BAR_CODE_SCANNER_INSTALLED di Fitur0 GET_CHANGER_PARAMETERS), driver miniclass harus mengatur PrimaryVolumeID ke kode batang media. Jika pengubah tidak mendukung pembaca kode batang, driver miniclass harus mengatur PrimaryVolumeID ke nilai yang sebelumnya ditetapkan ke media menggunakan rutinitas ChangerQueryVolumeTags dengan tindakan ASSERT_PRIMARY atau REPLACE_PRIMARY. Anggota ini hanya valid jika ELEMENT_STATUS_PVOLTAG juga diatur dalam Bendera. Jika pengidentifikasi volume hilang atau tidak dapat dibaca, driver miniclass harus menghapus bendera ini dan mengatur status kesalahan yang sesuai. Pengidentifikasi ini tidak boleh lebih besar dari MAX_VOLUME_ID_SIZE byte.

AlternateVolumeID[MAX_VOLUME_ID_SIZE]

Menentukan identifikasi volume alternatif untuk media. Anggota ini hanya berlaku untuk media dua sisi, dan berkaitan dengan ID sisi terbalik. Ini tidak pernah mewakili kode batang. Driver miniclass harus mengatur AlternateVolumeID ke nilai yang sebelumnya ditetapkan ke media menggunakan rutinitas ChangerQueryVolumeTags dengan tindakan ASSERT_ALTERNATE atau REPLACE_ALTERNATE. Pengidentifikasi tidak boleh lebih besar dari MAX_VOLUME_ID_SIZE byte dan hanya valid jika ELEMENT_STATUS_AVOLTAG juga diatur dalam Bendera.

Keterangan

Untuk sebagian besar jenis elemen, driver miniclass changer menggunakan CHANGER_ELEMENT_STATUS untuk melaporkan status elemen yang ditentukan ke driver kelas changer. Namun, beberapa elemen jenis ChangerDrive mengembalikan data informasi produk. Jika perangkat memberikan informasi produk, driver miniclass akan melaporkan data status elemen dalam struktur jenis CHANGER_ELEMENT_STATUS_EX alih-alih menggunakan CHANGER_ELEMENT_STATUS. Driver miniclass menunjukkan bahwa informasi produk ada dengan mengatur ELEMENT_STATUS_PRODUCT_DATA di anggota Bendera struktur.

Persyaratan

Persyaratan Nilai
Header ntddchgr.h

Lihat juga

CHANGER_ELEMENT

CHANGER_ELEMENT_STATUS_EX

ChangerGetElementStatus

ChangerQueryVolumeTags

IOCTL_CHANGER_GET_ELEMENT_STATUS