Partilhar via


A bandeira de espera

[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.]

Os comandos MCI geralmente retornam ao usuário imediatamente, mesmo que demore vários minutos para concluir a ação iniciada pelo comando. Você pode usar o sinalizador "wait" (MCI_WAIT) para direcionar o dispositivo a aguardar até que a ação solicitada seja concluída antes de retornar o controle para o aplicativo.

Por exemplo, o seguinte comando play não retornará o controle para o aplicativo até que a reprodução seja concluída:

mciSendString("play mydevice from 0 to 100 wait", 
    lpszReturnString, lstrlen(lpszReturnString), NULL);

Observação

O usuário pode cancelar uma operação de espera pressionando uma tecla de interrupção. Por padrão, essa chave é CTRL+BREAK. Os aplicativos podem redefinir essa chave usando o comando break (MCI_BREAK). (MCI_BREAK usa a estrutura MCI_BREAK_PARMS.) Quando uma operação de espera é cancelada, o MCI tenta retornar o controle para o aplicativo sem interromper o comando associado ao sinalizador "wait".