E2247 'TSpVoice::Voice' 不可访问

问题描述

这曾经在 Windows 10 上工作,但现在不行,而且我找不到如何更正代码以使其工作。

void __fastcall TForm1::ComboBox1Change(TObject *Sender)
{
  ISpeechObjectTokenPtr token;
  ISpeechObjectTokensPtr tokens;
  tokens=SpVoice1->GetVoices(L"",L"");
  token=tokens->Item(ComboBox1->ItemIndex);
  SpVoice1->Voice=token;
}

还有错误(不可访问):

SpVoice1->Volume
SpVoice->Rate

如果我注释掉 VoiceRateVolume,它会编译并运行良好。

Windows 10 64 位版本 19041.867

解决方法

只需要进行一些更改。

impl