32位程序可以调用64位的库吗?

从来不作 2014-07-02 05:10:25
电脑环境为win7 64位,我使用vs2010调试一个win32程序。在这个win32程序中,我调用64位的库,程序报错:
fatal error C1905: 前端和后端不兼容(必须以同一处理器为目标)
fatal error LNK1257: 代码生成失败
好像win32程序是不能直接调用64位的dll的,那可以直接调用64位的lib吗?(本人还抱有一点侥幸心理)
如果不能直接调用,有没有什么方法可以间接调用呢?
...全文
1821 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
梁苏彬 2015-01-20
  • 打赏
  • 举报
回复 1
楼主是用LoadLibrary动态加载dll的吧?如果你是静态加载dll的api,你会发现两个平台不同连链接都过不去,64位的库函数是没有下划线前缀的,32位的有
赵4老师 2014-07-03
  • 打赏
  • 举报
回复
引用 8 楼 banshichiqinglangzi 的回复:
[quote=引用 7 楼 syrchina 的回复:] 不好吧。。。。。。。。。。。。。。。。。。。。。
我决定把程序全部换成64位了[/quote] 我预言,楼主在有生之年,会决定把程序全部换成128位。
rickys2080 2014-07-03
  • 打赏
  • 举报
回复
引用 8 楼 banshichiqinglangzi 的回复:
[quote=引用 7 楼 syrchina 的回复:] 不好吧。。。。。。。。。。。。。。。。。。。。。
我决定把程序全部换成64位了[/quote] 那是最好的
从来不作 2014-07-03
  • 打赏
  • 举报
回复
引用 7 楼 syrchina 的回复:
不好吧。。。。。。。。。。。。。。。。。。。。。
我决定把程序全部换成64位了
rickys2080 2014-07-03
  • 打赏
  • 举报
回复
不好吧。。。。。。。。。。。。。。。。。。。。。
Dobzhansky 2014-07-02
  • 打赏
  • 举报
回复
多进程
mujiok2003 2014-07-02
  • 打赏
  • 举报
回复
还是老实改成64为程序吧。
www_adintr_com 2014-07-02
  • 打赏
  • 举报
回复
这和 32 位程序能不能调用 16 位 DOS 版本的 lib 是一样的。 32 位和 64 位属于不同的指令集了
Saleayas 2014-07-02
  • 打赏
  • 举报
回复
进程外组件。
赵4老师 2014-07-02
  • 打赏
  • 举报
回复
不要做A语言代码修改为B语言代码的无用功。 也不要做用A语言代码直接调用B语言代码库这样复杂、这样容易出错的傻事。 只需让A、B语言代码的输入输出重定向到文本文件,或修改A、B语言代码让其通过文本文件输入输出。 即可很方便地让A、B两种语言之间协调工作。 比如: A将请求数据写到文件a.txt,写完后改名为aa.txt B发现aa.txt存在时,读取其内容,调用相应功能,将结果写到文件b.txt,写完后删除aa.txt,改名为bb.txt A发现bb.txt存在时,读取其内容,读完后删除bb.txt 以上A可以替换为任何一种开发语言或开发环境,B可以替换为任何一种与A不同的开发语言或开发环境。 除非A或B不支持判断文件是否存在、文件读写和文件更名。 但是谁又能举出不支持判断文件是否存在、文件读写和文件更名的开发语言或开发环境呢? 共享临时文本文件这种进程之间的通讯方法相比其它方法的优点有很多,下面仅列出我现在能想到的: ·进程之间松耦合 ·进程可在同一台机器上,也可跨机,跨操作系统,跨硬件平台,甚至跨国。 ·方便调试和监视,只需让第三方或人工查看该临时文本文件即可。 ·方便在线开关服务,只需删除或创建该临时文本文件即可。 ·方便实现分布式和负载均衡。 ·方便队列化提供服务,而且几乎不可能发生队列满的情况(除非硬盘空间满) ·…… 请楼主自行将A语言替换为64位程序,B语言替换为32位程序。
jmppok 2014-07-02
  • 打赏
  • 举报
回复
当然不可以,别想了 反过来可以

24,860

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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