大概看了一下部署与安装,也试了一下,Windows要安装 NET Framework 3.5才能运行安装的软件。问题是这个东西在网上自动下载要197M的,上帝!!!这也太大了。
能不能精简一下这个东西,比如只发布用到的DLL,如果能精简,最小能减到多少?我希望它能在20M以内,我在软件里也只是用到了数据库等简单的访问。
能不能精简一下这个东西,比如只发布用到的DLL,如果能精简,最小能减到多少?我希望它能在20M以内,我在软件里也只是用到了数据库等简单的访问。
3.0.4506.30
50.2M
首先我我先问你你确实用到.net3.0的哪些新功能了,如果真的用了linq这些当然没办法,但请不要说2.0是古董,这样会显得很无知。因为如果你建.net2.0的时候完全满足了你的需求,那么你就完全没必要用3.0,知道为什么吗?
你看看你的3.0 3.5项目用到的普通的引用比如system.windows.form啦,system.data啦,只要不是用到WPF,WCF,linq等,你看看就算你的是.net3.0和3.5项目到底是引用的啥?是不是就是.net2.0的,呵呵
这和以前的.net1.1有本质区别,MS觉得.net2.0成熟了,以后的3.0和3.5都是在2.0基础上增加功能,除了新功能以前功能全是直接使用的2.0。所以VS2008建立的项目可以同时让你使用2.0 3.0 3.5,只是用.net2.0少了WPF等东西而已,其他无任何区别。2.0 3.0 3.5功能完全不重合,所以3.0 3.5无法独立于2.0存在,安装包里面都要把2.0 2.0SP1的打包在一起带上。除非用到3.0,3.5的新功能,否则完全没必要用3.5的项目,你可以说1.1是古董,因为2.0完全不依赖1.1,但说2.0是古董的说法我很不赞同,没这个古董我倒要看看3.0和3.5郎个运行,一般来说3.0和3.5项目大半还是引用的2.0的东西。
所以我建议你直接用.net2.0的项目。
当然你的那个简单的数据库访问用到linq了当我没说,不过一般人都不会这样去想吧。还有就算你是.net3.5的项目,但项目中却一点没用到3.0和3.5的东西,不信你可以试一下,如果只是一个winform+ado的项目,你把你的项目生成后放到一个只安装了.net2.0framework的XP上运行一点问题没有。
其实很好解释上面也说了,虽然.net3.5项目默认会引用到3.5新增的东西比如system.xml.linq等,但代码中没用到的话是不会有问题的。
你添加引用看看就知道2.0和3.5项目有啥不同了,不过是3.5新增的东西不能引用而已。再次强调:3.0不是替代2.0的,3.5也不是替代3.0的,而是对2.0功能的加强,它们是一体的。3.0带来的主要是WPF WCF,3.5带来的主要是linq,没有2.0是古董之说。
1 你只需要让他下载你编译好的文件就行了,告诉他需要.net2.0支持,别当这些人都傻的,也许早就已经安装好了。(当然,如果开发的软件是针对完全不懂电脑的人,而且又在没有电脑管理人员的情况除外,比如一些木马就不太好做了)2 用不了,让他安装一下.net框架,setup一下很简单,版本很清晰,一说就会,不会出现DLL陷阱,如果是别的大软件,只会更麻烦,各种版本冲突的问题你远程都压根没法查。
部署也很简单,你自己的DLL和EXE放在一个文件夹下,安装了.net框架,根本就不用安装你的程序就可以运行了,想想OFFICE可以么?
这个客户都能重装系统了,还不会装.net框架?
所以只会减少维护成本,不会增加。3 1.1的有集成了吧,不集成也没关系,能安装你程序的人,安装.net框架不会更困难,不能安装.net框架的人安装你的程序一样困难。
很多说客户端装net framework有困难的都是矫情,想当然而已
NET Framework本来就是一个虚拟机,和XP系统一样。事实上,200M的是3.0的了,比XP功能更多。原来你开发的软件要考虑客户是2000,XP,2003,Vista,自带什么什么库,一样麻烦,现在简单多了,你开发的在2.0下,让客户装2.0框架就行了,管他什么操作系统,以后甚至管他是不是微软的操作系统,不是更好?