Winforms 将activeX对象强制转换到我的对象时出现问题

Winforms 将activeX对象强制转换到我的对象时出现问题,winforms,com,wpf-controls,activex,Winforms,Com,Wpf Controls,Activex,我正在尝试使用Windows作为SAP B1中的ActiveX控件。在该控件内,我托管WPF控件。它工作得很好,除非我尝试将activeX对象强制转换到我的类上,这样我就可以使用类上的所有方法。但当我尝试这样做时,我得到了一个例外。怎么了 我做了注册之类的事。我甚至可以用一些手工制作的数据(在控件构造函数中初始化)在SAP中显示该控件。虽然我不确定这是否是更普遍的问题,而不是SAP特有的问题 欢迎提出任何建议,并提前表示感谢 我得到的信息是: 无法将“System.\u ComObject”类型

我正在尝试使用Windows作为SAP B1中的ActiveX控件。在该控件内,我托管WPF控件。它工作得很好,除非我尝试将activeX对象强制转换到我的类上,这样我就可以使用类上的所有方法。但当我尝试这样做时,我得到了一个例外。怎么了

我做了注册之类的事。我甚至可以用一些手工制作的数据(在控件构造函数中初始化)在SAP中显示该控件。虽然我不确定这是否是更普遍的问题,而不是SAP特有的问题

欢迎提出任何建议,并提前表示感谢

我得到的信息是: 无法将“System.\u ComObject”类型的COM对象强制转换为“CapacityCalendarControl.CapacityCalendar”类型的类

[Guid("9A2F1CCB-8DC0-4CE5-B3C7-403A1A8CDCE2")]
[ProgId("kamil.calendar.control")]
[ClassInterface(ClassInterfaceType.AutoDual)]
[ComVisible(true)]
public partial class CapacityCalendar : UserControl
{
  //internals...
}
无法将System.\uuComObject(COM包装器)强制转换为.NET类。我认为,最简单的方法是使用TLBImport(类型库导入工具),如果activeX配备了.TLB(外部或嵌入式)


请参见此处了解更多信息:

但我从net assembly制作了activeX,无法将其转换回net assembly,至少这是我从Tlbimp获得的。Tlbimp将创建.net类以使用非.net COM对象(=活动X)。我不明白“我从网络组装中制作了ActivX”的说法?你没有发布爆炸的代码。