SpeechRecognitionEngine.LoadGrammar(Grammar) メソッド

定義

Grammar オブジェクトを同期的に読み込みます。Synchronously loads a Grammar object.

public:
 void LoadGrammar(System::Speech::Recognition::Grammar ^ grammar);
public void LoadGrammar (System.Speech.Recognition.Grammar grammar);
member this.LoadGrammar : System.Speech.Recognition.Grammar -> unit
Public Sub LoadGrammar (grammar As Grammar)

パラメーター

grammar
Grammar

読み込む文法オブジェクト。The grammar object to load.

例外

Grammarnullです。Grammar is null.

Grammar が有効な状態ではありません。Grammar is not in a valid state.

次の例は、基本的な音声認識を示すコンソールアプリケーションの一部を示しています。The following example shows part of a console application that demonstrates basic speech recognition. この例では、を作成 DictationGrammar し、音声認識エンジンに読み込みます。The example creates a DictationGrammar and loads it into a speech recognizer.

using System;  
using System.Speech.Recognition;  

namespace SpeechRecognitionApp  
{  
  class Program  
  {  
    static void Main(string[] args)  
    {  

      // Create an in-process speech recognizer for the en-US locale.  
      using (  
      SpeechRecognitionEngine recognizer =  
        new SpeechRecognitionEngine(  
          new System.Globalization.CultureInfo("en-US")))  
      {  

        // Create and load a dictation grammar.  
        recognizer.LoadGrammar(new DictationGrammar());  

        // Add a handler for the speech recognized event.  
        recognizer.SpeechRecognized +=   
          new EventHandler<SpeechRecognizedEventArgs>(recognizer_SpeechRecognized);  

        // Configure input to the speech recognizer.  
        recognizer.SetInputToDefaultAudioDevice();  

        // Start asynchronous, continuous speech recognition.  
        recognizer.RecognizeAsync(RecognizeMode.Multiple);  

        // Keep the console window open.  
        while (true)  
        {  
          Console.ReadLine();  
        }  
      }  
    }  

    // Handle the SpeechRecognized event.  
    static void recognizer_SpeechRecognized(object sender, SpeechRecognizedEventArgs e)  
    {  
      Console.WriteLine("Recognized text: " + e.Result.Text);  
    }  
  }  
}  

注釈

Grammarオブジェクトが既に読み込まれている場合、非同期に読み込まれている場合、または認識エンジンへの読み込みに失敗した場合、レコグナイザーは例外をスローします。The recognizer throws an exception if the Grammar object is already loaded, is being asynchronously loaded, or has failed to load into any recognizer. 同じ Grammar オブジェクトをの複数のインスタンスに読み込むことはできません SpeechRecognitionEngineYou cannot load the same Grammar object into multiple instances of SpeechRecognitionEngine. 代わりに、 Grammar インスタンスごとに新しいオブジェクトを作成し SpeechRecognitionEngine ます。Instead, create a new Grammar object for each SpeechRecognitionEngine instance.

レコグナイザーが実行されている場合、アプリケーションは、を使用して、 RequestRecognizerUpdate 文法の読み込み、アンロード、有効化、または無効化の前に音声認識エンジンを一時停止する必要があります。If the recognizer is running, applications must use RequestRecognizerUpdate to pause the speech recognition engine before loading, unloading, enabling, or disabling a grammar.

文法を読み込むと、既定で有効になります。When you load a grammar, it is enabled by default. 読み込まれた文法を無効にするには、プロパティを使用し Enabled ます。To disable a loaded grammar, use the Enabled property.

オブジェクトを非同期的に読み込むには Grammar 、メソッドを使用し LoadGrammarAsync ます。To load a Grammar object asynchronously, use the LoadGrammarAsync method.

適用対象

こちらもご覧ください