问下C#做的Windows程序是不是必须要在装有NET Framework的机器上才能运行了?
如果是这样的话,我想发布程序到没有装NET Framework的机器,要求一是不要让用户分开安装我的程序和NET Framework,二是希望安装过程时间不要太长,安装后的体积不要过于庞大,基于这两个要求,目前大家用得比较好的办法都有哪些了?非常感谢后面回复解决问题的朋友,没搞过发布这块,希望解答能详细下。

解决方案 »

  1.   

    ClickOnce发布部署,方便简单,NetFrameWork一起就发布出去了
      

  2.   

    第一、要运行.net托管程序的机器上必须有.net framework。这个是必须的。
    第二、发布部署的时候把.net一起发布。
    第三、可以参考下飞信,使用第三方框架来达到缩小控件体积。
      

  3.   

    C#程序开发主要是针对 .net 2.0 平台的,目前只要是winxp以后的系统都会有 .net framework的.
      

  4.   

    谢谢上面三位的回复,提出几个问题:1.ClickOnce是微软的工具,现在大多数的.net的Windows程序的发布的方法都是用这个吗?如果我的软件有5M大,加上.net framework,打包以后的文件大约会有多大了?2. 3楼的意思是说XP可以不用安装.net framework就可以运行C#做的程序了吗?谢谢大家继续热心回复,我一直在关注这个问题。
      

  5.   

    谁说XP可以不安装.net framework的?
      

  6.   

    现在在XP以上的系统(Vsita、Win7、不包括XP)都是自带.net Framwork的,不需要安装,但是在XP上就要安装(用户以前自行安装了的除外),.NetFramwork得框架的有好几十M。
    微软的做法是,程序中自带一个.NetFramwork的安装客户端,要是用户的机器上没有装,就先运行客户端从网络上下载安装.NetFramwork
    然后再安装自己的软件
      

  7.   

    安心吧,听说腾讯开始用.net开发QQ了。 试问哪个机器不装QQ?
      

  8.   

    公司的电脑不让用QQ,家里的电脑嘛,不用QQ好多年
      

  9.   

    可以使用VS自带的打包工具,新建安装程序,把程序所需的文件附加进去,制作成安装就行了。具体的可以参考这个网站:http://blog.csdn.net/soief/archive/2009/03/25/4024090.aspx想要运行VS开发出来的程序,怎么可能不需要framework框架呢,试想我们使用的VS IDE都是基于框架的;如果你的程序没有具体的实现功能用到.net framework3.5的技术(具体的可到网上查查),那你在打包的时候可以选择打包.net framework2.0进去,大致步骤为:安装程序->系统依赖项->.net framework选择其属性->选择2.0就行了,.net framework 2.0安装包程序会自动替你生成的,大概是20几M左右吧安装:生成好的安装包会有个.exe文件及.msi文件,还有.net framework安装包,当你运行在其他电脑上(没有安装框架的)时,直接双击运行.exe程序,会自动替你安装.net 2.0框架的,持续时间大概几分钟吧。如果你实在是想用.net 3.5框架也行,只不过做出来的安装包,大概有200多M,而且安装的时候会持续更长的时间!!!先说这么多了不知道你清楚不??