У меня проблема с классом SpeechRecognizer в Windows XP. иногда это работает, но иногда это не работает, и необходимо перезагрузить компьютер. на windows 7 работает нормально. Я думаю, что это некоторая проблема в самом речевом движке, потому что, когда я запускаю свое приложение несколько раз, оно перестает работать.
Я использую этот код:
с использованием системы;
using System.Collections.Generic;
using System.ComponentModel;
используя System.Data;
использование System.Drawing;
использование System.Linq;
используя System.Text;
использование System.Windows.Forms;
используя SpeechLib;
используя System.Threading;
пространство имен WindowsFormsApplication13
{
открытый частичный класс Form1: Form
{
SpeechRecognizer rec = new SpeechRecognizer();
public Form1()
{
InitializeComponent();
rec.SpeechRecognized += rec_SpeechRecognized;
}
void rec_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)
{
lblLetter.Text = e.Result.Text;
}
private void Form1_Load(object sender, EventArgs e)
{
var c = new Choices();
c.Add("one");
c.Add("two");
c.Add("three");
c.Add("four");
c.Add("Five");
c.Add("six");
c.Add("seven");
c.Add("eight");
c.Add("nine");
c.Add("ten");
// etc...
var gb = new GrammarBuilder(c);
var g = new Grammar(gb);
rec.LoadGrammar(g);
rec.Enabled = true;
}
}
}