64位的win7系统,用vs2012生成release下的exe程序,在其他win10、win7调用dll失败问题

mcfly29 2017-09-04 05:00:48
在64位的win7上用vs2012设计一个调用别人的dll,来读取外部设备采集的数据的程序,在release下生成exe程序,自己的电脑可以打开设备读到数据,复制整个releasee文件和dll,在其他64位的win10、win7电脑运行,调用外部dll时,可以查找到外部设备,可是打开设备老失败,也读不到数据。
dll是采集数据的设备生产商写的,查找、打开和读取数据的函数都是在同一个dll文件里的,我想问问为什么会这样?是系统不同的问题,还是我缺少了vs2012的什么运行库,要怎么确定?
用depends查看程序所依赖的dll文件,把缺少的dll都下载补齐了,还是有这个错误,请问是什么意思?
Error: Modules with different CPU types were found.
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module.
...全文
506 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
draculamx 2017-09-08
  • 打赏
  • 举报
回复
打开设备失败,总有个返回值吧,你如果是做二次开发的,就查查那个返回值是多少,然后看手册,还不明白就给供应商的技术部门打电话,发邮件,DLL是他们写的,你不可能比他们更清楚,我觉得这是最快最省事的方法。我做二次开发的时候,就经常打电话给供应商
赵4老师 2017-09-08
  • 打赏
  • 举报
回复
学会使用depends.exe查看exe依赖的dll及其版本号。
mcfly29 2017-09-08
  • 打赏
  • 举报
回复
引用 12 楼 zhoujg751206 的回复:
其实dll都差不多。那个问题不大。还是设备的参数是不是换电脑了不一样。比如如果是串口。别的电脑串口一样吗;
采集卡是通过USB接入电脑的,设备管理器那里只有USB输入设备,没有看到串口号
mcfly29 2017-09-07
  • 打赏
  • 举报
回复
引用 8 楼 mcfly29 的回复:
[quote=引用 6 楼 mcfly29 的回复:]
[quote=引用 5 楼 zhao4zhong1 的回复:]
严格区分32/64位exe和dll
安装相应的VS2012可再发行包。

赵老师可以解释一下吗,还有我用vs2012上的InstallShield安装部署项目,左下角提示创建项目失败就没了,请问是怎么回事,以前都没遇过[/quote][/quote]
赵四老师,是这样生成吗
我这样生成release下的exe程序,到其他电脑还是不行
昨天用VS2012自带的安装部署工具打包成安装包,安装到其他电脑也不行,请问有什么解决方法没有
mcfly29 2017-09-07
  • 打赏
  • 举报
回复
引用 6 楼 mcfly29 的回复:
[quote=引用 5 楼 zhao4zhong1 的回复:]
严格区分32/64位exe和dll
安装相应的VS2012可再发行包。

赵老师可以解释一下吗,还有我用vs2012上的InstallShield安装部署项目,左下角提示创建项目失败就没了,请问是怎么回事,以前都没遇过[/quote]
  • 打赏
  • 举报
回复
其实dll都差不多。那个问题不大。还是设备的参数是不是换电脑了不一样。比如如果是串口。别的电脑串口一样吗;
  • 打赏
  • 举报
回复
打开设备老失败。不能的机器。串口号不一样吗?你是什么设备?打开设备的参数一样吗?
qq_40138079 2017-09-07
  • 打赏
  • 举报
回复
dll是采集数据的设备生产商写的...这个动态库可能不是vs2012编写的,得打上对应的vs版本再开发包的补丁
赵4老师 2017-09-05
  • 打赏
  • 举报
回复
严格区分32/64位exe和dll 安装相应的VS2012可再发行包。
smwhotjay 2017-09-05
  • 打赏
  • 举报
回复
Warning: At least one module has an unresolved import due to a missing export function in a delay-load dependent module. 模块至少有1个为解决的导入 丢失导出函数在延迟加载的模块里 找对方要来对应的dll 你找来的可能不对应
mcfly29 2017-09-05
  • 打赏
  • 举报
回复
引用 1 楼 zgl7903 的回复:
驱动是否正常? 是否缺少其它DLL的依赖库?
驱动是正常的,用开发采集卡的公司提供的采集软件在每台电脑都可以采集到数据,是说采集卡的DLL还缺少依赖库吗
CT8100 2017-09-05
  • 打赏
  • 举报
回复
https://software.intel.com/zh-cn/forums/intel-visual-fortran-compiler-for-windows/topic/393036
赵4老师 2017-09-05
  • 打赏
  • 举报
回复
要部署的平台对应exe没生成吧。我猜。
mcfly29 2017-09-05
  • 打赏
  • 举报
回复
引用 5 楼 zhao4zhong1 的回复:
严格区分32/64位exe和dll 安装相应的VS2012可再发行包。
赵老师可以解释一下吗,还有我用vs2012上的InstallShield安装部署项目,左下角提示创建项目失败就没了,请问是怎么回事,以前都没遇过
zgl7903 2017-09-04
  • 打赏
  • 举报
回复
驱动是否正常? 是否缺少其它DLL的依赖库?

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧