如何在windows vista64bit使用遗留的32bit的模块

来源:互联网 发布:会议室预约系统源码 编辑:程序博客网 时间:2024/06/05 17:02

如果你的32bit模块是可执行文件,恭喜,  wow64可以完全运行你的程序。

如果你的32bit模块是有源代码的,没有嵌入的x86也恭喜,你设置到64bit的编译环境编译到64bit就可以了,一只需要少少修改.

如果你没有源代码,只有编译好了的dll,那就麻烦了,文档和实践都说明:

1. 64bit的进程不能加载32bit的dll

2.32bit的进程不能加载64bit的dll.

我对这两点持怀疑态度,虽然我也经了实践证明.

但应该我想还有办法的,可是我现在没有找到,没有想到,起码,内核状态的驱动文件可以同时让32和64bit的程序进行访问, 通过同一个ioctl码,  并且,内核驱动可以知道这个进程是32bit或64bit的。

ok, 先不管,现在暂时想到的方法,使用ipc进行代理,如socket, lpc/rpc, dcom等,让32bit和64bit的进程间进行通讯,从而达到目的.

我使用过socket进行进程间通讯, 麻烦。

COM也是比较麻烦,这里也有一些有趣的问题,稍后我们讨论.

原创粉丝点击