.net framework4与其client profile版本的区别

简而言之,client profile版本是完整版本的一个子集。包含大多数最常用的功能并减小了体积,以便更容易的安装和发布,同时还有微软所声称的一些好处,比如因为减少了某些库,所以使其更加安全等等。

从.net 2.0开始,在xp下发布一个小程序却要附带一个20多M的.net 2.0 redist安装包就是件尴尬的事情。用户会问,这么一个小功能为什么需要几十M的安装包?若只发布程序而把.net 库让用户自行下载安装,则是更不能被用户接受的事情。

xp仍旧在中国会存活很长时间,而.net已经进化到4.X。安装包更大了。这对开发者和用户来说无疑都是一种痛苦。于是从3.5开始,出现了client profile版本。

4.X的client profile版本比3.5 client profile版本的一点改进是现在它能支持所有版本系统,从xp到win7 从32到64位。具体Clent profle版本的好处:

1 减少发布时间。

2 减少发布可能的错误。

3 减少发布媒体 的容量。

4 更加安全,因为把Asp.net等一些组件排除在外,所以更少受到攻击。

那么具体能减少多少容量呢?其实也不是很多,大约7-8M左右。但仍然值得选择。

对于绝大多数客户端桌面应用(包括winform和wpf),MS推荐 使用client profile版。当然需要注意的是,子集不可避免会有一些功能限制,比如以此创建的项目不可以引用Client profile之外的程序集等。

from :http://blog.163.com/squall_smile/blog/static/60349840201421211343159/

时间: 2024-10-09 13:50:14

.net framework4与其client profile版本的区别的相关文章

.NET Framework 4 与.NET Framework 4 Client Profile有什么区别?

.net framework 自从 2002 年发展至今,已经历了好几个版本,1.0, 1.1, 2.0, 3.0, 3.5 等不同的版本更替,.net framework 的Redistributable Package也愈来愈大,到了 .NET Framework 3.5 SP1 时已经膨胀到 231MB,除非软件本身就很大,不然对于 .NET 软件的Redistribute是相当不利的,除非客户端本身就有安装 .NET Framework,否则几乎都要夹带一个 .NET Framework

Net Framework 4.0 和.Net Framework 4.0 Client Profile

Net Framework 4.0 和.Net Framework 4.0 Client Profile区别: .Net Framework 4.0毫无疑问就像是.Net Framework 2.0一样是.Net Framework 的 4.0版本: 而.Net Framework 4.0 Client Profile是.Net Framework 3.5 sp1的子集,是.Net Framework 4.0 简化版, 是面向客户端应用程序的(估计这也是为什么不能够使用IIS7 API的原因).

Linux 环境下/etc/profile和/etc/profile.d 的区别和用法

Linux 环境下/etc/profile和/etc/profile.d 的区别和用法 1. 两个文件都是设置文件的,/etc/profile是永久性的,是全局变量,/etc/profile.d/设置所有用户生效. 2. /etc/profile.d/比/etc/profile好维护,不想要什么变量直接删除/etc/profile.d/下对应的即可,不用像/etc/profile需要改动此文件. CentOS 中每个用户都要指定各自的,其中包括可执行的 path路径,这些路径决定了每个用户在执行

Python3和以前版本的区别

Python3.0和以前版本的区别 (1)print .3.1版本之后要用括号括起来(print("abs"),类似于java)而2.0版本不用. (2)input代替了2.0版本的raw_input: (3)3.0版本没有file函数了,要打开文件要用open:f = open(shoplistfile,'wb'); (4)没有了Cpickle模块了,使用pickle模块: (5)使用pickle.dump()方法时,打开文件的读操作要是"wb",使用load方法

MVC2 ,MVC3 ,MVC4,MVC5的区别,EF的各个版本的区别;LocalDB是个啥

EF6 在 code first的模式下,codefrist不支持的数据库更多,比如access,sqlite,sql compact 3.5,mysql,oracle 关于LocalDB的介绍 类似于sqlite (但是sqlite是不支持存储过程的,而LocalDB则支持存储过程) 导读:LocalDB是SQL Server 2012带来的新特性,它是一个专门为开发人员量身定制的轻量级数据库.本文将为您讲解LocalDB的开发背景,展示其核心特性,并看看它与微软的其它轻量级数据库到底有何不同

debug版本和release版本的区别?

好久没有做web项目了,这项目完成了要发布网站,不好忘了 以前操作过的? 还好脑子还是有点印象 现还是 写个文档吧记录吧 免得 以后作别的了又忘了 那可不妙啊 网站发布步骤:1.先将debug改为Release编译 2.点击web网站点击发布将发布的文件保存在一个文件中 3.将修改过的的编译文件发布到测试服务器或上线服务器 注意:若出现一些问题重新加载一下web.config重新运行一下(对其文件做修改如打空格即可) 再刷新页面即可 今天主要是来讲debug版本和release版本的区别呢? 为

php5 NTS和TS版本的区别

php5 non-thread-safe和thread-safe这两个版本的区别 从PHP5.2.10版本开始(现在有PHP5.2.10和5.3两个版本),有None-Thread Safe与Thread Safe两种版本的可供选择,这两种版本有何不同,作为使用者来说又应该如何选择呢?下面聚友将为您讲述. 先从字面意思上理解,None-Thread Safe就是非线程安全,在执行时不进行线程(thread)安全检查:Thread Safe就是线程安全,执行时会进行线程(thread)安全检查,以

opencv-3.0.0-beta的windows环境下的配置及与opencv2版本的区别

我的机器:64位系统 第一步: opencv官网下载opencv3.0.0-beta版本,解压到自己的目录,我的目录是E:\,解压后在E盘出现名为opencv的文件夹,该文件夹下有两个子文件夹 第二步:配置环境变量: 右击 ,选择"属性"->"高级系统设置"->"高级"->"环境变量"->"系统变量Path"->添加 E:\opencv\build\x64\vc10\bin,然

VS中 Debug和Release版本的区别

VS Debug和Release版本的区别 1. 变量.大家都知道,debug跟release在初始化变量时所做的操作是不同的,debug是将每个字节位都赋成0xcc(注1),而release的赋值近似于随机(我想是直接从内存中分配的,没有初始化过).这样就明确了,如果你的程序中的某个变量没被初始化就被引用,就很有可能出现异常:用作控制变量将导致流程导向不一致:用作数组下标将会使程序崩溃:更加可能是造成其他变量的不准确而引起其他的错误.所以在声明变量后马上对其初始化一个默认的值是最简单有效的办法