64位windows下不能调用32bit dll
Posted
技术标签:
【中文标题】64位windows下不能调用32bit dll【英文标题】:Can't call 32bit dll under 64bit windows 【发布时间】:2011-01-12 08:49:28 【问题描述】:我尝试从我的 JS 脚本中创建一个 COM 对象,如下所示:
function main()
var MyApplication = new ActiveXObject("Base.Application");
main();
我收到错误消息:“自动化服务器无法创建对象”。此错误发生在 Windows 2003 64 位上。该 dll 是 32 位的,在 32 位系统上运行良好。
我在 64 位系统上尝试了 两个 版本的 Regsvr32.exe,两个版本都告诉我 dll 注册成功。
不幸的是,错误消息没有告诉我为什么它不能创建对象。原因未知,可能是因为它还没有注册而无法创建对象,也可能是完全不同的东西......
我还为这个 dll 添加了完整的权限。
我不知道我还能做什么,你有什么想法吗?
修改后
好的,我知道这个DLL是在系统下注册的(在注册表中找到的),为什么我不能从中调用任何COB对象呢?
【问题讨论】:
【参考方案1】:可能是因为您的进程是 64 位,而您尝试调用 32 位 dll? (不过有一些技巧,在这种情况下就像here 描述的那样)。
【讨论】:
以上是关于64位windows下不能调用32bit dll的主要内容,如果未能解决你的问题,请参考以下文章
针对Windows 64位系统中Matlab没有LED Control Activex控件的解决方法