其他分享
首页 > 其他分享> > vb6 com服务器中属性和事件之间的歧义

vb6 com服务器中属性和事件之间的歧义

作者:互联网

在我的C#项目中,我引用的是用vb6编写的旧com服务器.尝试访问属性“ ModuleLoaded”(意思是“ IsModuleLoaded”)时,由于服务器还定义了一个具有相同名称的事件,我得到了一个模糊警告.我的代码如下所示:

if (fwb.Controller.ModuleLoaded == false) {
  fwb.Controller.LoadModule();
}

Visual Studio告诉我:

Error: Ambiguity between "MCS._clsController.ModuleLoaded" and
"MCS.__clsController_Event.ModuleLoaded".

如何在不更改com服务器本身代码的情况下解决歧义?

谢谢你的帮助.

解决方法:

您应该能够转换到生成的包含接口;

if (((MCS._clsController)fwb.Controller).ModuleLoaded == false) {

标签:ambiguity,com,vb6,c
来源: https://codeday.me/bug/20191123/2065793.html