SpeechRecognitionEngine .SetInputToDefaultAudioDevice() wirft unter WinXP eine Exception

23/10/2007 - 20:50 von Wolfgang Schlicker | Report spam
Hallo NG,

weiss jemand warum der folgende .NET 3.0 Code unter Vista funktioniert und
unter WinXP SP2 + .NET3.0 Runtime eine Exception wirft?
{
SpeechRecognitionEngine oSRE = new SpeechRecognitionEngine();
oSRE.SetInputToDefaultAudioDevice();
}

Kann es mit den unterschiedlichen SAPI Versionen zusammenhàngen. -> SAPI 5.1
unter XP, SAPI 5.3 unter Vista.

Die Anwendung ist Windows Forms basierend und làuft als STAThread. Habe
schon gegoogled aber nichts was mir weiterhilft gefunden.

Unter Google findet man einen Hinweis bezüglich Threading Problem, oder aber
dass obiger Code unter XP nur in einer Consolen-Anwendung funktioniert.
Keiner kann aber wirklich etwas über die Ursache sagen. Nur vage Hinweise
oder eventuell BUG im Framework? Kann das jemand bestàtigen?


Beste Grüsse,
Wolfgang
 

Lesen sie die antworten

#1 Frank Dzaebel
24/10/2007 - 07:32 | Warnen spam
Hallo Wolfgang,

weiss jemand warum der folgende .NET 3.0 Code unter Vista funktioniert und
unter WinXP SP2 + .NET3.0 Runtime eine Exception wirft?
{
SpeechRecognitionEngine oSRE = new SpeechRecognitionEngine();
oSRE.SetInputToDefaultAudioDevice();
}



Der muss ggf. im neuen Thread gestartet werden. Etwa:

Thread t1 = new Thread(delegate()
{
recognizer.SetInputToDefaultAudioDevice();
recognizer.RecognizeAsync(RecognizeMode.Single);
});
t1.Start();

Siehe auch:

[SetInputToDefaultAudioDevice failed in XP - MSDN Forums]
http://forums.microsoft.com/MSDN/Sh...spx?PostID08243&SiteID=1

[SpeechRecognitionEngine.SetInputToDefaultAudioDevice Method
(System.Speech.Recognition)]
http://msdn2.microsoft.com/en-us/li...evice.aspx
(ganz unten in den Community Beitràgen)

[.NET 3.0 ile Ses Tanima Uygulamalari]
http://www.csharpnedir.com/makalegoster.asp?Midw1


ciao Frank
Dipl.Inf. Frank Dzaebel [MCP/MVP C#]
http://Dzaebel.NET

Ähnliche fragen