MCI 命令的分類
[與此頁面 MCI相關聯的功能是舊版功能。 它已被 MediaPlayer 取代。 MediaPlayer已針對Windows 10和Windows 11進行優化。 Microsoft 強烈建議新程式碼盡可能使用 MediaPlayer 而非 MCI。 Microsoft 建議盡可能重寫使用舊版 API 的現有程式碼,以使用新的 API。]
MCI 定義四個命令分類:系統、必要、基本和擴充。 下列清單描述這些命令分類:
- 系統命令 會直接由 MCI 處理,而不是由驅動程式處理。
- 驅動程式會處理必要的命令。 所有 MCI 驅動程式都必須支援必要的命令和旗標。
- 某些裝置會使用基本命令 (或選擇性命令) 。 如果裝置支援基本命令,它必須支援該命令的一組已定義旗標。
- 擴充命令 專屬於裝置類型或驅動程式。 擴充命令包括命令,例如放置 (MCI_PUT) ,以及數位視訊和重迭裝置類型的 (MCI_WHERE) 命令,以及現有命令的擴充功能 (,例如狀態 (MCI_STATUS MCI_STATUS) 命令) 。
雖然系統和必要命令是任何 MCI 驅動程式的最低命令集,但所有驅動程式都不支援基本和擴充命令。 您的應用程式一律可以使用系統和必要的命令及其旗標,但如果需要使用基本或擴充的命令或旗標,它應該先使用 (MCI_GETDEVCAPS) 命令來查詢驅動程式。 下列各節摘要說明每個類別中的特定命令。
系統命令
MCI 會直接處理下列系統命令,而不是將它們傳遞至 MCI 裝置。
String | 訊息 | 描述 |
---|---|---|
break | MCI_BREAK | 設定 MCI 裝置的中斷金鑰。 |
sysinfo | MCI_SYSINFO | 傳回 MCI 裝置的相關資訊。 |
必要命令
所有 MCI 裝置都支援下列必要命令。
String | 訊息 | 描述 |
---|---|---|
能力 | MCI_GETDEVCAPS | 取得裝置的功能。 |
關閉 | MCI_CLOSE | 關閉裝置。 |
資訊 | MCI_INFO | 從裝置取得文字資訊。 |
打開 | MCI_OPEN | 初始化裝置。 |
地位 | MCI_STATUS | 從裝置取得狀態資訊。 不需要此命令的某些旗標,因此也是基本命令。 |
裝置也必須支援必要命令的標準命令旗標集。
基本命令
下列清單摘要說明基本命令。 MCI 裝置使用這些命令是選擇性的。
String | 訊息 | 描述 |
---|---|---|
負荷 | MCI_LOAD | 從檔案載入資料。 |
暫停 | MCI_PAUSE | 停止播放。 您可以在目前的位置繼續播放或錄製。 |
玩 | MCI_PLAY | 開始傳輸輸出資料。 |
record | MCI_RECORD | 開始錄製輸入資料。 |
恢復 | MCI_RESUME | 繼續在暫停的裝置上播放或錄製。 |
救 | MCI_SAVE | 將資料儲存至磁片檔案。 |
尋求 | MCI_SEEK | 向前或向後搜尋。 |
設置 | MCI_SET | 設定裝置的作業狀態。 |
地位 | MCI 狀態 | 取得裝置的狀態資訊。 這也是必要的命令;由於部分旗標並非必要,因此也會列在這裡。 (選用專案支援使用線性媒體與可識別位置的裝置。) |
停止 | MCI_STOP | 停止播放。 |
如果驅動程式支援基本命令,它也必須支援命令的標準旗標集。
擴充命令
某些 MCI 裝置有其他命令,或將旗標新增至現有的命令。 雖然某些擴充的命令僅適用于特定設備磁碟機,但大部分都會套用至特定裝置類型的所有驅動程式。 例如, sequencer 裝置類型的命令集會擴充 set (MCI_SET) 命令,以新增 MIDI sequencers 所需的時間格式。
您不應該假設裝置支援擴充命令或旗標。 您可以使用 功能 (MCI_GETDEVCAPS) 命令來判斷是否支援特定功能,而且您的應用程式應該準備好處理「不支援的命令」或「不支援的函式」傳回值。
下列擴充命令適用于列出的裝置類型。
String | 訊息 | 裝置類型 | 描述 |
---|---|---|---|
配置 | MCI_CONFIGURE | digitalvideo | 顯示組態對話方塊。 |
提示 | MCI_CUE | digitalvideo、waveaudio | 準備播放或錄製。 |
刪除 | MCI_DELETE | waveaudio | 從媒體檔案中刪除資料區段。 |
escape | MCI_ESCAPE | videodisc | 將自訂資訊傳送至裝置。 |
凍結 | MCI_FREEZE | overlay | 停用畫面緩衝區的視訊擷取。 |
把 | MCI PUT | digitalvideo, 重迭 | 定義來源、目的地和框架視窗。 |
實現 | MCI_REALIZE | digitalvideo | 告知裝置選取並實現其調色盤到顯示視窗的裝置內容中。 |
setaudio | MCI_ SETAUDIO | digitalvideo | 設定視訊的音訊參數。 |
setvideo | MCI_ SETVIDEO | digitalvideo | 設定視訊參數。 |
信號 | MCI_SIGNAL | digitalvideo | 識別具有訊號的指定位置。 |
自 旋 | MCI_SPIN | videodisc | 啟動磁片旋轉,或停止光碟旋轉。 |
步 | MCI_STEP | digitalvideo, videodisc | 向前或反向播放一或多個畫面。 |
解凍 | MCI_UNFREEZE | overlay | 讓畫面緩衝區取得視訊資料。 |
更新 | MCI_UPDATE | digitalvideo | 將目前的畫面重新繪製到裝置內容中。 |
where | MCI WHERE | digitalvideo, 重迭 | 取得指定來源、目的地或框架區域的矩形。 |
視窗 | MCI_WINDOW | digitalvideo, 重迭 | 控制顯示視窗。 |