0

我正在编写一个需要使用第三方 ocx 控件的应用程序。在我的 Inno Setup 脚本中,我包含以下行:

Source: C:\aPath\aControl.ocx; DestDir: {app}; Flags: restartreplace sharedfile regserver

看起来控件已注册,但安装的应用程序给我 EOleSysErrors 说在 Win2000 中工作时控件未注册。关于这里发生的事情或如何解决它的任何想法?

谢谢,一如既往!

ps 我正在使用管理员级别的控制。我认为在注册 ActiveX 控件时总是需要这样做。(是对的吗?)

4

2 回答 2

3

如果问题仅出现在 Windows 2000 上而不出现在更高版本的操作系统上,这可能是由于缺少依赖项造成的,例如 DLL 或其他不属于标准 Windows 2000 安装的 OCX 文件。Microsoft C 运行时库的版本浮现在脑海中。要追踪这些类型的问题,您应该使用免费的Dependency Walker。将其复制到有问题的机器并使用它打开 OCX 文件,然后将显示任何缺少的库入口点或库。

您还可以使用该工具作为调试器来运行您的应用程序。它将显示有关加载的模块和类似内容的大量信息,这些信息可能有助于查明问题。

是的,要注册 OCX,您需要管理员或高级用户帐户。

于 2009-12-02T08:46:06.763 回答
0

我能想到的最可能的原因是你没有在机器上安装 VCRedist_x86.exe。

于 2010-06-29T13:30:49.490 回答