使用C#语音识别

时间:2009-06-29 18:19:19

标签: c# speech-recognition

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

以下是我的确切步骤。请告诉我哪里出错了。

  1. 打开“控制面板”,搜索“语音”,然后单击“开始语音识别”。
  2. 打开Visual C#,创建一个新的Windows窗体项目
  3. 将代码从the first answer on this Stack Overflow question复制并粘贴到项目中。
  4. 添加对System.Speech的必要引用。
  5. 运行程序,语音识别小程序仍在运行。
  6. 说“开始聆听”。
  7. 说出1到100之间的数字。
  8. 标签的文本永远不会改变其默认值(“label1”),因此似乎永远不会调用rec_SpeechRecognized(),即SpeechRecognized事件永远不会触发。如果我说的数字听起来有点类似于打开的窗口或开始菜单中的程序的名称,它会问我这是不是我的意思。它似乎完全不知道我刚刚定义的自定义语法。

    我尝试了很多我在网上找到的例子,这些例子几乎与我链接的答案中的例子相同,只是语法不同。我得到了相同的结果,所以我认为我必须做错其他的事情。

    我做错了什么?

3 个答案:

答案 0 :(得分:2)

我认为你没有将Form1加载事件链接到设计器中的Form1_Load例程。我完全按照你的步骤,得到了相同的结果;看看你是否可以在Form1_Load的任何地方获得断点。

一旦我编辑了设计师以确保Form1_Load实际被调用,它运行正常。

答案 1 :(得分:0)

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

答案 2 :(得分:0)

如果您在同一个帖子中阅读其他帖子,则有一个帖子说您应该将这些数字添加为一个,两个等,而不是1,2 ...