.net程序在无.net环境下运行
看了篇文章 测试了下竟然真的可以运行 测试环境是XP下 没有装NET2.0的情况下 可以运行的 不过需要每次输入命令才能运行 点击后还是会报错
原文如下
众所周知,.net程序必须运行在.net framework环境下,这在很大程度上限制了.net程序的普及,那么今天我给大家讲一个变向的解决方法。
也许很多人知道飞信是用.net开发的,但你们有没有想过为什么飞信能在没有安装.net环境下的PC中运行良好呢?我们能不能利用它的这个特性呢?
大家可以在飞信的安装目录中看到VMDotNet这个目录,根据名字就知道,这是个虚拟的.net运行环境,进去之后是个名为v2.0.50727的目录(我装的是Fetion2008 3.5.2),说明它虚拟的是.net 2.0环境,继续进去,有个FetionVM.exe,它就是我们今天的主角,正是由于它虚拟了.net的运行环境,才让飞信可以运行,那么我们就利用它来运行我们的.net程序吧:
1>将VMDotNet这个目录拷贝出来,将你的应用程序拷贝进去,让你的可执行文件与FetionVM.exe在一个目录下,如下图:
2.打开cmd,在其输入:FetionVM.exe 你的.net可执行程序(本例为TestVMDotNet.exe);
3.程序运行效果:
就是如此简单。
你也许会问:我问不能让我的客户去打开CMD,来输入这些命令吧,那你就自己再创建一个exe程序,让他来检测系统中是否已经安装了.net环境,如果安了,则直接启动目标程序,如果没有,就通过VMDotNet来启动。那么毫无疑问,这个启动程序不能用.NET来编写了。
.net程序在无.net环境下运行的更多相关文章
- OpenCV探索之路(二十一)如何生成能在无opencv环境下运行的exe
我们经常遇到这样的需求:我们在VS写好的程序,需要在一个没有装opencv甚至没有装vs的电脑下运行,跑出效果.比如,你在你的电脑用opencv+vs2015写出一个程序,然后老师叫你把程序发给他,他 ...
- Docker环境下运行python+selenium+chrome
Docker环境下运行python+selenium+chrome docker运行时占用的资源非常少,而且能将环境进行有效的隔离,可以快速的进行部署,因此可以将docker与selenium结合实现 ...
- Sublime Text3配置在可交互环境下运行python快捷键
安装插件 在Sublime Text3下面写代码感觉很不错,但是写Python的时候遇到了一些问题. 用Sublime Text3打开python文件,或者在Sublime Text3下写好pytho ...
- linux 环境下运行STS时 出现must be available in order to run STS
linux 环境下运行ECLIPSE时 出现 “ A Java Runtime Environment (JRE) or Java Development Kit (JDK) must be avai ...
- MySQL-Front 出现“程序注册时间到期 程序将被限制模式下运行”解决方式
MySQL-Front 出现“程序注册时间到期 程序将被限制模式下运行”解决方式 在用mysql-front的时候遇到显示:程序注册时间到期程序将被限制模式下运行.可以在“帮助”菜单下的点“登记”-- ...
- 无网络环境下使用docker加载镜像
无网络环境下使用docker加载镜像 你需要做的主要有3步骤: 先从一个有网络的电脑下载docker镜像 [root@localhost ~]# docker pull hub.c.163.com ...
- 在windows环境下运行compass文件出现的错误提示解决方案
在windows环境下运行compass文件出现的错误提示解决方案 例如:经常在项目中运行grunt命令编译scss文件的时候,会出现下面的错误提示 (Encoding::CompatibilityE ...
- Vue + Webpack-simple 怎么修改生产环境下运行的端口?
开发环境下运行 npm run dev,默认运行在localhost:8080端口,想要修改端口,于是在"dev“后增加了--port 8081
- Linux环境下运行简单java程序
一.安装java 1.下载jdk8 登录网址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-213315 ...
随机推荐
- Hadoop Streaming框架学习2
Hadoop Streaming框架学习(二) 1.常用Streaming命令介绍 使用下面的命令运行Streaming MapReduce程序: 1: $HADOOP_HOME/bin/hadoop ...
- go实现排序的链表
go实现排序的链表 Posted on 2013-08-14 23:25 mac的学习笔记 阅读(224) 评论(0) 编辑 收藏 链表的数据结构比较线性数组,优点是 可以方便的对任意的位置进行插入和 ...
- How to use USB 3G dongle/stick Huawei E169/E620/E800 ( Chip used Qualcomm e1750) in Linux (China and world)
Using this 3G module in Linux is so great. I want it. So I made it. The 3G dongle of Huawei E169/E62 ...
- Apache错误:(20014)Internal error: Error retrieving pid file logs/httpd.pid
今天在虚拟机上打开apache出现如下错误: [root@ShiGuang ~]# service httpd start (20014)Internal error: Error retrievin ...
- Oracle体系结构及备份(十七)——bg-others
一 其他进程 Archiver (ARCn) Oneor more archiver processes copy the redo log files to archival storage whe ...
- Ajax实现xml文件数据插入数据库(一)--- 构建解析xml文件的js库
Ajax实现将xml文件数据插入数据库的过程所涉及到的内容比较多,所以对于该过程的讲解本人打算根据交互的过程将其分为三个部分,第一部分为构建解析xml文件的javascript库,第二部分为ajax与 ...
- mysqldump备份错误:诡异的#mysql50#.mozilla数据库
今天测试mysql自动备份功能 在red_hat_linux5系统下安装了mysql_5.5 系统提示执行脚本抛错, 手动执行脚本, 返回错误:mysqldump: Got error: 1102: ...
- dll导出命名空间下的c风格函数陷阱
1.编译阶段,如果不是重载,那么C风格的同名函数与C++风格的同名函数,就会报编译错误.error C2084: function 'int Test(void)' already has a bod ...
- CCNA网络工程师学习进程(7)路由器的路由配置
前面一节已经介绍了路由器的端口配置,接着我们介绍路由器的路由配置:静态路由.默认路由和浮动路由的配置:动态路由协议的配置,包括RIP.IGRP.EIGRP和OSPF. (1)路由器的基 ...
- java 异常处理机制及说明。
又抄袭了一篇文章,其实就是想保存到自己的博客中而已,文章出处:http://www.cnblogs.com/LilianChen/p/4639471.html 1. 如何捕获异常 try { 可能会出 ...