處理 MCI 錯誤
[與此頁面相關聯的功能 MCI是舊版功能。 MediaPlayer已取代它。 MediaPlayer 已針對 Windows 10 和 Windows 11 優化。 Microsoft強烈建議新程式代碼盡可能使用 MediaPlayer,而不是 MCI。 Microsoft建議使用舊版 API 的現有程式代碼,盡可能改寫成使用新的 API。]
您應該一律檢查 mciSendCommand 函式的傳回值。 如果指出錯誤,您可以使用 mciGetErrorString 來取得錯誤的文字描述。
下列範例會將 dwError 所指定的 MCI 錯誤碼 傳遞至 mciGetErrorString,然後使用 messageBox 函式顯示產生的文字錯誤描述。
// Use mciGetErrorString to get a textual description of an MCI error.
// Display the error description using MessageBox.
void showError(DWORD dwError)
{
char szErrorBuf[MAXERRORLENGTH];
MessageBeep(MB_ICONEXCLAMATION);
if(mciGetErrorString(dwError, (LPSTR) szErrorBuf, MAXERRORLENGTH))
{
MessageBox(hMainWnd, szErrorBuf, "MCI Error",
MB_ICONEXCLAMATION);
}
else
{
MessageBox(hMainWnd, "Unknown Error", "MCI Error",
MB_ICONEXCLAMATION);
}
}
注意
若要自行解譯 mciSendCommand 的錯誤返回值,請遮罩高位字(低位字包含錯誤代碼)。 如果您將錯誤傳回值傳遞至 mciGetErrorString,則您必須傳遞完整的雙字值。