2

我有一个用于 titan-FTP 的名为 srxCOM.dll 的 dll,这个 dll 是为 VB6 制作的。我想在 Visual Studio .NET 中使用 dll,所以我使用 tblimp 创建了一个运行时可调用包装器,并将其命名为 srxCOMnet.dll。我已将 dll 作为参考添加到我的 VS 项目中,并且可以访问其中的函数。在构建项目时,我收到此错误,

错误:CLSID {A82C6CF0-7B42-4ABD-AECB-987E298A41AF} 由于以下错误而失败:80040154 未注册类(HRESULT 异常:0x80040154 (REGDB_E_CLASSNOTREG))。

经过一些研究,我尝试过:

  • 注册成功的 srxCOM.dll。
  • 注册失败的 RCW srxCOMnet.dll。
  • 将构建选项从任何 CPU 更改为 x86。

我不想在 VB6 中编写我的应用程序,还有什么可以尝试的吗?

4

1 回答 1

0

我最终使用了由titanFTP 提供的不同的dll。

我找到了这个 codeproject.com:

主互操作程序集只能引用其他主互操作程序集。如果程序集从第三方 COM 类型库中引用类型,则必须先从发布者获取主互操作程序集,然后才能生成主互操作程序集。如果您是发布者,则必须在生成引用主互操作程序集之前为依赖类型库生成主互操作程序集。

请参阅下面的此链接

codeproject Using-Unmanaged-VB-Code-in-NET

于 2018-01-19T18:45:32.957 回答