博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
在64位机器上无法调用迅雷的问题
阅读量:5923 次
发布时间:2019-06-19

本文共 566 字,大约阅读时间需要 1 分钟。

问题定位:源代码是在32位的win8上编译的,在32位的XP 和win 7下运行调用迅雷没问题,但有用户表示在64位的机器上无法正常调用迅雷。

经查,在64位的机器上的确无法调用迅雷,日志文件显示,要调用的com组件没有注册。但测试的win2008上的迅雷是正常的,排除迅雷的问题。

StackOverFlow网站上的一个问题提醒了我,64的平台可能跟32位的com接口不匹配!()

 

后又查资料得知,VS默认的编译平台是AnyCpu,意思是编译出来的程序包含两套运行逻辑。例如,我机子是32位的,如果以AnyCpu的方式编译,编译出的程序如果运行在32位的windows上则是以32位的方式运行,但如果你是64位的机器,那么就会以64位的方式运行。()

 

这样的逻辑似乎没有什么问题,但问题是在我的程序中默认调用的是32位的迅雷Com组件,也就是说,在64位的机器上,我是以64位的方式调用32位的Com组件,这就是问题的根源。

 

了解了问题的根源,解决方案就很简单的了,将VS的目标编译平台改为x86,也就是说即使在64位的机器上仍然以32位的方式运行。

 

问题解决。

 

 

PS:虽然问题解决了,但是我在尝试在32位的机器上并不能不能添加64位的com组件引用,这是不是说无法在32位的机器上调用64位com组件,生成64位的应用程序了呢?

 

 

转载地址:http://menvx.baihongyu.com/

你可能感兴趣的文章
Unix环境部署
查看>>
linux启动的过程
查看>>
phantomjs学习之截图
查看>>
Spring学习日志之纯Java配置的MVC框架搭建
查看>>
解决Incorrect integer value: '' for column问题
查看>>
【转】谈大数据时代的数据治理
查看>>
BZOJ 1018 堵塞的交通traffic(线段树)
查看>>
Meteor Match
查看>>
canvas 时钟
查看>>
Linq之Linq to Objects
查看>>
python全栈开发笔记---------数据类型---字典方法
查看>>
ios项目中引用其他开源项目
查看>>
分治优化决策单调性
查看>>
Nginx与Apache简单对比
查看>>
常见的HTTP返回状态值
查看>>
Centos防火墙添加IP白名单
查看>>
OpenCV学习笔记——疑问
查看>>
Mac使用brew安装nginx,并解决端口访问权限问题
查看>>
【云图】如何建立北京三甲医院云图,不用数据库持有自己数据!
查看>>
分布拟合——正态/拉普拉斯/对数高斯/瑞利 分布
查看>>