qt运行位数 与 opencv 位数的关系

在Windows 10 64位系统中,使用Qt 5.11.3(64位)编译的程序能够调用64位DLL。通常情况下,64位程序会加载64位DLL。若需调用32位DLL,需通过COM组件实现。微软官方建议,在64位进程中,通过封装32位DLL到COM服务器来实现调用。本文详细探讨了64位程序与DLL的交互机制。
摘要由CSDN通过智能技术生成

qt的版本及生成的程序是x64还是x86

win10 64位系统中,qt版本为5.11.3 是64位版本,其生成的程序为64位的(程序为64位,是因为qt是64位的,如果qt可以为32位,则生成的程序为32位的)。

从下图可以看到qt为64位的

qt程序调用64的dll(一般操作)

64位的程序按照平常加载动态库的方式调用64位的dll,如果调用32位的dll需要将dll封装成com组件,然后再由64位的程序调用.

但一般是64的程序 调用64位的dll。

参考:

微软公司的官方网站针对这个问题描述如下:
在64位的windows系统中,一个64位进程不能加载一个32位dll,同理一个32位进程也不能加载一个64位dll。但是,64位windows支持64位和32位进程(包括本机或跨机)间进程间通信(RPC)。在64位windows中,一个进程外32位COM服务器能够与64位客户端进行通信,同样一个进程外64位COM服务器也能与32位客户端进行通信。因此,如果你有一个32位COM无法识别的DLL,你可以将它封装到一个进程外COM服务器中并在一个64位进程中用COM配置调用DLL。64位进程调用32位DLL详解(利用COM)_qianpeng4的博客-CSDN博客_64位程序调用32位dllhttps://blog.csdn.net/qianpeng4/article/details/80492818?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-0.pc_relevant_antiscanv2&spm=1001.2101.3001.4242.1&utm_relevant_index=3

可以通过dumpbin.exe  /headers  查看  本dll是否为64位的

例子: dumpbin.exe /headers E:\工具\opencv64位-243\vc10\bin\opencv_core243d.dll

下图中可以看到是64位的

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值