C#程序不用安装.NET环境运行(让C#程序脱离.net框架)

通常情况下,运行C#程序,需要系统安装.NET 框架,但是如果为了运行一个100K的C#程序,而安装100M多的.NET 框架,是在难以让人接受。

有个简单的解决办法:
  首先下载一个飞信,并安装起来。在安装目录中有一个VMDotNet 目录(默认安装的话,位置在C:\Program Files\China Mobile\Fetion下)。
  把这个目录复制出来,放到自己的C#程序一起,当在没有安装.net框架的环境里运行时,用这个命令:

  FetionVM.exe   路径/C#程序

  FetionVM.exe这个文件在VMDotNet 目录里可以找到,这个是虚拟环境的loader。就是直接把你的 .Net 程序 作为命令行参数传递给FetionVM.exe 就可以在这个虚拟环境中执行你的.net程序了。

  可以自己写一个启动程序,首先检查是否安装了框架,如果有则可以直接运行。否则调用虚拟环境运行。

  (据资料记载:这个启动程序飞信也有,如果不想自己写就直接拿飞信安装目录中的 Feition.exe,但是这样的话 你自己的.Net程序的名字必须叫FeitionFX.exe 。把它和Feition.exe 放在同一目录下,直接执行 Feition.exe 即可。)没有测试成功

  另外,如果你对。Net程序使用了加密保护,需要注意一下,目前市面上的大部分。Net加密工具加密后的程序集不能在这个虚拟环境中运行的。

  以往要在别人机器上运行自己.net的程序,还要一再和别人解释为什么运行之前还要在他的电脑上安装一个100M多的大家伙,现在终于可以摆脱

这种尴尬了!爽!

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
从四年前刚学C#时就一直想找到一种方法可以让.Net程序在未安装framework的电脑上运行,但一直没有找到真正可用的。虽然有些公司发布了可以将.net代码编译成navtive代码以脱离.net环境运行,如Remotesoft DOTNET Linker,Xenocode Postbuild等,但一直没有破解版,用它们编译的程序每次运行会添出个版权信息。最近偶然发现一种方法可以做到真正使程序脱离.net环境运行且没有任何版权信息添出,现将使用方法、源代码、测试程序发布于此: 请首先在文章末尾下载测试程序,是一个用C#做的串口工具,下载解压后有两个文件夹(FrameWork和APP)和一个程序(串口工具.exe),在APP文件夹下有一个名为9527.exe的程序,这个是C#真正的“串口工具.exe”,而主目录下的串口工具.exe只是一个Loader程序,它运行后首先判断电脑上有没有安装framework,若有,则直接启动APP下的9527.exe程序;若无,则通过framework虚拟机(FrameWork下的VM.exe(其实是飞信框架里的FetionVM.exe,修改了它的图标和版权,想改成其它的大家可以用VC改一下,有网友强列要求指出这一点,想不明白为什么,呵呵,让指出就指出吧,还要求指出调用的方法,,其实我连源程序都公布了,用说的这么明白吗))启动9527.exe程序。Loader程序不会打开任何窗口,并在启动真正应用程序后立即退出。Loader程序主函数(VC6.0编写)的代码如下:  主函数: int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { TCHAR fwVersion[VERSION]; if(CheckRegistryKeyExistance(fwVersion)) { if(CompareFWVersions(fwVersion, "2.0"))//最低版本要求2.0 { RunApplication(".\\app\\9527.exe");//直接运行 } else { //应用程序放在APP目录下,要启动的程序的名字为9527.exe, //9527周星弛在《唐伯虎点秋香》的代号,呵 RunApplication(".\\FrameWork\\VM.exe \".\\app\\9527.exe\"");//通过虚拟机运行 } } else { RunApplication(".\\FrameWork\\VM.exe \".\\app\\9527.exe\"");//通过虚拟机运行 } return 0; } 判断是否安装的代码就不贴出来了,可以在文章末尾下载整个VC6的工程文件看。 下面总结一下如何使用: 1. 下载我的例子程序 2. 清空APP下的所有文件 3. 把你自已的.net可执行程序和相关文件全部复制到APP下,并将可执行程序的名字改为9527.exe (不喜欢这个名字可以修改Loader程序重新编译) 4. 把主目录的“串口工具.exe"名字改成任何你想要的名字。(要改图标的话,建议下载我的Loader源程序,修改后重新编译) 大功告成,拿到一台没装.net的电脑上试试吧。祝好运。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值