麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > VBScript > 正文

vbs 調用中文語音讓你電腦聽你的命令的實現代碼

2020-07-26 11:53:07
字體:
來源:轉載
供稿:網友
如果你機器本身裝了office的話,可能不需要裝以下軟件,我機器由于裝的是openoffice,所以我提前裝了
speechsdk51.exe
CNSpeechPackage.msi
這兩個軟件。如果讓電腦朗讀,參考下面的代碼
復制代碼 代碼如下:

ReadAllTextFile=CreateObject("Scripting.FileSystemObject").OpenTextFile(Wscript.Arguments(0), 1).ReadAll
Function RegExpTest(patrn, strng)
Dim regEx, Match, Matches ' 建立變量。
Set regEx = New RegExp ' 建立正則表達式。
regEx.Pattern = patrn ' 設置模式。
regEx.IgnoreCase = True ' 設置是否區分大小寫。
regEx.Global = True ' 設置全程可用性。
Set Matches = regEx.Execute(strng) ' 執行搜索。
For Each Match in Matches ' 遍歷 Matches 集合。

RetStr = RetStr & Match.value&" "
RetStr = RetStr & vbCRLF
Next
RegExpTest = RetStr
End Function

Set objVoice = CreateObject("SAPI.SpVoice")
Set objVoice.Voice = objVoice.GetVoices("Name=Microsoft Simplified Chinese").Item(0)
objVoice.Rate = 3 '速度:-10,10 0
objVoice.Volume = 100 '聲音:0,100 100
objVoice.Speak RegExpTest("[/u4e00-/u9fa5]", ReadAllTextFile)

或是裝完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
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 欧美aⅴ视频 | 成人免费福利 | 青草久久久久 | 成人在线免费观看网址 | 黄色片免费在线 | 九九久久视频 | 午夜视频观看 | av免费在线观看免费 | 人成免费网站 | 久久精品视频16 | 国产精品视频自拍 | 91国内精品久久久久免费影院 | japanese末成年free | 精品久久999 | 国产一级二级在线播放 | 久色视频 | 热99re久久免费视精品频软件 | 国产精品久久久在线观看 | 成人毛片网站 | 久久影院国产精品 | 日韩毛片免费观看 | 国产一区二区三区高清 | 一级片久久免费 | 久久久久国产一区二区三区不卡 | 久久国产精品免费视频 | 一本色道久久综合狠狠躁篇适合什么人看 | 在线成人免费观看www | 欧美一级二级毛片视频 | 色中色在线视频 | 日日鲁夜夜视频热线播放 | 欧美久久久一区二区三区 | 精品国产一二区 | av免费在线免费观看 | 国产精品久久久久无码av | 久久久久久久免费视频 | 成人一区二区三区在线 | 亚洲成在人 | 中文字幕在线网站 | 免费黄色大片网站 | 成人午夜久久 | 日本不卡一区二区在线观看 |