1

如何停止 System.Speech.Synthesi.Syntheziser?有用于暂停和恢复的内置方法,但我不知道如何完全停止引擎。当我使用 SpeakAsyncCancel 方法时,状态属性表明合成器仍在说话。

我必须使用线程还是我不明白?

4

2 回答 2

0

Using SpeakAsyncCancel you need to pass a prompt parameter, for example:

Synthesizer.SpeakAsyncCancel(new Prompt("cancelling now"));

You can use SpeakAsyncCancelAll() as well, and finally dispose:

Synthesizer.SpeakAsyncCancelAll();
Synthesizer.Dispose();
于 2014-10-01T15:07:26.873 回答
0

我遇到了同样的问题,经过一番凝视后弄清楚了。Synthesizer 是多线程的,因此它们只能是程序中的一个实例,因此请使用静态构造函数在某处创建一个静态实例。

于 2012-10-10T18:14:14.290 回答