VB语音识别的问题

zenghuiiii 2012-03-18 02:07:01
前不久在百度文库上搜到一篇关于VB语音开发的文档 于是乎照模样自己做了个 但是老是会出现
事实错误 ’-2146697211(800C0005) 对象'cmdLoadFromFile'的方法'IspeechrecoGrammar' 另外 我的Microsoft speech SDK5.1工具包已经安装好了,小弟愚钝 求各位哥哥搭救 谢谢了.
代码如下:

Public WithEvents RC As SpSharedRecoContext '定义 RC为共享文本语音识别对象
Public myGrammar, b As ISpeechRecoGrammar '定义 词汇表语法对象
Private Sub Form_Load()
Set RC = New SpSharedRecoContext
Set myGrammar = RC.CreateGrammar
' RC.CreateGrammar.CmdLoadFromFile "e:\temp\sol.xml", SLODynamic
' RC.CreateGrammar.CmdSetRuleIdState 0, SGD - SActive
myGrammar.CmdLoadFromFile "e:\temp\s ol.xml", SLODynamic '//依据用户词汇表的语法规则调用语法词汇表
myGrammar.CmdSetRuleIdState 0, SGD - SActive
End Sub
Private Sub RC_FalseRecognition(ByVal StreamNumber As Long, ByVal StreamPosition As Variant, ByVal Result As SpeechLib.ISpeechRecoResult)
Label1.Caption = "(不可识别信息) "
End Sub
Private Sub RC_Recognition(ByVal StreamNumber As Long, ByVal StreamPosition As Variant, ByVal RecognitionType As SpeechLib.SpeechRecognitionType, ByVal Result As SpeechLib.ISpeechRecoResult)
Label1.Caption = Result.PhraseInfo.GetText
Select Case Result.PhraseInfo.GetText
Case "kaishi"
MsgBox "现在开始运行程序"
Case "now start"
MsgBox "这是我编写的第一个语音程序,好高兴哦! "
Case "hello"
Text1.Text = "hii,你好,很高兴见到您!"
Case "now stop"
End
End Select
End Sub
...全文
1042 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
勇者无惧11111 2014-12-05
  • 打赏
  • 举报
回复
你好!请问你这个问题解决了吗?我也遇到了这个问题,能不能指导一下我?谢谢啊!
ztuekane 2012-08-13
  • 打赏
  • 举报
回复
这个我也搞了几天了一点不懂该怎么办呢。那位兄台知道的望指点一二。
ysk2006112 2012-05-17
  • 打赏
  • 举报
回复
QQ:1906002188
ysk2006112 2012-05-17
  • 打赏
  • 举报
回复
我知道是怎么回事了,我也在用这个代码,用了我一天,给分我告诉你
zenghuiiii 2012-03-22
  • 打赏
  • 举报
回复
没人呢~~~结贴了哈 谢谢楼上二位了
阿呆哥 2012-03-19
  • 打赏
  • 举报
回复
不好意思,我没用过。
不过 "e:\temp\s ol.xml" 里面的空格是不是存在?
还有最新版本是5.3
zenghuiiii 2012-03-19
  • 打赏
  • 举报
回复
RC.CreateGrammar.CmdLoadFromFile "e:\temp\sol.xml", SLODynamic 还是不能调用 不知道是怎么回事儿了 再次恳请各位大大指教
zenghuiiii 2012-03-18
  • 打赏
  • 举报
回复
myGrammar.CmdLoadFromFile "e:\temp\s ol.xml", SLODynamic '//依据用户词汇表的语法规则调用语法词汇表
老是这一行错误~~~
今天下午家里没网,不好意思现在才回。刚才把程序的
myGrammar.CmdLoadFromFile "e:\temp\s ol.xml", SLODynamic 这行屏蔽掉之后
再把 RC.CreateGrammar.CmdSetRuleIdState 0, SGD - SActive改为
myGrammar.DictationSetState SGDSActive 之后可以运行 但是我对着麦克风说话语句不对 也就是不能执行我想要的操作,是不是我的程序没进词汇表呢?如果是该怎么样解决呢?如果不是又会是哪里的问题?哈哈哈~~本人比较菜 不好意思不好意思。。。。
阿呆哥 2012-03-18
  • 打赏
  • 举报
回复
那行出差?
另外,‘hii,你好,很高兴见到您!’,不对。
zenghuiiii 2012-03-18
  • 打赏
  • 举报
回复
一个下午了 为什么一个人都木有了 今天星期天大家都在休息啊~~~~

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧