vs项目属性中目标平台x86,x64,any cpu的区别

一、Any CPU平台下

 

编译出来的exe(可执行文件)或dll(动态链接库)是兼容的,取决于当前的操作系统,若操作系统是32位的,则编译出来的程序会以32位的软件模式运行,而在64位操作系统下则会以64位的软件模式运行。

 

 

二、x86平台下

 

强制生成的软件为32位软件,不管操作系统是32位还是64位都是以32位模式运行。

 

 

三、x64平台下

 

与x86类似,强制生成为64位软件,只能在64位模式运行。

 

 

五、x86、x64、Any CPU选择的注意事项

 

1、若主程序的文件是x86平台下编译的,而它所依赖的一个项目(或动态链接库)是由x64位平台编译出来的,则会提示“未能加载文件或程序集…或它的某一个依赖性。试图加载格式不正确的程序。”之类的错误。这是因为32位程序不能加载64位的dll,更不能调用其中的类、方法和对象等。

 

2、若主程序是由x64平台编译出来的,而它所依赖的一个项目(或动态链接库)是由x86位平台编译出来的呢会报错!

 

3、若dll由Any CPU编译的,那么这个dll就可以被32位和64位的主程序调用

 

 

文章转载自:vs项目属性中目标平台x86,x64,any cpu的区别  http://www.studyofnet.com/news/1263.html

 

来源:whaxrl

声明:本站部分文章及图片转载于互联网,内容版权归原作者所有,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2016年4月26日
下一篇 2016年4月26日

相关推荐