gpt4 book ai didi

dll - 64 位操作系统上的 32 位 ActiveX DLL 问题

转载 作者:行者123 更新时间:2023-12-01 13:03:13 27 4
gpt4 key购买 nike

我正在尝试将分类 ASP 站点移动到 64 位 Windows 2008 服务器。我现在遇到的问题(如果/当我通过这个问题时可能还有其他问题)是该站点依赖于一个旧的 VB6 DLL(32 位),我得到了臭名昭著的“ActiveX 组件无法创建对象”错误。

我试图通过使 IIS7 与简单的 VBS 脚本文件一起工作来将 IIS7 排除在外,这给了我同样的东西。

此 DLL 唯一的依赖项是 ADO 2.6,据我所知,Windows 2008 不支持也不需要它,因为包含 WDAC 并已取代 MDAC。

我使用以下方法注册我的组件:

C:\Windows\SysWOW64\regsvr32.exe "C:\MyVb6Com.dll"

我检查了注册表,那里的一切似乎都是正确的。我的 VBS 文件也很简单:

CreateObject("MyVb6Com.Session")

它立即抛出错误:

ActiveX component can't create object: 'MyVb6Com.Session'

在 IIS 端,我已经尝试更改应用程序池的设置以启用 32 位应用程序,但这也没有帮助(当然,如果我无法使用 VBS 文件,这两种方式都不会有什么不同)。

非常感谢任何帮助。

最佳答案

确保您也使用 32 位 WScript 来测试您的 VB 脚本。双击它将使用 64 位 - 这将有助于诊断您的问题。

关于dll - 64 位操作系统上的 32 位 ActiveX DLL 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4600366/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com