共用方式為


ChangerMoveMedium 函式 (mcd.h)

ChangerMoveMedium 使用 IOCTL 程式代碼處理裝置控制 IRP 的裝置特定層面 IOCTL_CHANGER_MOVE_MEDIUM

語法

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

參數

[in] DeviceObject

代表變更器的裝置物件的指標。

[in] Irp

IRP 的指標。

傳回值

ChangerMoveMedium 會傳回系統埠驅動程式傳回的狀態,或下列其中一個值:

STATUS_SUCCESS

STATUS_DESTINATION_ELEMENT_FULL

STATUS_INVALID_ELEMENT_ADDRESS

STATUS_INVALID_DEVICE_REQUEST

STATUS_INVALID_PARAMETER

STATUS_INSUFFICIENT_RESOURCES

STATUS_SOURCE_ELEMENT_EMPTY

言論

這是必要例程。

ChangerMoveMedium 將一個媒體從一個元素移到另一個元素。

changer 類別驅動程式會在呼叫 ChangerMoveMedium 之前,先檢查 I/O 堆棧位置中的輸入緩衝區長度。 Irp->SystemBuffer 指向表示傳輸元素、來源、目的地,以及是否要翻轉媒體的 CHANGER_MOVE_MEDIUM 結構。

ChangerMoveMedium 會先驗證傳輸、來源和目的地元素位址是否有效,然後將以零起始的專案位址轉換為裝置特定位址。 然後,它會建置具有CDB的SRB,以行動媒體片段,並將其傳送至系統埠驅動程式。

ChangerMoveMedium 會將 I/O 狀態區塊中的 [資訊] 字段設定為 sizeof(CHANGER_MOVE_MEDIUM),然後再返回 changer 類別驅動程式。

要求

要求 價值
目標平臺 桌面
標頭 mcd.h (包括 Mcd.h、 Ntddchgr.h)
IRQL PASSIVE_LEVEL

另請參閱

IOCTL_CHANGER_MOVE_MEDIUM

CHANGER_ELEMENT

CHANGER_MOVE_MEDIUM

ChangerExchangeMedium