我在C#中为win 7编写了一个应用程序,它使用了System.Speech中的SharedRecognizer来使用.NET 4.0和SAPI 5.4。一切都适用于该环境,但不适用于Windows XP。
在Win XP上(安装了SAPI 5.1)它似乎不喜欢我正在使用的语法xml文件。
程序崩溃尝试读取语法文件时出现以下错误:
This semantic interpretation type 'tag-format' is not supported with this
version of the speech platform.
经过一番搜索,我发现其他人在this forum上遇到了一个非常类似的问题,但似乎没有解决问题。
有人有什么想法吗?我是否需要两个版本的语法文件,一个用于XP,一个用于Win Vista / 7?如果是这样的话,是否有人知道对于什么是不同的并排解释,所以我可以想出一个简单的方法从一个翻译到另一个?如果我确实有不同格式的语法文件,我实际上可以在SharedRecognizer中加载旧版本,我假设它是SAPI 5.3-4类吗?或者我是否必须使用COM调用SAPI 5.1 dll而不是System.Speech命名空间?
非常感谢!!
答案 0 :(得分:2)
我认为解决方法是使用文本语法,而我现在正试图弄清楚如何做到这一点。有关详细信息,请参阅this question!