标签: vb6 activex regsvr32
我有两台测试机器说机器A和B(都是64位)。有一个VB6应用程序,它使用Vbsql OLE Custom控制模块(Vbsql.ocx)。
VB应用程序在机器A中没有任何错误的情况下运行正常但在机器B中执行时失败并显示以下错误消息。
注意:我从机器A复制了ocx文件,在机器B上注册但无法注册,错误截图如下所示。
两台机器都没有VB6 IDE,所以我可以调试。
答案 0 :(得分:1)
您是否尝试过运行32位版本的regsvr32?
regsvr32
%WINDIR%\...\SysWOW64\regsvr32 vbsql.ocx
64位版本不会加载此(可能是)32位DLL。
答案 1 :(得分:1)
我找到了一种注册VBSQL.OCX文件的方法。
使用依赖walker我发现机器B中缺少NTWDBLIB.dll文件,因此被复制到SYSWOW64文件夹并使用提升的命令提示符进行注册。
答案 2 :(得分:0)
您可以将ocx文件放在与可执行文件相同的目录中。
答案 3 :(得分:0)
使用以下运行命令注册OCX