Any CPU和x86的可执行文件(EXE)或dll(动态链接库)在32位和64位下的区别:
1、x86平台编译出来的exe(可执行文件)或dll(动态链接库)都是32位的
2、x64平台编译出来的exe(可执行文件)或dll(动态链接库)对应的则是64位的。
3、Any CPU下的exe取决于当前的操作系统,系统是32位的,则编译出来的程序就是32位的,是64位的就是64位程序。
4、Any CPU编译出来的程序取决于操作系统
5、Any CPU编译出来dll则取决于调用它的主程序
6、由于系统中可能存在第三方的32位DLL,一旦使用64位执行的EXE,在调用到32位的DLL时,将无法调用
7、dll一般采用Any CPU平台编译,而主程序一般采用x86平台编译。
8、DLL的实际运行方式是受调用它的EXE所影响的,因此设为Any CPU就可以了
9、32位程序不能加载64位的dll,更不能调用其中的类、方法和对象
10、64位程序不能加载32位的dll,更不能调用其中的类、方法和对象
在不清楚客户的电脑是什么类型的操作系统的情况下,或者两者都有的时候,
则主程序采用x86平台编译,dll采用Any CPU平台编译