O sinalizador de espera

Os comandos MCI geralmente retornam ao usuário imediatamente, mesmo que leve 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 ao 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 tecla é 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".