关于C#程序不安装.netFramework安装包的问题-创新互联

c#程序是通过安装.net安装包才能运行的,因此有时候很不方便,必须要用户安装一个.net安装包,虽然系统会带有这个,但是还有相当的电脑是不装这个的。这样我们怎么才能避免这个问题呢。查了很多资料和网上的同行们的说法。总的来说也只有两种方式:借用其它工具和缩减.net的dll。前者是为了达到貌似的跨平台,后者是为了减少.net环境的大小来避免不方便的问题。下面以.net framework 2.0环境为例。

成都创新互联公司是一家集网站建设,莱州企业网站建设,莱州品牌网站建设,网站定制,莱州网站建设报价,网络营销,网络优化,莱州网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

   一、借用工具,不安装.net framework 2.0

   这种方式有两种普遍使用的方法,借用飞信的虚拟.net环境和使用MONO启动程序。

   1、使用飞信虚拟机的方式。下载飞信安装文件http://www.skycn.com/down.php?uri=http://skycn.gjwww.com:82/down/Fetion2008_skycn.zip,安装成功后,在安装目录下:China Mobile\Fetion\VMDotNet\v2.0.50727(不同的版本目录不太一样,但是都有一个VMDotNet文件夹,找到它)FetionVM.exe这个文件,把你的C#运行程序拷贝到这里,用FetionVM.exe启动你的exe,例如可以写成批处理:execute.bat

FetionVM.exe 你的.exe

这个文件和你的程序都放在飞信的FetionVM.exe文件在一个目录下就可以了。

   2、使用MONO。过程和使用飞信一样,下载http://download.mono-project.com/archive/2.10.6/windows-installer/1/mono-2.10.6-gtksharp-2.12.11-win32-1.exe,安装后,安装目录Mono-2.10.6下,就是含有bin和lib这两个文件夹的那个目录,同样把程序拷过来,调用,依然以批处理为例:execute.bat

bin\mono.exe 你的.exe

批处理文件和程序放在同一个目录。

   这两种方式我测试过,一些简单的WinForm程序都能运行,不用装.net环境,但是大型的软件涉及到数据库的就运行不了了,可能是不支持数据库的原因吧。

   二、缩减.net安装包

   这个方法就是安装.net环境后,删掉不用的.net里的dll,将剩余的dll手动注册,这个操作起来有些麻烦,需要不断地删除dll然后运行程序测试,而且经过删除的.net环境只适用你的程序,没有通用性,但是这个是可以减少.net环境的大小的,就减少了程序安装包的大小。

    但是这个有一个问题是,.NET 2.0安装包大约23M左右,安装完成后大小在200M左右,也就是要在200M中删减不用的DLL。曾经做过实验,当删减到刚好保持软件运行的大小,使用压缩工具压缩剩余的DLL,发现压缩后的结果依然有20多M,也就是说,所以还不如直接使用.net安装包。
  当然应该还有更多的方法解决.net的问题,后面有了新的结果,再共享给大家。

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


文章名称:关于C#程序不安装.netFramework安装包的问题-创新互联
URL网址:http://hbruida.cn/article/dcpdcs.html