1

我有两台测试机器,机器 A 和 B(均为 64 位)。有一个使用 Vbsql OLE 自定义控制模块 (Vbsql.ocx) 的 VB6 应用程序。

该 VB 应用程序在机器 A 中运行良好,没有任何错误,但在机器 B 中执行时失败并显示以下错误消息。

在此处输入图像描述

注意:我从机器 A 复制了 ocx 文件以在机器 B 上注册它,但它无法注册,错误截图如下所示。

在此处输入图像描述

两台机器都没有VB6 IDE,所以我可以调试。

4

4 回答 4

1

您是否尝试过运行 32 位版本的regsvr32?

%WINDIR%\...\SysWOW64\regsvr32 vbsql.ocx

64 位版本不会加载这个(大概)32 位 DLL。

于 2013-01-09T12:08:57.620 回答
1

我找到了一种注册 VBSQL.OCX 文件的方法。

使用依赖walker,我发现机器B中缺少NTWDBLIB.dll文件,因此将其复制到SYSWOW64文件夹中并使用提升的命令提示符进行注册。

于 2013-02-04T11:04:19.020 回答
0

您可以将 ocx 文件与可执行文件放在同一目录中。

于 2013-01-09T12:14:54.510 回答
0

使用以下运行命令来注册 OCX

使用以下运行命令来注册 OCX

于 2017-03-12T15:54:14.007 回答