日期:2014-05-18  浏览次数:20919 次

让.net程序脱离.net框架的问题
我用framework4.0做了一个不含数据库的winform的小程序,想让程序在脱离.net框架情况下运行,网上查了一种方法:
首先下载一个飞信的程序安装。在安装目录中会有 VMDotNet 目录。这个就是.Net框架虚拟环境需要的文件。  
直接把整个目录提取出来。  
如何利用这个虚拟环境运行 自己的 .Net 程序呢?很简单,一个命令行搞定。
在 VMDotNet 目录里面会找到一个 FetionVM.exe 。这个是虚拟环境的loader。  
使用方法: FetionVM.exe pathtoyoureexe。
就是直接把你的 .Net 程序 作为命令行参数传递给 FetionVM.exe 就可以在这个虚拟环境中执行你的.net程序了。
我想问,这最后一步把“使用方法: FetionVM.exe pathtoyoureexe。就是直接把你的 .Net 程序 作为命令行参数传递给 FetionVM.exe”这句话是什么意思?能给具体步骤吗?

------解决方案--------------------
这么晚了还在搞代码吗?

其实这种方法很早以前就有了。我个人建议你在打包程序的时候直接把.net打包进去。比这个要来的更快一些。
------解决方案--------------------
探讨
我用framework4.0做了一个不含数据库的winform的小程序,想让程序在脱离.net框架情况下运行,网上查了一种方法:
首先下载一个飞信的程序安装。在安装目录中会有 VMDotNet 目录。这个就是.Net框架虚拟环境需要的文件。
直接把整个目录提取出来。
如何利用这个虚拟环境运行 自己的 .Net 程序呢?很简单,一个命令行搞定。
在 VMDotNet 目录里面会找到一个 Fe……

------解决方案--------------------
你为什么不发明一个“不用windows操作系统的windows程序”呢?


你调用飞信使用的salamandar类库,它跟.net2.0几乎一样大小,而且它还相比.net缺少很多功能(运行时就会垮掉),使用它又何必呢?唯一的区别就是salamandar的类库不需要安装,而.net framework 2.0需要执行一次setup.exe而已。

如果是为这个差别而使用它,我想你从来也没有理解过(你的vs系统的"生成->发布"主菜单上和项目属性里的“发布”属性页中的)clickonce吧。

没有必要,自讨苦吃。