.Net编译之AnyCPU - 进阶者系列 - 学习者系列文章
Visual Studio是一款非常强大的IDE工具,它为我们提供了强大的编码、调试和测试等工具,为我们编好.NET软件提供了强大的支持。
今天早晨想到了Visual Studio编译模式中的CPU类型选项,所以写一下以记录。
从图中可以看到配置项和平台项。
点击“配置管理器”,打开配置窗口。
当然,这里的“活动解决方案配置”可以选择“Debug”和“Release”两项,分别对应调试版本和发布版本。这个在代码中我们可以编写调试代码以进行调试。
在”活动解决方案平台“中,就有”Any CPU”、”.86”、”.64“项。
这里可以选择的是x86的32位平台和x64的64位平台。
有时候还会有下列平台:
我们知道,现在的计算机系统分为32位和64位两种,所以对应的就有32位和64位的应用程序。
打开Windows任务管理器,可以看到32位和64位程序的显示区别(这里我的操作系统是windows 7 Professional 64位 with sp1)。
再来看看Visual Studio中的编译项,这里我们看看Debug和Release的区别。
看看输出。
再切换到Release,查看输出。
这里看不出什么问题,文件大小也是一致的。但是在实际的编译过程中,已经有调试项和发行项的区别了。
从上面我们可以看出,选择了x86生成的32位DLL和选择了x64生成的64位DLL从文件上是看不出问题来的。
但是我们都有一点常识,那就是32位程序可以运行在32位和64位的操作系统上;而64位程序只能运行在64位操作系统上。这个是因为CPU的位长而决定的。
从这里我们可以看出Visual Studio的强大和兼容性了。一般我们在编译的时候就选择”Any CPU“项就可以了,编译器会自动处理,而在实际的运行过程中也不需要考虑32位或者64位的操作系统,同样都能运行(这个因为.Net是一种编译性语言所决定的)。但是有一些Visual Studio 6所编译的程序暂时只能编译出32位的应用程序,所以如果迁移到.NET平台的话,那就需要编译成32位或者64位的编译器来进行编译以适应运行环境的问题了。
Ps.今天是周六,本人来这里墨迹了一下,写此文完全是因为想到了Any CPU项,在最后,祝大家周末快乐。。。
.Net编译之AnyCPU - 进阶者系列 - 学习者系列文章的更多相关文章
- jQuery插件库代码分享 - 进阶者系列 - 学习者系列文章
这些天将原来在网上找的jQuery插件进行了下整理,特此将代码分享出来给大家. 见下图结构. 对目录结构进行了分类.这里是插件列表. 这里总共收集了20来个插件.还有下面未进行划分的. 下面是DEMO ...
- VMWare 11安装操作系统 - 初学者系列 - 学习者系列文章
在2010年的时候,我写过一篇关于VMWare的安装操作系统的博文.但是今天在QQ群里有人问起VMWare安装操作系统的问题,虽然回答了,但是回头看了下当时那篇博文,决定重新写一文. 首先要获取VMW ...
- 使用U盘的PE系统安装Windows10操作系统 - 初学者系列 - 学习者系列文章
今天闲来无事,就把windows 10的安装再重写一个文(以前写过一个:安装免费的正版Windows10操作系统 - 初学者系列 - 学习者系列文章 ). 1. 制作一个WinPE的U盘. 相信现 ...
- 安装Windows10操作系统 - 初学者系列 - 学习者系列文章
今天无事,就将安装操作系统的几种方式进行了总结( https://www.cnblogs.com/lzhdim/p/13719725.html ).这篇博文主要是对安装windows10操作系统的过程 ...
- Windows无法安装到GPT格式磁盘的根本解决办法 - 初学者系列 - 学习者系列文章
上次在MSDN系统QQ群里有朋友问到在安装操作系统的时候有个问题:Windows无法安装到GPT格式磁盘,见图: 我在这里说下,使用网上方法的都是小白,就是说网上那些都是小白.下面介绍如何正确安装操作 ...
- 安装Windows11操作系统(不需要绕过TPM检测脚本等) - 初学者系列 - 学习者系列文章
Windows11操作系统是去年微软公司的最新力作.对于该操作系统的安装,网上有很多的教程了.这次主要写的是不需要绕过TPM检测操作安装Windows11操作系统. 1. 制作启动U盘: ...
- 使用Windows2003的IIS发布网站 - 进阶者系列 - 学习者系列文章
本系列文章目录:http://www.cnblogs.com/lzhdim/category/277150.html Windows 2003是一款不错的Windows服务器版本.在刚工作的前些年里, ...
- IT软件的编程方向 - 进阶者系列 - 学习者系列文章
IT软件经过了这么些年的发展,已经形成了很多的软件公司和开发团队,而且当前编程语言也有很多种,让开发人员能够有很大的选择.现在国际上的开发阵营基本分为ASP.NET.JAVA和PHP三种,但是每种开发 ...
- 编写Javascript类库(jQuery版) - 进阶者系列 - 学习者系列文章
这些年主要关注于项目管理方面的工作,编码就比较少了.这几天比较空闲,就想把原来的经验沉淀下来,一个是做好记录,以后如果忘记了还能尽快找回来,第二个是写写博文,算是练练手笔吧. 言归正传,这次写的是Ja ...
随机推荐
- C#值传递和按引用传递
知识点: 值类型和引用类型 为值类型,,据 对于引用类型来说,栈中存储的是堆中对象的地址 值传递和引用传递 对于值传递,传递的是栈中保存的数据 对于引用传递.传递的是栈本 ...
- (一个)AngularJS获取贴纸Hello World
一旦项目使用JQuery原创javascript,最近参加了一个项目,需要使用AngularJS.RequireJS比较框架,如汰渍.这里写一些博客,记录自己的学习过程,虽然冠以原来的名字,实际上都是 ...
- 有一个很大的整数list,需要求这个list中所有整数的和,写一个可以充分利用多核CPU的代码,来计算结果(转)
引用 前几天在网上看到一个淘宝的面试题:有一个很大的整数list,需要求这个list中所有整数的和,写一个可以充分利用多核CPU的代码,来计算结果.一:分析题目 从题中可以看到“很大的List”以及“ ...
- (大数据工程师学习路径)第四步 SQL基础课程----其他(基础练习到此为止)
一.准备 在正式开始本内容之前,需要先从github下载相关代码,搭建好一个名为mysql_shiyan的数据库(有三张表:department,employee,project),并向其中插入数据. ...
- (2)虚拟机下hadoop1.1.2集群环境搭建
hadoop集群环境的搭建和单机版的搭建差点儿相同,就是多了一些文件的配置操作. 一.3台主机的hostname改动和IP地址绑定 注意:以下的操作我都是使用root权限进行! (1)3太主机的基本网 ...
- System.arraycopy--findbugs检查引发的更改
EI2: This code stores a reference to an externally mutable object into the internal representation o ...
- linux Apache安装
原文:linux Apache安装 1. 下载apache,http://httpd.apache.org/download.cgi 通过这个官方网站,我们可以下到最新的版本.现在版本都 ...
- typedef和define具体的具体差异
1) #define这是一个预处理指令,简单的更换当预处理程序.不检查的正确性,仍不能正常关机进入的意思,那里只是已被展开时编译源代码会发现可能的错误和错误. 例如: #define PI 3.1 ...
- linux下一个eclipse组态jdk
今天ubuntu12.04安装eclipse,安装该想法eclipse后.还需要配置jdk.但没想到eclipse我有自己主动做好(但最主要的原因是我的linux在刚刚安装了一个jdk,假设有两个或更 ...
- 【足迹C++primer】47、Moving Objects(1)
Moving Objects(1) * 功能:Moving Objects * 时间:2014年7月17日08:46:45 * 作者:cutter_point */ #include<iostr ...