您的位置:首页办公软件Office → 关于vbs中文语音让你电脑听你的命令

关于vbs中文语音让你电脑听你的命令

时间:2009/11/6 11:19:00来源:本站整理作者:我要评论(0)

如果你机器本身装了office的话,可能不需要装以下软件,我机器由于装的是openoffice,所以我提前装了

speechsdk51.exe

CNSpeechPackage.msi

或是装完speechsdk51.exe之后可以参考

C:\Program Files\Microsoft Speech SDK 5.1\Samples\Scripts\SimpleTTS\SimpleTTS.html这个文件。

如果让电脑听你的命令,下边是vbs代码

'==========================================================================
' Name   : CommandPC.VBS
' AUTHOR : HUAYING
' DATE   : 2005-1-31
'==========================================================================
Dim CommandDictionary '命令字典对象
Dim WshShell   'WshShell对象提供对本地Windows程序的访问。
Dim ScriptComplete '程序结束标志
Dim SR   '语音识别(Speech Recognition)对象
Dim Grammar '语音识别的命令语法对象

'初始化命令字典对象,可根据自己的需要添加命令
Set CommandDictionary = CreateObject("Scripting.Dictionary")
CommandDictionary.Add "上网","""C:\Program Files\Internet Explorer\iexplore.exe"""    '注意双引号的数目
CommandDictionary.Add "计算器",   "calc"
CommandDictionary.Add "记事本",   "notepad"
CommandDictionary.Add "空当接龙", "freecell"

Set WshShell = CreateObject("WScript.Shell") '创建WshShell对象

ScriptComplete = False '初始化程序结束标志

'创建语音识别对象,调用由"Command.XML"所定义的语法,并启动语音识别引擎
Set SR = WScript.CreateObject("SAPI.SpSharedRecoContext", "RecoContext_")
Set Grammar = SR.CreateGrammar
Grammar.CmdLoadFromFile "x.xml", SLODynamic
Grammar.CmdSetRuleIdState 0, 1

MsgBox "你好,主人,请吩咐。"

'等候你的语音命令(需要安装麦克风)
'当识别出"命令结束"命令时程序结束
Do
WScript.Sleep 1000
Loop Until ScriptComplete

MsgBox "欢迎再跟我说话,再见!"

'你的语音命令被识别
Sub RecoContext_Recognition(ByVal StreamNumber,ByVal StreamPosition,ByVal RecognitionType,ByVal Result )
Text = Result.PhraseInfo.GetText     '获取语音识别引擎所识别的命令
If Text <> "命令结束" Then
    WshShell.Run CommandDictionary.Item(Text) '由WshShell对象Run方法执行你的命令
Else
    ScriptComplete = true      '程序结束标志
End If
End Sub


==================================

x.xml源码

<?xml version="1.0" encoding="gb2312" ?>
<GRAMMAR LANGID="804">
<RULE NAME="命令" TOPLEVEL="ACTIVE">
<L>
   <P>上网</P>
   <P>计算器</P>
   <P>记事本</P>
   <P>空当接龙</P>
   <P>命令结束</P>
</L>
</RULE>
</GRAMMAR>

========在中文的机器上直接运行这个vbs,很有可能出现0x80045052错误,解决办法:

控制面板---语音-语音认别选项卡------------》改成Microsoft Simplified Chinese

相关视频

    没有数据

相关阅读 adsutil.vbs脚本的使用VBS是什么?刷QQ群的VBS脚本正则获取网页的超链接和链接文本(a href),适用于asp vb vbsciptVB如何开启服务的VBS使用VBScript操作Html复选框(CheckBox)控件纯猝使用VBScript来实现加密VBSctipt 5.0中的新特性

文章评论
发表评论

热门文章 Office 365安装试用图

最新文章 Office 365安装试用图快速切换ribbon界面功 部分Office 15 早期图像抢先曝光你知道office 2007有哪些组件吗为大家收集的一些经典的Word2010小技巧快速切换ribbon界面功能区中的Office2010功

人气排行 ppt文档播放时没有声音解决方法如何让插入的PPT音乐在幻灯片切换后同时播放ppt不能播放flash怎么办Excel单元格文字显示不全怎么办如何把PDF文档转换成Word的方法如何批量删除Word2010文档中所有批注增加PPT内置音效的方法PPT2010动画和转换设计幻灯片