CHANGER_ELEMENT_STATUS_EX結構 (winioctl.h)

表示指定專案的狀態。

語法

typedef struct _CHANGER_ELEMENT_STATUS_EX {
  CHANGER_ELEMENT Element;
  CHANGER_ELEMENT SrcElementAddress;
  DWORD           Flags;
  DWORD           ExceptionCode;
  BYTE            TargetId;
  BYTE            Lun;
  WORD            Reserved;
  BYTE            PrimaryVolumeID[MAX_VOLUME_ID_SIZE];
  BYTE            AlternateVolumeID[MAX_VOLUME_ID_SIZE];
  BYTE            VendorIdentification[VENDOR_ID_LENGTH];
  BYTE            ProductIdentification[PRODUCT_ID_LENGTH];
  BYTE            SerialNumber[SERIAL_NUMBER_LENGTH];
} CHANGER_ELEMENT_STATUS_EX, *PCHANGER_ELEMENT_STATUS_EX;

成員

Element

CHANGER_ELEMENT結構,表示這個 結構所參考的專案。

SrcElementAddress

CHANGER_ELEMENT結構,表示目前在此元素中媒體最近移動的 元素。

只有當 Flags 成員包含ELEMENT_STATUS_SVALID時,這個成員才有效。

Flags

專案狀態。 這個成員可以是下列一或多個值。

意義
ELEMENT_STATUS_ACCESS
0x00000008
變更器的傳輸專案可以存取這個專案中的媒體片段。 媒體在下列情況下無法存取: (1) 如果元素類型是 ChangerSlot,則位置不會出現在變更器 (例如,包含該位置的雜誌已實際移除) 。 (2) 如果元素類型為 ChangerDrive,磁片磁碟機會中斷或已移除。 (3) 如果元素類型為 ChangerIEPort,則會擴充變更器的插入/退出埠。
ELEMENT_STATUS_AVOLTAG
0x20000000
AlternateVolumeID成員中的替代磁片區資訊有效。
ELEMENT_STATUS_EXCEPT
0x00000004
元素處於異常狀態。 如需詳細資訊,請參閱 ExceptionCode 成員。
ELEMENT_STATUS_EXENAB
0x00000010
元素支援透過變更器的插入/退出埠匯出媒體。
ELEMENT_STATUS_FULL
0x00000001
元素包含一段媒體。

請注意,只有當專案類型為 ChangerDrive、ChangerSlot 或 ChangerTransport 時,這個值才有效。 如果專案類型為 ChangerIEPort,只有當 GET_CHANGER_PARAMETERS 的 Features0 成員包含 CHANGER_REPORT_IEPORT_STATE 時,這個值才有效。

ELEMENT_STATUS_ID_VALID
0x00002000
TargetID成員中的 SCSI 目標識別碼有效。

只有在專案類型為 ChangerDrive 時,這個值才有效。

ELEMENT_STATUS_IMPEXP
0x00000002
此元素中的媒體是由 運算子放置於該處。

只有當專案類型為 ChangerIEPort 時,這個值才有效。

ELEMENT_STATUS_INENAB
0x00000020
元素支援透過變更器的插入/退出埠匯入媒體。
ELEMENT_STATUS_INVERT
0x00400000
元素中的媒體已翻轉。

只有在也包含ELEMENT_STATUS_SVALID時,這個值才有效。

ELEMENT_STATUS_LUN_VALID
0x00001000
Lun成員中的邏輯單元編號有效。 只有在專案類型為 ChangerDrive 時,這個值才有效。
ELEMENT_STATUS_NOT_BUS
0x00008000
LunTargetID所指示位址的磁片磁碟機位於與變更器本身不同的 SCSI 匯流排上。
ELEMENT_STATUS_PRODUCT_DATA
0x00000040
SerialNumber成員中的序號有效。
ELEMENT_STATUS_PVOLTAG
0x10000000
PrimaryVolumeID成員中的主要磁片區資訊有效。
ELEMENT_STATUS_SVALID
0x00800000
SourceElement成員和ELEMENT_STATUS_INVERT都是有效的。

ExceptionCode

例外狀況程式碼,表示專案處於異常狀態。 只有當 Flags 成員包含ELEMENT_STATUS_EXCEPT時,這個成員才有效。 這個成員可以是下列其中一個值。

意義
ERROR_DRIVE_NOT_INSTALLED
0x00000008
此專案位址的磁片磁碟機不存在。
ERROR_INIT_STATUS_NEEDED
0x00000011
需要 Initialize Element Status 命令。
ERROR_LABEL_QUESTIONABLE
0x00000002
標籤可能因為單位注意條件而無效。
ERROR_LABEL_UNREADABLE
0x00000001
變更器的條碼讀取器無法讀取此元素中媒體片段上的條碼標籤,因為媒體遺失、損壞、位置不正確或倒置。
ERROR_SLOT_NOT_PRESENT
0x00000004
此專案位址的位置目前未安裝在變更器中。 卸載式雜誌中的每個位置都會回報不存在,表示已移除該雜誌。
ERROR_TRAY_MALFUNCTION
0x00000010
此專案位址的磁片磁碟機有一個必須擴充才能載入或移除媒體的匣,而匣不會視需要擴充。
ERROR_UNHANDLED_ERROR
0xFFFFFFFF
未知的錯誤狀況。

TargetId

針對 SCSI 變更器,指定此專案位址上磁片磁碟機的 SCSI 目標識別碼。 只有當Element 結構的 ElementType成員是 ChangerDrive 且Flags成員包含ELEMENT_STATUS_ID_VALID時,這個成員才有效。

Lun

位於這個專案位址之磁片磁碟機的 SCSI 邏輯單元編號。 只有當Element結構的ElementType成員是 ChangerDrive 且Flags成員包含ELEMENT_STATUS_LUN_VALID時,這個成員才有效。

Reserved

保留供未來使用。 這個成員的值必須是零。

PrimaryVolumeID[MAX_VOLUME_ID_SIZE]

媒體的主要磁片區識別碼。 如果變更程式支援條碼讀取器,而且讀取器會安裝 (,如 GET_CHANGER_PARAMETERS ) 之 Features0成員中的CHANGER_BAR_CODE_SCANNER_INSTALLED所指出,PrimaryVolumeID是媒體的條碼。 如果變更器不支援條碼讀取器, PrimaryVolumeID 是先前指派給媒體的值。

只有當 Flags 成員包含ELEMENT_STATUS_PVOLTAG時,這個成員才有效。

如果磁片區識別碼遺失或無法讀取,則會清除此成員。

AlternateVolumeID[MAX_VOLUME_ID_SIZE]

媒體的替代磁片區識別。 此成員僅適用于雙面媒體,且與反轉端的識別碼有關。 它永遠不會代表條碼。

只有當 Flags 成員包含ELEMENT_STATUS_AVOLTAG時,這個成員才有效。

VendorIdentification[VENDOR_ID_LENGTH]

廠商識別碼。

ProductIdentification[PRODUCT_ID_LENGTH]

產品識別碼。

SerialNumber[SERIAL_NUMBER_LENGTH]

磁片磁碟機的序號。

規格需求

   
最低支援的用戶端 Windows XP
最低支援的伺服器 Windows Server 2003
標頭 winioctl.h (包含 Windows.h)

另請參閱

CHANGER_ELEMENT

IOCTL_CHANGER_GET_ELEMENT_STATUS