2013-11-15 63 views
0

我想在我的应用程序中打开windows sapi火车窗口。如何在c#应用程序中打开sapi火车窗口?

我觉得这个程序的文件路径是“C:\ Windows \ System32 \ Speech \ SpeechUX \ SpeechUXWiz.exe”。但是当我试图用dobule打开它时,点击它就会失败。我尝试在我的process.start()方法的应用程序也将呈现。

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

是否有人知道如何打开它?有没有一个接口可以在sapi中做到这一点?谢谢!

我的系统是windows7 x64。

回答

3

不要直接启动进程;命令行的细节依赖于版本(事实上,流程本身可能会因版本而异)。

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

要使用SpeechLib,添加

using SpeechLib; 

到您的代码,并添加引用(通过项目/添加引用/ 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, ""); 
} 
+0

非常感谢你。 –

+0

System.Speech命名空间中是否存在相同的方法?谢谢。 –

+0

我找不到“SpeechLib.SpeechUserTraining”。请为我提供更详细的示例,谢谢。 –

相关问题