打开 VB6 项目时出现 FM20.dll 和 crystl32.ocx 的问题

Problems with FM20.dll and crystl32.ocx while opening VB6 project

一个客户最近给了我一些涉及他们(旧的)VB6 程序的工作。我已经在 Windows XP(32 位)的虚拟机中成功安装了 VB6,并且运行良好。问题是当我尝试打开客户端程序时。弹出以下消息:

crystl32.ocx could not be loaded--Continue Loading Project?

FM20.DLL could not be loaded--Continue Loading Project?

在那之后有一堆警告 crystl32.ocx。 所以我尝试用 regsvr32 注册依赖项,但它说找不到模块,即使它们就在那里。谷歌搜索这个问题让我下载了 Dependency Walker 并找到了这些文件需要哪些 dll 文件,它们是:

msvcr100.dll

IEShims.dll

wer.dll

crpe32.dll

下载完这些dll文件后,我尝试注册第一个,但它说“找不到dllregisterserver入口点”。所以我先尝试注销,但是找不到模块。

我重装了好几次VB6,都没有效果。关于如何使这项工作有任何想法吗?

Crystl32.ocx 和 Crpe32.dll 是 Crystal 报告 运行 时间文件。

FM20.DLL 是 Microsoft Form 2.0 库,带有一些标准的 GUI 控件,如标签、文本框、复选框等。 Msvcr100.dll 是的一部分 MS Visual C++ 2010 Redistributable Package

如果您的客户端程序有安装程序,您应该在使用 VB6 IDE 打开源代码之前 运行 安装它。这样你就可以获得 VB6 程序所需的所有依赖项。 如果没有,请 post 您的 VB6 应用程序的 vbp 文件。

感谢大家的帮助!最终的解决方案是安装客户后来提供给我的 CR 4.6(正如@BrianMStafford 所建议的)、VB6 SP6 和 Office 2007,以及 SP3。 至此,我已经成功完成了项目 运行,非常感谢大家!!