提一个有关语音朗读的问题?(com调用问题)低手问题
利用MSTTS的类型库导入IVtxtAuto接口类,pIVTxtAuto为一对话框的成员指针
以下为我的调用:
if (CoInitialize(NULL)==S_OK)
{
const GUID IID_IVTxtAuto = {0xFF2C7A50, 0x78F9, 0x11CE,{ 0xB7, 0x62, 0x00, 0xAA, 0x00, 0x4C, 0xD6, 0x5C} };
const GUID CLSID_VTxtAuto = {0xFF2C7A52, 0x78F9, 0x11CE,{ 0xB7, 0x62, 0x00, 0xAA, 0x00, 0x4C, 0xD6, 0x5C} };
GUID CLSIDOFSPEECH;
CLSIDFromProgID(L"Speech.VoiceText.1",&CLSIDOFSPEECH);
HRESULT hr = CoCreateInstance(CLSIDOFSPEECH,NULL,
CLSCTX_LOCAL_SERVER,IID_IVTxtAuto,(LPVOID*)&pIVTxtAuto);
if (SUCCEEDED(hr))
{
this->bSoundOk=TRUE;
pIVTxtAuto->Register("","English Text");
pIVTxtAuto->SetEnabled(1);
pIVTxtAuto->SetSpeed(150);
pIVTxtAuto->Speak("Wait a little,I will read the ",128);
((CButton *)(GetDlgItem(IDC_SPEAK)))->EnableWindow(TRUE);
((CButton *)(GetDlgItem(IDC_SPEAK)))->SetCheck(1);
}
else
{
CoUninitialize();
this->bSoundOk=FALSE;
((CButton *)(GetDlgItem(IDC_SPEAK)))->SetCheck(0);
((CButton *)(GetDlgItem(IDC_SPEAK)))->EnableWindow(FALSE);
MessageBox("本机没有安装TTS引擎,因此无法朗诵!","警告:",MB_OK+MB_ICONEXCLAMATION );
}
}
每当调用 pIVTxtAuto->Register("","English Text");时总是出现异常,在运行时,程序错误,无法继续执行,
请问什么毛病?
另外,我用pIVTxtAuto->Release();为什么编译器说接口IVTxtAuto 没有此成员函数?