[問題] 關於 C# 產生 VB6 元件的問題
小弟目前的工作中 有一部分是使用 C# 製作給 VB6.0 開發用的 COM 元件
最近遇到的問題是
供應商提供一套在 "C#" 上開發的 SDK
而我把此SDK再包一層介面給 VB6.0 使用
結果 VB6.0 在執行時 直接跳 Run Time Error-- Automation Error 出來
而如果在 C# 中 , 使用此 SDK 是可以正常運作的
我的程式架構大致如下
[ComVisible(true)]
[ClassInterface(ClassInterfaceType.AutoDual)] //指示如果完全沒有產生介面時,要向 COM 公開的介面所產生的類別介面型別。
public class MyClass
{
private VendorClass mTool;
public MyClass()
{
mTool = new VendorClass();
}
}
按照以上的寫法 並使用 regasm 註冊後
VB6.0 中可以看到 MyClass , 不過要產生 MyClass 的實體時 ,
程式就跳 Run Time Error-- Automation Error
例如:
Dim MyTool as MyClass
Set MyTool = New MyClass ' 這裡就會跳 Run Time Error-- Automation Error
想請問有經驗的版友
有沒有什麼方法可以解決這個問題
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.128.231.175
→
06/11 16:09, , 1F
06/11 16:09, 1F
→
06/11 23:00, , 2F
06/11 23:00, 2F
→
06/11 23:00, , 3F
06/11 23:00, 3F
C_Sharp 近期熱門文章
PTT數位生活區 即時熱門文章