3

Я использую Microsoft SpeechSynthesizer для создания аудиовыхода для моего приложения Windows Phone. Я использую этот кодUnauthorizedAccessException при инициализации SpeechSynthesizer

private async void TextToSpeech_Tap(object sender, System.Windows.Input.GestureEventArgs e) 
{ 
    SpeechSynthesizer synth = new SpeechSynthesizer(); 

    await synth.SpeakTextAsync("You have a meeting with Peter in 15 minutes."); 
} 

Я получаю это исключение:

{System.UnauthorizedAccessException: Access is denied. 

at Windows.Phone.Speech.Synthesis.SpeechSynthesizer..ctor() 
at NerdQuiz.Question.<TextToSpeech_Tap>d__1.MoveNext() 
--- End of stack trace from previous location where exception was thrown --- 
    at System.Runtime.CompilerServices.AsyncMethodBuilderCore.<ThrowAsync>b__0(Object state)} 

я узнал, что ошибка происходит при

new SpeechSynthesizer(); 

ответ

4

Убедитесь, что вы добавили возможность ID_CAP_SPEECH_RECOGNITION в манифест приложения (WMAppManifest.xml).

+0

Спасибо. Я думал, что мне нужно только это для признания, но не для синтеза. Еще раз я кое-что узнал ... – jalgames

+0

Как? В разделе «Мои возможности» есть такие записи, как «» и «', поэтому я не уверен, как добавить 'ID_CAP_SPEECH_RECOGNITION' – dumbledad

0

В Windows Universal Apps (приложения UWP) использование SpeechSynthetizer требует возможности микрофона. (я не знаю почему, но после включения я больше не получал исключения)

Смежные вопросы