SetInputToDefaultAudioDevice(); Access Denied HRESULT:0x80070005(E_ACCESSDENIED));

时间:2012-11-21 17:03:32

标签: c# .net error-handling speech-recognition

我试图编写一些语音识别应用程序,我找到了这段代码:

SpeechRecognitionEngine recognitionEngine = new SpeechRecognitionEngine();

recognitionEngine.SetInputToDefaultAudioDevice();    
recognitionEngine.LoadGrammar(new DictationGrammar());    

RecognitionResult result = recognitionEngine.Recognize(new TimeSpan(0, 0,20));    
foreach (RecognizedWordUnit word in result.Words)     
{     
     Console.Write(word.Text);     
} 

但是当我想调试它时,它会在命令中显示Error Access Denied HRESULT:0x80070005(E_ACCESSDENIED)): recognitionEngine.SetInputToDefaultAudioDevice();

(已设置对System.Speech的引用)。我已经浏览了很多线程,但我无法找到答案。 我应该设置somwhere访问麦克风或如何解决这个问题?

感谢您的回答;)

1 个答案:

答案 0 :(得分:0)

您需要在窗口中安装语音识别和文本到语音功能。 如果您使用的是Windows 10,请转到开始菜单并在那里写入设置。

打开设置页面。

开放时间和语言。

打开“地区和语言”标签。

如果不存在,请将英语美国语添加为语言。

点击英语。然后单击选项。

然后在“语音”标签下,单击“下载”。

然后Windows将下载所需的包。

完成所有操作后,重新启动系统。