Esses dias precisei fazer uma modificação no sistema no qual efetuaria um sinal sonoro para alertar o usuário sobre alguma entrada incorreta de dados.
O problema principal é: a cada notificação de erro ou dados inválidos o sistema irá emitir um som que alertará o usuário que algo está errado.
Primeiramente vamos criar uma função de usuário simples com o nome alarme() e seu retorno será uma variável - lRet - do tipo booleano. Caso alguma inconsistência seja encontrada o alerta será emitido.
user function alarme local lRet := .T. local nQtd := 3 local cDirCli := "C:\\Media\\" if nQtd = 3 shellExecute("Open", cDirCli+"sound.bat", "", "", 0) msgInfo("Qtd = 3") else shellExecute("Open", cDirCli+"sound_2.bat", "", "", 0) msgInfo("Qtd <> 3") lRet := .F. endIf return lRet
Além da variável de retorno e outra variável de teste (nQtd), temos uma variável que nos mostra o diretório onde se encontra os arquivos de áudio que usaremos em nossa rotina.
Utilizaremos o método shellExecute() para que possamos chamar nosso arquivo .bat que ficará responsável por abrir e executar o áudio.
Vejamos nosso arquivo .bat:
start wmplayer /play /close c:\Media\sound136.wav timeout /t 1 TASKKILL /IM wmplayer.exe
Na primeira linha temos o comando start que inicia o player wmplayer - em nosso caso será o windows media player - então usamos os comandos /play e /close e informamos o diretório do arquivo de áudio a ser executado.
Usei também o comando timeout com o tempo (/t) de 1 segundo. Após esse tempo o comando TASKKILL irá encerrar a tarefa do windows media player.
É isso ai galera! Espero que tenho curtido essa dica.
Até mais!
;)
Nenhum comentário:
Postar um comentário