2

我正在尝试编写一个通过自定义(专业)语法支持语音识别的程序。但是,SpeechRecognized 事件永远不会触发,并且语音识别小程序的行为就像语法不存在一样。

这是我的精确步骤。请告诉我哪里出错了。

  1. 打开控制面板,搜索“语音”,然后点击“开始语音识别”。
  2. 打开 Visual C#,新建一个 Windows 窗体项目
  3. 将此 Stack Overflow 问题的第一个答案中的代码复制并粘贴到项目中。
  4. 添加对 System.Speech 的必要引用。
  5. 运行程序,语音识别小程序仍在运行。
  6. 说“开始听”。
  7. 说出一个 1 到 100 之间的数字。

标签的文本永远不会改变其默认值(“label1”),因此似乎永远不会调用 rec_SpeechRecognized(),即 SpeechRecognized 事件永远不会触发。如果我在开始菜单中说出一个听起来与打开的窗口或程序名称有些相似的数字,它会问我是否是这个意思。它似乎与我刚刚定义的自定义语法完全无关。

我尝试了很多我在网上找到的示例,这些示例都与我链接到的答案中的示例几乎相同,只是语法不同。我对所有这些都得到了相同的结果,所以我认为我一定做错了什么。

我究竟做错了什么?

4

3 回答 3

2

我认为您尚未将 Form1 加载事件链接到Form1_Load设计器中的例程。我完全按照您的步骤进行操作,并且得到了相同的结果;看看是否可以在Form1_Load.

一旦我编辑了设计器以确保它Form1_Load确实被调用,它运行良好。

于 2009-09-17T22:23:02.153 回答
0

由于缺乏答案,我怀疑它适用于其他所有人,但不适用于我。因此,看起来答案是“不可能”。

于 2009-10-06T14:40:26.330 回答
0

如果您阅读同一线程中的其他帖子,则有一篇说您应该将数字添加为一、二等,而不是 1、2...

于 2009-10-06T15:57:41.953 回答