c#目标平台

说说在c#项目设置中平台目标

在我们新建一个c#项目之后,选中建好的项目,alt+enter键,打开项目属性,在选择生成.系统是中文的话,就能看到下图.
c#程序设置平台目标
下拉框中的选项,默认为AnyCPU,通常一般不进行设置,只有个别的时候需要我们手动设置,什么时候需要设置呢?等下再说,先说说为什么一般默认为AnyCPU,是因为AnyCPU生成的可执行程序分别可以在32位和64位系统运行,在首次执行程序的时候, .Net运行时(包含mono/.net core)会进行即时编译(JIT)为不同的机器码对应不同系统适应和优化.在.Net 4.0微软对JIT也进行了多线程的支持,这样可以让程序首次运行变得更快.

在说说首选32系统

如果系统是64位的,平台目标也是的默认的话,是默认选择的,为什么会这样的!

是因为c#编译器对32位程序编译时,优化更成熟,优化的也比较好.所以也就推荐首选32位,当然如果你的系统是32位的话,这项是不可选的,还有就是平台目标在选择x86和x64的时候,该项也是不可以选的.

什么时候平台目标需要选择x64呢?

在我们程序调用com是64位组件或者间接调用c/c++生成的动态库(dll)时,就需要手动设置为x64,可以先看看c#独立调用halcon .不安装halcon环境,将64位的halcon.dll文件拷贝到C:\Windows下,进行调用的话就会报异常,设置为x64,就可以正常调用了.

vs还是很贴心的,设置平台目标可以不用这么麻烦.可以在工具栏中直接修改.
修改平台目标
秋风 2017-06-22