2010-11-25 82 views
0

我試圖使用Windows作爲SAP B1內的ActiveX控件。在該控件內部,我託管WPF控件。除了當我嘗試將activeX對象投射到我的類時,它非常適用,因此我可以在我的類中使用所有方法。但是當我嘗試這樣做時,我得到一個異常。哪裏不對?將activeX對象投射到我的對象上的問題

我做了註冊和所有的東西。我甚至可以用一些手工製作的數據(在控件構造函數中初始化)在SAP內部顯示該控件。儘管我不確定這是否是更普遍的問題,而不是SAP特定的問題。

歡迎提出任何建議,並提前致謝。

我得到的消息是: 無法轉換類型「系統.__ ComObject」類類型「CapacityCalendarControl.CapacityCalendar」

[Guid("9A2F1CCB-8DC0-4CE5-B3C7-403A1A8CDCE2")] 
[ProgId("kamil.calendar.control")] 
[ClassInterface(ClassInterfaceType.AutoDual)] 
[ComVisible(true)] 
public partial class CapacityCalendar : UserControl 
{ 
    //internals... 
} 
+0

您沒有發佈被轟炸的代碼。 – 2010-11-25 15:08:46

回答

1

系統.__ ComObject(COM包裝)的COM對象不能被投到.NET類。最簡單的方法是使用TLBImport(類型庫導入工具),我認爲,如果你的ActiveX配備了.TLB(外部或嵌入式)。

請參閱這裏瞭解更多:Tool for creating .NET wrappers for a COM DLL?

+0

但是我從網上裝配製作了我的activeX,我無法將它轉換回網裝配,至少這是我從Tlbimp獲得的。 – kamilw 2010-11-25 13:54:04