Stap 6: PRATEN ~ de computer nu spreekt
Nu in VBScript!
--BEWERKEN--
De schakeloptie /f is toegevoegd om de inhoud van een bestand te lezen.
--BATCH--
af & setlocal enabledelayedexpansion ECHO instellen toespraak Wscript.CreateObject^("SAPI.spVoice"^) = > "talk.vbs"
als "% ~ 1" == "/"? (
ECHO.
ECHO TALK "Tekst" [Parameters]
ECHO.
echo tekst - de zin die u wenst te worden gesproken.
ECHO.
ECHO [Parameters]:
ECHO/f - lezen van de inhoud van een bestand. "Tekst" verandert in het bestandspad.
ECHO.
endlocal
Exit/b
)
tekst =
Als () [%2]==[/f]
Als bestaan "% ~ 1" ()
for /f "usebackq delims =" % in (%1) Stel tekst =! tekst! %
) anders ()
endlocal
Exit/b
)
)
Als [%2] == [] tekst instellen = % ~ 1
ECHO speech.speak "% van de tekst" >> "talk.vbs"
cscript //NoLogo //B talk.vbs
del Talk.vbs
endlocal
Exit/b
--VBS--
' Test of het correct is uitgevoerd.
Als wscript.fullname = "C:\Windows\System32\wscript.exe" then
WScript.echo "Gelieve gebruik""cscript/nologo alarm.vbs [parameters]" "om te roepen dit script."
WScript.Quit
eind als
Spraak instellen = wscript.createobject("sapi.spvoice") ' krijgen van de speech-object. ' Test voor ongeldige parameters, enz... ' Bepaal waar u te sturen. ' Normaal praten. ' Spreken van de inhoud van een bestand. ' Gebruik:
Als wscript.arguments.count = 0 then
usage(1) ' als geen parameters zijn opgegeven, errorlevel 1 als resultaat.
anders als wscript.arguments.item(0) = '/?' dan
usage(0)
eind als
eind als
Als wscript.arguments.count = 2 then
Als wscript.arguments.item(1) = "/ f" dan
talk_file(Wscript.arguments.item(0))
anders
usage(3) ' als tweede parameter niet is "/ f", errorlevel 3 terug.
eind als
anders
Talk(Wscript.arguments.item(0))
eind als
functie talk(text)
speech.speak tekst
WScript.Quit
einde functie
functie talk_file(file)
Set fso = wscript.createobject("scripting.filesystemobject")
Zoniet dan fso.fileexists(file)
usage(2) ' als het bestand niet bestaat, retourneert errorlevel 2.
eind als
set ofile = fso.opentextfile(file,1)
speech.speak ofile.readall()
WScript.Quit
einde functie
functie usage(errorlevel)
WScript.echo
WScript.echo "TALK""tekst" "[Parameters]"
WScript.echo
WScript.echo "Tekst - de zin die u wenst te worden gesproken."
WScript.echo
WScript.echo "[Parameters]:"
WScript.echo"/f - de inhoud van een bestand te lezen." " Tekst"" verandert in het bestandspad. "
WScript.echo
WScript.Quit(ERRORLEVEL)
einde functie
Nogmaals, gebruik dit zoals je zou een echte opdracht, want het is.