原文:http://www.cnblogs.com/daylight/archive/2008/10/02/1303037.html
其实就是换mono的公共语言运行时来使用。这样做的好处是体积小,发布免安装。首先,您需要下载mono的最新版(目前是2.0.1)。http://ftp.novell.com/pub/mono/archive/2.0.1/windows-installer/1/mono-2.0.1-gtksharp-2.10.4-win32-1.exe,安装后,就可以继续进行了。
1、用Visual Studio创建一个Windows应用程序,假设叫做WinApp,并添加一个按钮。
2、编译此项目,得到一个WinApp.exe文件。
3、自己建立一个文件夹WinApp,其中再建立bin和lib这两个文件夹
4、将mono安装文件夹中的bin和lib子文件夹中需要的文件拷贝至刚才建立的那两个文件夹。mono的默认安装位置是:C:\Program Files\Mono-2.0
5、将需要运行的exe文件放入WinApp文件夹。
6、调用,可以使用bat批处理来调用,bin\mono.exe WinApp.exe。(其实写个VC++的小程序调用最好,可以我没学过VC++)
好了,发个代码上来,有兴趣的朋友可以研究一下,7zip打包后仅3.26MB,却实现了免安装微软庞大的框架。此测试项目我在纯净的虚拟机和本机均测试过,但有个bug,mono对中文路径支持不好,如若有中文路径,则无法运行。我后来又试了用C:\Program Files\Mono-2.0\bin\mono.exe来执行,则没有中文路径问题。我觉得缺少了哪个文件,一个一个试着拷贝到WinApp文件夹中,再用批处理来执行,还是错误。后来干脆将整个安装目录的文件全搬到WinApp目录中,执行批处理还是失败,可是用C:\Program Files\Mono-2.0\bin\mono.exe来执行就是能成功,百思不得其解啊!究竟少了什么东西呢?
分享到:
相关推荐
标题“MONO实现.NET程序脱离框架”涉及到的关键技术是Mono,这是一个开源的.NET框架实现,它使得.NET应用程序能够在不依赖Microsoft Windows操作系统或官方.NET Framework的情况下运行。这为开发者提供了跨平台的...
本实例将深入探讨如何利用Mono实现脱离.NET框架的开发。 首先,我们需要理解.NET Framework和Mono的关系。.NET Framework是Microsoft推出的一套用于构建和运行Windows应用程序的软件开发平台,它包括了公共语言运行...
3. **运行**:这里是指执行.NET程序的过程,通常需要.NET Framework的支持,但在.NET Core或Mono环境下,可以脱离这个依赖。 4. **源码**:指的是程序的原始代码,可以被开发者阅读、理解和修改。在这个示例中,...
总之,.NET C#脱离环境运行程序通过Mono实现,它让C#开发者可以跨平台开发和运行应用程序,扩展了.NET生态系统的边界。对于想要在非Windows系统上部署和运行C#应用的开发者来说,Mono是一个不可或缺的工具。
C#程序脱离.net框架的多种方法与应用一步之遥
《iPhone高级编程:使用Mono Touch和.NET/C#》从基本的概念入手,全面地介绍了基于monotouch使用C#/.net进行iphone应用程序开发。从monotouch和.net开发环境到objective-c和c#开发语言,从基于monotouch进行iphone...
Mono 是一个开源的、跨平台的 .NET 实现,能够在 Linux 平台上运行 .NET 应用程序。Jexus 是一个基于 Mono 环境的 ASP.NET Web 服务器,能够提供高性能、安全性和稳定性的 Web 应用程序部署解决方案。 Mono 部署 ...
标题 "DotNetBox不装FrameWork运行.NET程序.Net.rar" 提到的是一个使用 DotNetBox 应用程序,它允许用户在没有安装 .NET Framework 的环境下运行基于 .NET 的程序。这一特性对于那些希望在不支持或未安装 .NET ...
这几天看了很多关于脱离框架运行C#程序的文章,千篇一律,都是讲飞信方案的,此方案涉及一些法律问题,只能自己研究一下,后来用google美国网站搜了一把,看了些文章,无意中发现mono,又用mono关键字到google中国搜...
.NET框架是由微软开发的,主要用于Windows环境,而Mono项目则是一个开源实现,旨在使.NET应用程序能够在Linux、macOS和其他非Windows系统上运行。 关于标签,“c#”指的是C#语言,这是一种面向对象的、类型安全的...
这本书详细介绍了如何利用C#语言和Mono for Android框架进行Android应用程序的开发,是.NET开发者进军移动平台的重要指南。 1. **C#语言基础**:书中首先会介绍C#的基础知识,包括语法、类、对象、接口、继承、多态...
标题中的"C#使用飞信虚拟机脱离.net framework及win32引导程序"是一个技术实践,旨在探讨如何在不依赖.NET Framework和传统的Win32启动程序的情况下,利用C#语言和飞信虚拟机来运行应用程序。这涉及到对C#语言深入的...
.NET框架是微软开发的一种应用程序开发平台,它提供了一套丰富的类库和开发工具,使得开发者可以使用各种编程语言(如C#、VB.NET等)构建跨平台的应用程序。在这个环境中,ILSpy是一款至关重要的工具,它作为一个...
《C#开发Android应用实战 使用Mono for Android和.NET C#》是一本专为开发者准备的指南,它详细阐述了如何利用C#语言和Mono for Android框架来构建原生的Android应用程序。这本书由(美)麦克卢尔撰写,是.NET开发者...
C#写的Winform应用程序,有几个label和一个按钮,可以在完全没有安装.net Framework的情况下运行。7zip压缩大小3.26MB,解压后大小11.4MB。
使用Nancy和Simple.Data两个轻量级的框架打造一个分布式开发系统(一)Frictionless .NET Web App Development with NancyFrictionless .NET Web App Development with Nancy Part II - Introducing a View ...
iPhone高级编程 使用Mono Touch和.NET
Mono是微软.NET平台的一个开源实现,允许开发者在Android这样的非Windows平台上使用C#语言和.NET框架进行开发。这本书由多位技术专家合著,涵盖了Android开发的方方面面,从基础到高级主题,为读者提供了一套完整的...
通过深入研究Mono 2.4的源码,开发者不仅可以增强对.NET框架的理解,还能获得关于编程语言、运行时环境、类库设计、跨平台技术等多个方面的宝贵知识。这对于提升自己的软件开发能力,尤其是对于那些希望在开源社区...
主要介绍了CentOS上搭建Nginx+Mono运行asp.net环境的配置方法,需要的朋友可以参考下