SpeechRecognitionEngine.LoadGrammar(Grammar) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Charge un objet Grammar de façon synchrone.
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)
Paramètres
- grammar
- Grammar
Objet de grammaire à charger.
Exceptions
Grammar
a la valeur null
.
Grammar
n'est pas un état valide.
Exemples
L’exemple suivant montre une partie d’une application console qui illustre la reconnaissance vocale de base. L’exemple crée un DictationGrammar et le charge dans un module de reconnaissance vocale.
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);
}
}
}
Remarques
Le module de reconnaissance lève une exception si l' Grammar objet est déjà chargé, est chargé de manière asynchrone ou n’a pas pu être chargé dans un module de reconnaissance. Vous ne pouvez pas charger le même Grammar objet dans plusieurs instances de SpeechRecognitionEngine . Au lieu de cela, créez un nouvel Grammar objet pour chaque SpeechRecognitionEngine instance.
Si le module de reconnaissance est en cours d’exécution, les applications doivent utiliser RequestRecognizerUpdate pour suspendre le moteur de reconnaissance vocale avant de charger, de décharger, d’activer ou de désactiver une grammaire.
Lorsque vous chargez une grammaire, elle est activée par défaut. Pour désactiver une grammaire chargée, utilisez la Enabled propriété.
Pour charger un Grammar objet de manière asynchrone, utilisez la LoadGrammarAsync méthode.