看板 C_Sharp 關於我們 聯絡資訊
小弟目前的工作中 有一部分是使用 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
iiscon:C# 編譯時目標平台有選X86嗎? 06/11 16:09
AJE:有選X86 後來抓到問題了 因為廠商提供的只能用 3.5 Framework 06/11 23:00
AJE:不支援4.0..... 06/11 23:00