问题描述
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingSystem.Windows.Forms;usingSystem.Speech.Synthesis;namespaceBank{publicpartialclassMain:Form{publicMain(){InitializeComponent();}privatevoidMain_Load(objectsender,EventArgse){SpeechSynthesizera=newSpeechSynthesizer();a.SpeakAsync("Hello");}
无法将类型为“System.__ComObject”的COM对象强制转换为接口类型“System.Speech.Internal.SapiInterop.ISpDataKey”。此操作失败的原因是对IID为“{14056581-E16C-11D2-BB90-00C04F8EE6C0}”的接口的COM组件调用QueryInterface因以下错误而失败:不支持此接口(异常来自HRESULT:0x80004002(E_NOINTERFACE))。
解决方案
解决方案二:
不是本机执行的吧?
解决方案三:
是本机啊,我也很郁闷。。。
解决方案四:
没人能回答啊!
解决方案五:
不好说,在我这是能执行的。
解决方案六:
能把你的系统备份给我吗?估计是我这系统是精简版,网上找了很多系统,安装了还是一样。
解决方案七:
引用4楼ZuoQingYi的回复:
不好说,在我这是能执行的。
能给我备份你的系统吗?好像是我操作系统的问题
解决方案八:
这个帖子说组件没有正确的注册。lz自己看一下吧
解决方案九:
我也是同样的问题,我是C#调用一个C++写的进程外COM组件(EXE),出现这样的问题,请问你解决了吗?