64位程序 调用32位 DLL
场景:
64位程序调用32位dll的问题
现在在64位的win7上用vs2008上面写了一个程序,是64位的,但是这个程序要调用32位的dll,对应的lib也是32位下的。结果发现编译出错,出现链接错误。请问应该如何解决?64位的程序能不能调用32位的dll呢?谢谢!
------最佳解决方案--------------------
不能调用。
要么重新编译dll为32位的。
如果没有源码,那写一个32bit的exe代码,编译链接该dll,在后台运行。
然后与64bit的程序通信,交换数据。
------其他解决方案--------------------
其实64位的EXE调用32的DLL应该没什么问题的吧...我们玩儿的游戏,那么多都带DLL,也不会粗问题的
------其他解决方案--------------------
64位的EXE调用32的DLL,是不行的
因为你玩的游戏,系统都有32和64版本
说过最简单的,32位和64位的函数压栈是不同的,64位的要用到寄存器
还有一些指针,句柄等数据类型的sizeof都不一样
------其他解决方案--------------------
32exe调用32dll,然后32exe与64exe通信
------其他解决方案--------------------
我觉得是64的虚拟了32的模式能搞定的吧~
------其他解决方案--------------------
64位程序应该不能调用32位的dll,直接编译生成32位程序可以在64位操作系统上运行。
64位程序调用32位dll的问题
现在在64位的win7上用vs2008上面写了一个程序,是64位的,但是这个程序要调用32位的dll,对应的lib也是32位下的。结果发现编译出错,出现链接错误。请问应该如何解决?64位的程序能不能调用32位的dll呢?谢谢!
------最佳解决方案--------------------
不能调用。
要么重新编译dll为32位的。
如果没有源码,那写一个32bit的exe代码,编译链接该dll,在后台运行。
然后与64bit的程序通信,交换数据。
------其他解决方案--------------------
其实64位的EXE调用32的DLL应该没什么问题的吧...我们玩儿的游戏,那么多都带DLL,也不会粗问题的
------其他解决方案--------------------
64位的EXE调用32的DLL,是不行的
因为你玩的游戏,系统都有32和64版本
说过最简单的,32位和64位的函数压栈是不同的,64位的要用到寄存器
还有一些指针,句柄等数据类型的sizeof都不一样
------其他解决方案--------------------
32exe调用32dll,然后32exe与64exe通信
------其他解决方案--------------------
我觉得是64的虚拟了32的模式能搞定的吧~
------其他解决方案--------------------
64位程序应该不能调用32位的dll,直接编译生成32位程序可以在64位操作系统上运行。