无法在控制台应用程序中引用dll,但我可以在wpf中引用

Ton*_*Nam 1 c# dll skype4com

  • 我有一个控制台应用程序和一个wpf应用程序.
  • 在这两个应用程序上我添加了skype4com.dll引用

  • 代码: SKYPE4COMLib.Skype oSkype = new SKYPE4COMLib.Skype();

给出:InvalidCastExeption陈述:

无法将"System .__ ComObject"类型的COM对象强制转换为接口类型"SKYPE4COMLib.Skype".此操作失败,因为对于具有IID'{B1878BFE-53D3-402E-8C86-190B19AF70D5}的接口的COM组件的QueryInterface调用由于以下错误而失败:不支持此类接口(HRESULT异常:0x80004002(E_NOINTERFACE)) .

但是当我在我的wpf应用程序中运行相同的代码行时,我没有得到异常.为什么!?


我的控制台应用程序运行良好,直到skype更新.我卸载了skype,再次安装它以尝试解决问题,但这没有帮助.

Mha*_*lin 7

不要为您的控制台应用程序使用客户端配置文件,将其设置为完整的.Net版本.

您可以通过进入项目属性 - >应用程序 - >目标框架(下拉列表) - >将其设置为.Net Framework 4(如果是您正在运行的.net版本)来更改它