Interop Forms Toolkit DLL和“类不支持自动化或不支持预期的接口”错误

时间:2010-06-18 20:06:44

标签: winforms vb6 interop com-interop winforms-interop

我有一个.NET WinForms应用程序,我使用Interop Forms Toolkit 2.1将其转换为COM dll。该应用程序的安装项目既有我的tlb,也有Microsoft.InteropFormTools.tlb文件设置为注册为vsdrpCOM。该项目的先决条件是确保安装Windows Installer 3.1,.NET Framework 3.5 SP1和Microsoft Interop Forms Redistributable Package 2.0a。

当我在安装了Visual Studio 2010和Visual Studio 6的Windows XP机器上本地运行时,它可以正常工作。但是,在这台Windows XP计算机上,我收到一条错误消息:“类不支持自动化或不支持预期的接口。”

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

我明白了。对于那些遇到相同问题的人,请执行以下操作:

  1. 进入Visual Studio 2005,2008或2010(我使用2010)并构建您的Interop表单。
  2. 然后,进入Visual Basic 6.如果您的库尚未引用,请参考 图书馆。
  3. 构建您的VB6可执行文件。
  4. 返回Visual Studio(.NET版)并仅构建安装程序。这样安装程序和VB6都具有相同的.tlb文件
  5. 你很高兴。感谢Kris的建议!

答案 1 :(得分:0)

您要在其上安装应用程序的计算机上有RegAsm程序集(请参阅stackoverflow for more)。程序集也应该位于运行VB6应用程序的目录中,或者安装在GAC