如何让.Net程序在没有装.Net框架的机子上运行

当然最简单的办法就系在对方的计算机上装.Net Framework
不过如果光光是这样我就不需要写本文了
前端时间有个朋友用飞信的FetionVM.exe实现了“脱框架”(注:飞信是用C#写的)
其实这样也不能算是真正的“脱框架”,还是要带 或者 下载些文件,还不能真正的实现单文件绿色运行
本文推荐一个视频可以把DLL打包成单个EXE

http://thinstall.com/demos/dnet20/

用视频教的办法再加上Remotesoft Linker and Mini-Deployment Tool可以做出最少6M的EXE
据说飞信的虚拟机也是这样打包的
当然这种办法也可以用于打包.Net 3.5和制作自己的虚拟机,毕竟飞信的虚拟机是有限制的
还有一种办法,不过是违反.Net的开源协议的,就是把system;system.windows.forms这些命名空间的源码down下来集成到自己的程序中编译,然后把原来对GAC的引用去掉,应该是可行的,不过违法的东西我没有试