★ 让批处理发声--- 朗读单词 ★ 今天给大家一起学习的是让批处理发声。希望不会的,我们一起学习,高手不要笑话我就可以了。讲的非常的罗嗦,希望楼下跟帖的不要骂我就是了.......肯定有什么不对的地方,恳请大家批评指正, 共同提高,共同进步! 这里用到了批处理和vbs结合。我们还是先看代码吧: -------------------------------------------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------- 很简单吧? 这里就是用批处理的mshta命令把bat与vbs结合起来了,用vbs调用函数发声,很不错!这个mshta的意义非常的重要,如果要想让bat和vbs结合就非得用mshta命令 mshta vbscript:create............................. 这里的vbscript的意思是bat与vbs脚本宿主的结合 当然可以把javascript结合起来,也是可以的,以后有时间学了javascript的话, 我就把java代码干上去,大家一起学习下哈或者其他脚本文件都可以往后面跟下去............... 文章最后面有个简单的javascript的例子,希望大家也去实验下效果.... vbscript就说明后面跟的是vbs脚本的内容,后面的脚本就是vbs脚本..... ------------------------------------------------------------------------------------------------------------- 我们接着往下看: vbscript:createobject("sapi.spvoive").speak("I love bathome")(window.close) 解说:这里创建了一个sapi.spvoice对象,并调用它的speak方法,"I love bathome"是要朗读的内容。 当然要朗读的i love bathome,也可以换成其他的东西,例如my name is lixiaodao 或者i love ****** 呵呵,都是可以的...................但是可不能换成汉字,它可不认识汉字,呵呵…… 接着解释后面的(window.close) 在解释它之前,我们可以把代码后面的 (window.close)去掉,去实验下, ------------------------------------------------------------------------------------------------------- ------------------------------------------------------------------------------------------------------- 我们会发现确实是朗读了i love bathome,但是朗读后,就跳出了一个窗口, window.close就是关闭这个窗口的.................... 可以把代码优化一下,看起来操作起来好一点,我写了下面的代码; -----------------------------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------- 举个很简单的javascript的例子,大家实验下bat与javascript的结合.
window.close不用讲了,已经讲过了,讲一下alert,就是弹出消息的意思,实验下,看效果...... 代码很简单,我不做多说明,欢迎复制代码实验下,看效果,呵呵 写完了,确实很罗嗦,恳请大家批评指正............................. 写的很垃圾很仓促,定有不妥之处,恳请各位大师,各位专家批评指正 感谢各位,提出好的思路和方法..... |
复制代码
- mshta javascript:window.alert("欢迎来到批处理之家,批处理之家欢迎您!")(window.close())
复制代码
- @echo off
- rem code...
- set str=123456789
- mshta vbscript:createobject("sapi.spvoice").speak("%str%")(window.close)
- rem code...
- pause
复制代码
- ::A》
- @echo off
- set "str=123456789"
- mshta vbscript:"<meta http-equiv=x-ua-compatible content=IE=10><script type=text/vbscript>createobject(""sapi.spvoice"").speak(""%str%"")(close)</script>"
- pause &exit/b
- ::B》
- @echo off
- set "str=123456789"
- mshta "javascript:close(new ActiveXObject('sapi.spvoice').speak('%str%'))"
- pause &exit/b
我不懂vbs,这是几年前收集的。复制代码
- Set file = CreateObject("Scripting.FileSystemObject")
- if file.FileExists("内容.txt") then
- set txtfile=file.opentextfile("内容.txt",1)
- while NOT txtfile.atendofstream
- CreateObject("SAPI.SpVoice").Speak txtfile.ReadLine
- wend
- txtfile.close
- msgbox ("完")
- Else
- msgbox("是直接读内容.txt里的文字内容,没找到内容.txt")
- End If
复制代码
- new ActiveXObject('sapi.spvoice').speak('123456789');
复制代码
- sapi_onecore.dll和sapi.dll是Windows操作系统中与语音识别和语音合成相关的动态链接库(DLL)文件。它们之间的区别在于:
- Windows版本:sapi_onecore.dll是为Windows 10及更高版本设计的,而sapi.dll适用于较早的Windows版本,例如Windows 7、Windows 8等。
- 功能支持:sapi_onecore.dll提供了一种新的API接口,称为OneCore Speech API,它是基于Windows 10 OneCore技术栈开发的。这个API接口具有更好的性能和更多的功能特性,如噪声抑制、自适应麦克风阵列处理等。相比之下,sapi.dll的功能相对较少,不支持一些新的语音识别和语音合成特性。
- 兼容性:由于sapi_onecore.dll是为Windows 10及更高版本优化的,因此它可能不兼容较旧的Windows版本。而sapi.dll则可以在较旧的Windows版本上正常运行。
- 总之,sapi_onecore.dll和sapi.dll在功能特性、兼容性方面存在差异。如果你使用的是Windows 10及更高版本,并且需要利用最新的语音识别和语音合成功能,建议使用sapi_onecore.dll。如果你使用的是较旧的Windows版本,sapi.dll可能是更适合的选择。
欢迎光临 批处理之家 (http://bbs.bathome.net/) | Powered by Discuz! 7.2 |