Microsoft.Speech では Dictation が使えないのかも

Microsoft.Speech と System.Speech にはそれぞれ Dictation を可能にするための機能 AppendDictation メソッドが用意されています。 ところが Microsoft.Speech では、AppendDictation を利用して生成した Grammar を SpeechRecognitionEngine に設定しようとすると、 (SpeechRecognitionEngine.LoadGrammar) 例外「Cannot find grammar referenced by this grammar. 」が通知されます。

同じ問題は System.Speech では発生せず、Dictation 機能も上手く動作します。 また System.Speech には DictationGrammar なる Grammar も別途用意されています。

Microsoft.Speech に起きるこの問題を解決することはできていません。ただ環境依存の問題である可能性もあると思います。 一応 msdn では AppendDictation を利用するサンプルコードが公開されていることは確認できています。

Microsoft.Speech
GrammarBuilder.AppendDictation - msdn
System.Speech
GrammarBuilder.AppendDictation - msdn