http://digilander.libero.it/Cenati

Suonare con Windows

home | e-mail e contatti | Introduzione al sito | Cosa e' e come imparare VbScript

 

 

 

 

 

Come far eseguire dei suoni o delle canzoni da Windows

VbScript non è nato per stupirvi con una gestione avanzata delle possibilità sonore del PC. Anzi, non ha nessun comando per produrre musica né tantomeno semplici suoni.

Tuttavia uno Script (un copione di una rappresentazione, in inglese) si può avvalere di bravi attori che possono fare questo ed altro.

Esistono quindi diversi modi per far produrre suoni a Windows, pur utilizzando le normali applicazioni installate. Senza quindi la necessità di programmi dedicati.

La prima usa il programma sndrec32. Se lo lanciate, vedrete che è il noto "registratore di suoni" con il quale si possono registrare brevi brani e sentirli alla rovescia, accelerati o con l'eco. Avviando questo programma dalla linea di comando ed aggiungendo gli switch /play e /close lo si forza a suonare il brano wav passato come parametro e poi a chiudersi. L'esempio qui sotto suona il "TADA" di windows, ma nella cartella "windows\media" ci sono molti altri suoni disponibili.

Altri possono essere creati a piacimento, magari registrando una parola con il sndrec32, ma avendo già a disposizione questi suoni su ogni computer (specialmente se scrivete programmi per una rete di macchine tutte con la medesima configurazione) è facile utilizzarli per arricchire di effetti speciali i vostri script

Per avviare l'applicazione esterna è necessario istanziare preventivamente (lo vedete nell'esempio) l'oggetto wscript.shell.

Il secondo esempio mostra come avviare il media player. La classe OCX.7 funziona per le versioni dalla 7 alla 9. Oltre la nove non lo so, ma non credo che ci siano problemi. Eventualmente segnalatemelo.

Il brano da eseguire può essere in formato mp3 oppure in formato mid. Oppure qualsiasi altro formato che il mediaplayer può eseguire.

La musica continua fino a quando il programma non viene terminato. E' per questo che ho messo un'attesa di venti secondi (20.000 millisecondi).

Il terzo esempio usa il command prompt per eseguire un chr(7) (Bell). E' all'interno di una sub che permette di eseguire una sequenza di bip separati da un certo ritardo in decimi di secondo.

Quindi con beep(10,5) si produrranno dieci bip separati, ciascuno, da cinque decimi di secondo di ritardo (mezzo secondo).

Se quindi volete creare una colonna sonora ai vostri script, suggerisco l'uso del mediaplayer. Magari con un leggero file MID. Se invece volete fare con semplicità un effetto molto speciale, usate il sndrec32 e pescate dal corredo di windows un suono che vi piace. Il "notify", ad esempio, oppure il "chimes".

 

'*** 
' http://digilander.libero.it/Cenati
' Codice vbs liberamente utilizzabile citando il sito.
Set oShell = CreateObject("Wscript.Shell")

' Suona un file WAV 
sWaveFile = "%windir%\media\tada.wav"
oShell.Run "sndrec32 /play /close """ & sWaveFile & """",0,True


' Esegue un brano Mp3
Set Player = createobject("Wmplayer.OCX.7") 
Player.url =  "C:\BOB.MP3"  
wscript.sleep 20000
msgbox "fine programma"


Beep 1,0 'Esegue un Bip

Sub Beep (n,wait)
   For i = 1 To n
      oShell.Run "%comspec% /c echo "&Chr(7), 0, False
      Wscript.Sleep wait*100
   Next
End Sub
'*** 

Cenati Giovanni

 

 
 

© Cenati Giovanni 2004/2010 - http://digilander.libero.it/Cenati - Reventlov at Katamail com

home | e-mail e contatti | Introduzione al sito | Cosa e' e come imparare VbScript