共用方式為


一般儲存體 I/O 控制程式碼

不同種類的儲存體裝置通常需要相同的服務。 本節不會複製為每個裝置類型提供這些服務的 IOCTL 要求,而是定義一組標準服務,以及儲存體裝置經常需要隨附的裝置控制代碼。 此處定義的 I/O 控制項代碼格式為 IOCTL_STORAGE_XXX,且會取代deviceType為 DISK、TAPE 或 CDROM 的IOCTL_DeviceType_XXX控制項代碼。 例如, IOCTL_STORAGE_RESERVE 會取代 IOCTL_DISK_RESERVEIOCTL_TAPE_RESERVEIOCTL_CDROM_RESERVE。 IOCTL_STORAGE_XXX 控制程式代碼具有與先前磁片、磁帶和 CD-ROM 代碼相同的函式程式碼、傳輸方法和必要存取值。 唯一的差異是裝置類型。

儲存體類別驅動程式會起始其中一些要求,但通常是執行此動作的應用程式。 儲存類別驅動程式必須根據儲存裝置的類型來處理部分或全部的要求。 如果沒有任何儲存體類別驅動程式存在,應用程式可能會直接對埠驅動程式提出要求。

IOCTL 描述
IOCTL_STORAGE_BREAK_RESER加值稅ION 中斷磁片保留。
IOCTL_STORAGE_CHECK_VERIFY 判斷媒體是否已在呼叫端開啟的卸載式媒體裝置上變更,以進行讀取或寫入存取。
IOCTL_STORAGE_CHECK_VERIFY2 判斷媒體是否已在卸載式媒體裝置上變更 - 呼叫端已使用 FILE_READ_ATTRIBUTES開啟。
IOCTL_STORAGE_DEVICE_POWER_CAP 指定存放裝置的最大運作耗電量等級。
IOCTL_STORAGE_EJECT_MEDIA 如果裝置支援退出功能,會導致裝置退出媒體。
IOCTL_STORAGE_EJECTION_CONTROL 鎖定裝置以防止移除媒體。
IOCTL_STORAGE_FIND_NEW_DEVICES 判斷驅動程式支援的另一部裝置是否已連線到 I/O 匯流排,可能是因為系統開機,還是驅動程式上次處理此要求。
IOCTL_STORAGE_FIRMWARE_ACTI加值稅E 在存放裝置上啟動韌體映射。
IOCTL_STORAGE_FIRMWARE_DOWNLOAD 將韌體映射下載到存放裝置,但不會加以啟用。
IOCTL_STORAGE_FIRMWARE_GET_INFO 查詢儲存體裝置以取得詳細的韌體資訊。
IOCTL_STORAGE_GET_DEVICE_NUMBER 傳回 STORAGE_DEVICE_NUMBER 結構,其中包含可分割裝置的FILE_DEVICE_XXX類型、裝置編號,以及針對可分割裝置,驅動程式在啟動裝置時指派給裝置的資料分割編號。
IOCTL_STORAGE_GET_HOTPLUG_INFO 擷取指定裝置的 hotplug 組態。
IOCTL_STORAGE_GET_LB_PROVISIONING_MAP_RESOURCES IOCTL_STORAGE_GET_LB_PROVISIONING_MAP_RESOURCES要求會傳送至儲存體類別驅動程式,以判斷存放裝置上可用的和已使用的對應資源。
IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER 查詢 USB 一般父驅動程式以取得 USB 裝置的序號。
IOCTL_STORAGE_GET_MEDIA_TYPES 傳回磁片磁碟機幾何的相關資訊。
IOCTL_STORAGE_GET_MEDIA_TYPES_EX 傳回裝置所支援之媒體類型的相關資訊。
IOCTL_STORAGE_GET_PHYSICAL_ELEMENT_STATUS IOCTL_STORAGE_GET_PHYSICAL_ELEMENT_STATUS控制程式代碼會查詢,並從裝置傳回實體專案狀態。
IOCTL_STORAGE_LOAD_MEDIA 導致媒體載入呼叫端已開啟的裝置以進行讀取或寫入存取。
IOCTL_STORAGE_LOAD_MEDIA2 導致媒體載入呼叫端已開啟 的裝置FILE_READ_ATTRIBUTES
IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES 要求是用來將管理資料集屬性要求傳送至儲存體裝置。
IOCTL_STORAGE_MCN_CONTROL 在卸載式媒體裝置上暫時啟用或停用自訂 PnP 事件的傳遞 GUID_IO_MEDIA_ARRIVALGUID_IO_MEDIA_REMOVAL
IOCTL_STORAGE_MEDIA_REMOVAL 鎖定裝置以防止移除媒體。
IOCTL_STORAGE_PERSISTENT_RESERVE_IN 泛型儲存類別驅動程式 (classpnp.sys) 會公開 I/O 控制項 (IOCTL) 介面,以發出永續性保留 In 命令。
IOCTL_STORAGE_PERSISTENT_RESERVE_OUT 泛型儲存類別驅動程式 (classpnp.sys) 會公開 I/O 控制項 (IOCTL) 介面,以發出 Persistent Reserve Out 命令。
IOCTL_STORAGE_PREDICT_FAILURE 輪詢裝置失敗的預測。
IOCTL_STORAGE_PROTOCOL_COMMAND 驅動程式可以使用 IOCTL_STORAGE_PROTOCOL_COMMAND 將廠商特定的命令傳遞至存放裝置
IOCTL_STORAGE_QUERY_PROPERTY 驅動程式可以使用 IOCTL_STORAGE_QUERY_PROPERTY 傳回存放裝置或介面卡的屬性。
IOCTL_STORAGE_READ_CAPACITY IOCTL_STORAGE_READ_CAPACITY要求會傳回目標存放裝置的讀取容量資訊。
IOCTL_STORAGE_REINITIALIZE_MEDIA 驅動程式可以使用 IOCTL_STORAGE_REINITIALIZE_MEDIA 控制項程式碼來重新初始化/清除裝置。
IOCTL_STORAGE_RELEASE 釋放先前保留給匯流排上呼叫端的獨佔用途的裝置,該匯流排支援多個啟動器,以及保留裝置的概念,例如 SCSI 匯流排。
IOCTL_STORAGE_RESERVE 宣告裝置,以在支援多個啟動器及保留裝置的概念的匯流排上獨佔使用呼叫端,例如 SCSI 匯流排。
IOCTL_STORAGE_RESET_BUS 重設 I/O 匯流排,並間接地重設匯流排上的每部裝置。
IOCTL_STORAGE_RESET_DEVICE 可能的話,重設非 SCSI 儲存裝置,而不會影響匯流排上的其他裝置。
IOCTL_STORAGE_SET_HOTPLUG_INFO 設定指定裝置的 hotplug 組態。
IOCTL_STORAGE_SET_PROPERTY 指出變更屬性的要求是否成功或造成錯誤。
IOCTL_STORAGE_SET_TEMPERATURE_THRESHOLD 當硬體) 支援時,驅動程式可以使用 IOCTL_STORAGE_SET_TEMPERATURE_THRESHOLD 來設定存放裝置 (的溫度閾值。