我在 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.
经过一番搜索,我发现其他人在这个论坛上遇到了非常相似的问题,但问题似乎没有得到解决。
有人有想法么?我是否需要有两个版本的语法文件,一个用于 XP,一个用于 Win Vista/7?如果是这样,有没有人知道有什么不同的并排解释,所以我可以想出一种简单的方法来从一个翻译到另一个?如果我确实有不同格式的语法文件,我是否可以在 SharedRecognizer 中加载旧版本,我假设它是一个 SAPI 5.3-4 类?或者我是否必须使用对 SAPI 5.1 dll 的 COM 调用而不是 System.Speech 命名空间?
非常感谢!!