---------------------------
Debugger Exception Notification
---------------------------
Project Project1.exe raised exception class EOleException with message 'OLE error 80045006'.
---------------------------
Break Continue Help
---------------------------
我打电话给CoInitialize。我的代码是:
hr := CoInitialize(nil);
SpVoice := TSpVoice.Create(Application);
SpVoice.Connect;
SpVoice.Speak('Test text');
CoUninitialize;
并且错误只发生在我选择neospeech语音时。
答案 0 :(得分:3)
错误0x80046005是SPERR_DEVICE_BUSY:硬件设备正被另一个线程或进程使用。 MSDN说:在许多旧系统中,音频输出设备只能通过一个进程打开。在Windows XP之前的Windows版本中,只有一个进程可以打开音频输入设备。因此,如果尝试打开正由其他进程或线程使用的设备,则SPERR_DEVICE_BUSY将返回。在Windows XP(及更高版本)中,多个进程可以打开相同的音频设备