首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >全封闭语音识别器

全封闭语音识别器
EN

Stack Overflow用户
提问于 2012-02-18 17:46:23
回答 3查看 787关注 0票数 0

我需要使用语音识别文件浏览,使用命令“显示数字”。当我打开文件夹浏览器对话框时,我希望语音识别器启动;当浏览器对话框窗口关闭时,我希望语音识别器关闭。如何在代码隐藏中使用完全关闭语音识别器?

编辑:我为我的问题找到了“丑陋”的解决方案:杀死sapisvr.exe

EN

回答 3

Stack Overflow用户

发布于 2012-03-04 20:36:49

你为什么要完全关闭WSR?启动和关闭需要相当长的时间。可以让CoCreateing停止侦听共享识别器实例(CLSID_SpSharedRecognizer),然后将识别器状态设置为SPRST_INACTIVE。快多了。

票数 0
EN

Stack Overflow用户

发布于 2012-03-27 21:42:36

另一个选项是使用inproc SpeechRecognitionEngine。

创建引擎并加载适当的语法(即使它只是听写语法),然后只要打开文件浏览器对话框就调用Recognize()。

类似这样的东西(诽谤,而不是从VS复制):

代码语言:javascript
复制
// This goes in your application initialization code
var engine = new SpeechRecognitionEngine();
// Set event handlers here...
// Load grammar here...

// This goes in your code where you open the dialog and want
// speech recognition
while (isFileDialogOpen) {
    engine.Recognize(); // It's probably not called 'engine' in your code ;)
}

如果你只想做一次也只有一次的识别,你可以省略while循环,然后调用Recognize,但是我不会推荐它,除非房间是完全安静的,而且你不会自言自语。

票数 0
EN

Stack Overflow用户

发布于 2017-01-09 09:31:33

这就是我所用的:

代码语言:javascript
复制
Process[] processes = Process.GetProcessesByName("sapisvr");
foreach (var process in processes)
    {
        process.Kill();
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9343565

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档