從VB

2009-09-10 40 views
0

調用.net dll是否需要.net框架才能運行從c#生成的.tlb文件?從VB

+0

如果這是VB 6或VBScript,我相信你將不得不爲你的C#類創建一個Runtime Callable Wrapper。 –

+0

我已經從c#類庫中生成了tlb文件。我的tb在我的vb項目中使用。它在我的開發電腦中不工作。 我需要.net框架才能在vb 6.0中使用tlb嗎? – Samjog

回答

0

在VB.Net中,您可以正常使用它。在以前的版本中使用Runtime Callable Wrapper。更多的信息在這裏this KB article

1

你必須:

  • 確保你想在你的VB應用程序使用類是標記有ComVisible特性
  • 確保你想在你的VB應用程序使用了一個GUID分配給該班它
  • 它是創建這些類的
  • 的接口使用regasm
  • NET框架(運行時)需要安裝創建從組件一個TLB文件最佳實踐。 regasm不會將您的程序集「編譯」爲另一種語言或不需要.NET運行時的東西。創建一個運行時可調用的包裝器,以便可以從VB6調用.NET程序集,這意味着.NET運行時仍然是必需的。
+0

對於我的製作,我無法強制安裝.net框架。 我的要求是從vb 6.0調用Web服務。我爲代理類創建了一個com intreop,如果我在所有客戶端機器上都有.net框架,則此工作正常。另一種方法是使用soap toolkit 3.0,但它不支持在Vista中,我如何製作一個通用的解決方案? – Samjog