运行时可调用包装器类未注册



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

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

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

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

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

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

我发现这个 codeproject.com:

主互操作程序集

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

请参阅下面的此链接

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

最新更新