【.Net Framework 体积大?】不安装.net framework 也能运行!?开篇叙述-1
【声明:请尊重作者micro-chen的原创,抓文章,请添加来源和作者署名。作者保留追责权利.......】
写在前言
看着日渐没落的.net ,心里多少有了点悲凉。国内的越来越多的新兴公司 都是JAVA 系 PHP系 ...........
嫌弃.net的基本上打着 不开源 体积庞大 性能不高的幌子,将这个优秀的技术抹黑的一无是处。哈哈~
不说那么多废话,直接上干货。(不管以后这个东东发展如何,咱开发个小桌面应用啥的,还是这个最快是不?)
玩.net 语言的,都知道 C#代码写起来真的很舒服,IDE 没得说,全宇宙第一开发神器 visual studio.据说都2017版本了 ,据说MAC版本都粗来了........
但是就这么一个好好的东西,却非得要在客户机/服务器上安装.net framework这个体积庞大的补丁(美名:SDK)........个人分析,微软为了对抗JDK ,于是当时最快的 最可行的方法是模仿JDK。。。。
于是 这个鬼就跟JDK一样了。。。。
偶尔思考一个问题,既然号称无缝跟自家的操作系统集成,微软十几年的时间,为啥没有在Native 方向下重心。即使 .net 作为一个开发SDK 配合 Visual Studio。开发桌面应用的时候,直接生成
原生的 x86/x64平台上的应用不好么?非得把这个臃肿的东西也得让客户机安装。虽然现在都.net framework 4.6时代了。可是你造么?.net 3.5安装体积200多M大小!!!!虽然添加了Linq WCF 什么的,但是一个程序才几百K,SDK大的没谱。在饱受争议后,4.0时代,安装体积确实精简不少,但是实际占用体积还是不少,佩服微软的压缩算法。Cab的压缩方式效率真的惊人。。。。
但是无论怎么说,一个小程序,安装那么庞大的SDK 。自己感觉就是个笑话。而且安装的速度难以忍受!!喝N杯咖啡的时间!!!!微软自己都感觉不好意思了,于是在 Server系列的系统内置.net 。。。
甚至开发个 one click 部署。。。。拜托,能不能做点正事。我没有黑你,喷你的意思啊,确实难以忍受臃肿的体积!!!!
微软就喜欢干这个,好好的东西,非得做得大到每边!据说新版的vs2017,虽然描述的很好,但是全部安装后,体积竟然有30G!!!!!幸好他拆分开了,如果耦合到一起,我认为,我基本确定要放弃这东西了。。。还能不能好好的玩耍。。。。
抱怨完毕,开始进入正题吧,呵呵~上图为证.........成功将体积压缩到13M!!!!!安装时间 用秒计算....(看到这里,读者心里可能开始骂街了,不是不安装么?确实,我欺骗了你,恨我你就看完吧.....)

验证可以运行 Winform /Webform /MVC 项目...............

下面是一个web 项目,使用的是自承载技术(self-hosting)。



上面的演示项目,第一个是winform程序,一个简单的桌面程序。第二个是MVC自承载程序。
运行的原理不用多说,只要.net framework 安装了。那么程序自然运行成功。那么疑问来了。那个12.6M的安装包,真的好使吗?
请看下篇
【.Net Framework 体积大?】不安装.net framework 也能运行!?原理简介-2
【.Net Framework 体积大?】不安装.net framework 也能运行!?开篇叙述-1的更多相关文章
- 【.Net Framework 体积大?】不安装.net framework 也能运行!?原理简介-2
接上一篇 [.Net Framework 体积大?]不安装.net framework 也能运行!?开篇叙述-1 昨天写了一个引子,还是有读者对这套“小把戏”感兴趣.那么不辜负大家的希望,争取博主不做 ...
- 【.Net Framework 体积大?】不安装.net framework 也能运行!?原理补充-3
继续补充点吧.接上一篇,我们实现了.net framework的精简的步骤. 有网友评论了,那个核心的 mscoree.dll 从.net framework 2.0开始,微软开始了新的CLR承载模型 ...
- 安装.NET Framework组件时,电脑意外重启后再次安装失败
因为软件运行环境需要安装.Net Framework,我安装的是2.0sp版本,可以安装过程中计算机意外关闭,重新打开后再次安装却出现安装失败的提示,具体内容是: 产品: Microsoft .NET ...
- C# winform程序免安装.net framework在XP/win7/win10环境运行!(转)
C# winform程序免安装.net framework在XP/win7/win10环境运行! 前文: 首先感谢群里的大神宇内流云 提供的anyexec for windows版本. 经过本人搭 ...
- NSIS:判断并安装.NET Framework 4 的例子
原文 NSIS:判断并安装.NET Framework 4 的例子 现在.NET开发的软件已经大行其道,但有些操作系统并不符合软件的运行要求,所以,我们需要在安装程序中进行.NET Framework ...
- Win10无法安装.net framework 3.5出错提示无法安装以下功能该怎么办?
在Windows操作系统中,.NET Framewor对今天应用程序的成功提供了的安全解决方案,它能强化两个安全模型间的平衡.在提供对资源的访问,以便以完成有用的工作,对应用程序的安全性作细致的控制以 ...
- Windows 10 安装 Sql Server 2014 反复提示需要安装 .NET Framework 3.5 SP1 的解决方案
一.首先安装.NET Framework 3.5: 离线安装方式: 1.装载相对应的系统安装盘,我是Windows 10 x64 企业版,所以装载Windows 10 x64 企业版安装镜像ISO,盘 ...
- Entity Framework 教程——安装Entity Framework环境
安装Entity Framework环境 Entity Framework 5.0 API分布在两个地方,一个可在NuGet包管理器中找到,一个存在于.NET framework中..NET fram ...
- 安装.NET Framework进度条卡住不动的解决方案
VS在安装之前需要安装.NET Framework,我安装的是4.0版本.但是安装进度条到一半左右时就卡住不动了.前前后后重试多次,还有几次重新开机,但都没用. 开始还以为是安装的系统有问题.后来在网 ...
随机推荐
- window.location.href 和 document.location.href
document表示的是一个文档对象,window表示的是一个窗口对象,一个窗口下可以有多个文档对象. 所以一个窗口下只有一个window.location.href,但是可能有多个document. ...
- 代码中使用bitmap资源并加载到控件上
1.从res/drawable/XX.jpg里引用图片资源: 1. Resources res = getResources(); Bitmap inDrawable= BitmapFactory.d ...
- java设计模式面试
设计模式 1. 单例模式:饱汉.饿汉.以及饿汉中的延迟加载,双重检查 2. 工厂模式.装饰者模式.观察者模式. 3. 工厂方法模式的优点(低耦合.高内聚,开放封闭原则) 单例模式 分类:懒汉式单例.饿 ...
- dotnet调用node.js写的socket服务(websocket/socket/socket.io)
https://github.com/jstott/socketio4net/tree/develop socket.io服务端node.js,.里面有js写的客户端:http://socket.io ...
- jq动态添加的元素触发绑定事件无效
<div class='a'> <div class='b'> </div> 其中$('.a')是html页面的元素,$('.b')是jq动态添加的元素.$(&qu ...
- Chrome调试大全
作为一名前端开发者,打交道最多的可能是和浏览器.市面上各种浏览器多不胜数,主流的有Chrome,Firefox,Safari,IE,Opera,非主流的如360,遨游,QQ浏览器,搜狗浏览器,据说淘宝 ...
- http之head请求(转)
HTTP请求方法并不是只有GET和POST,只是最常用的.据RFC2616标准(现行的HTTP/1.1)得知,通常有以下8种方法:OPTIONS.GET.HEAD.POST.PUT.DELETE.TR ...
- Memo 的当前行、当前列与当前字符
procedure TForm1.Memo1Click(Sender: TObject); begin Text := Format('当前列:%d, 当前行:%d', [Memo1.CaretP ...
- TCP实现P2P通信
Internet的迅速发展以及IPv4 地址数量的限制使得网络地址翻译(NAT,Network Address Trans2lation)设备得到广泛应用.NAT设备允许处于同一NAT后的多台主机共享 ...
- HTML 颜色
HTML 颜色 HTML 颜色由红色.绿色.蓝色混合而成. 颜色值 HTML 颜色由一个十六进制符号来定义,这个符号由红色.绿色和蓝色的值组成(RGB). 种颜色的最小值是0(十六进制:#00).最大 ...