如何在c#应用程序中打开sapi列车窗口?

时间:2013-11-15 06:14:51

标签: c# sapi

我想在我的应用程序中打开Windows sapi火车窗口。

我发现这个进程的文件路径是“C:\ Windows \ System32 \ Speech \ SpeechUX \ SpeechUXWiz.exe”。但是当我尝试通过dobule点击打开它时,它会发现它。我试着在我的应用程序中打开这个文件通过process.start()方法也将是faild。

 Process.Start(@"C:\Windows\System32\Speech\SpeechUX\SpeechUXWiz.exe");

有人知道如何打开它吗?在sapi中有没有这样做的界面?谢谢!

我的系统是windows7 x64。

1 个答案:

答案 0 :(得分:4)

不要直接开始这个过程;命令行的详细信息取决于版本(事实上,进程本身可能会随版本而变化)。

您可以使用speechlib(与SAPI IDispatch兼容的API)开始训练(在C#中)。请看ISpeechRecognizer::DisplayUI

要使用SpeechLib,请添加

using SpeechLib;

到您的代码,并将引用(通过Project / Add Reference / COM)添加到项目的Microsoft Speech Object Library

然后,要开始训练,你会得到一些看起来像这样的代码:

static void RunTraining()
{
    SpSharedRecoContext RC = new SpSharedRecoContext();
    string Title = "My App's Training";
    ISpeechRecognizer spRecog = RC.Recognizer;
    spRecog.DisplayUI(hWnd, Title, SpeechLib.SpeechStringConstants.SpeechUserTraining, "");
}