SpeechRecognitionEngine Ошибка HRESULT E_FAIL была возвращена после вызова компонента COM - PullRequest
0 голосов
/ 09 февраля 2019

Я использую простой код основного метода, который создает экземпляр SpeechRecognitionEngine и передает ему некоторые грамматические данные.Я не могу понять, почему ошибка продолжает появляться.Я попытался удалить .csproj и .suo, но ничего не изменилось.

        SpeechRecognitionEngine spe = new SpeechRecognitionEngine();
        Choices commands = new Choices();
        commands.Add("hello", "what is your name");
        GrammarBuilder gB = new GrammarBuilder(commands);
        Grammar g = new Grammar(gB);

        //every single call to spe.SomeMethod() breaks with the error in the title
        spe.LoadGrammarAsync(g);
        spe.SetInputToDefaultAudioDevice();

        spe.RecognizeAsync(RecognizeMode.Multiple);

1 Ответ

0 голосов
/ 10 февраля 2019

Хорошо, разобрался: Перейдите: Build> Configuration Manager> Active Solution Platform. Щелкните раскрывающийся список «Любой ЦП».Выберите Установите платформу на совместимый тип Speech SDK (в моем случае x64) и наслаждайтесь программой-слугой-роботом, набрав

ps.избавьте себя от головной боли и используйте RecognizeAsync (), а не Recognize ().По какой-то причине распознать лайков дважды.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...