Partilhar via


Tratamento de erros MCI

[O recurso associado a esta página, MCI, é um recurso legado. Foi substituído por MediaPlayer. MediaPlayer foi otimizado para Windows 10 e Windows 11. A Microsoft recomenda vivamente que o novo código utilize MediaPlayer em vez de MCI, sempre que possível. A Microsoft sugere que o código existente que usa as APIs herdadas seja reescrito para usar as novas APIs, se possível.]

Você deve sempre verificar o valor de retorno da função mciSendCommand. Se isso indicar um erro, você pode usar mciGetErrorString para obter uma descrição textual do erro.

O exemplo a seguir passa o código de erro MCI especificado por dwError para mciGetErrorStringe, em seguida, exibe a descrição do erro textual resultante usando a função 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);
    }
}
 

Observação

Para interpretar você mesmo um valor de retorno de erro mciSendCommand, mascare a palavra de ordem alta (a palavra baixa contém o código de erro). Se você passar o valor de retorno de erro para mciGetErrorString, no entanto, você deve passar o valor de palavra dupla inteiro.