.net程序部署(mono方式)
某一次 我同事用了这个词 ,说这样才显得够专业 擦。把某某项目 部署到服务器上 。擦 不就是拷个文件过去运行么。月亮 还是绵羊 我搞不清楚了 咱英文不好,绵羊叫的声音?。你就叫我山寨程序猿 随意 一直就这风格。
mono 是一种基于.NET Framework的开放源代码平台。
安装文件在此地址下载
http://www.go-mono.com/mono-downloads/download.html
经证实 安装过后直接 把 moon.exe 和相关目录 直接 拷走 然后运行也是可以的,所谓的绿色软件。mono本身就是一个开放的.NET Framework平台 。就是说你可以在没安装.NET Framework框架的电脑上运行 基于.NET Framework 的程序,并且不用安装 放在U盘里直接就可以运行 只要mono放在一起。然后你引用了哪些类库 就拷贝对应目录的 dll文件 也要放在一起,说白了就是moon版本的 库文件。看下我的 程序里只用到了基本类库 然后就是winform 和gdi ,然后我只拷了这些文件过来 总共4兆的样子lib\mono\gac:
mono运行.net程序的方式是: mono.exe 加上.net程序文件名。通过以上你就明白了 ,把只要编写一个批处理命令文件 就ok了。
双击批处理文件:
看到没左上角的默认图标变成mono的了 。程序运行效果跟原来的一样。换其他电脑试试呢,刚刚不是说过吗 整个文件夹拷到U盘里 在其他电脑可以直接运行。如果在没安装.net框架的电脑上你发现不行 ,有可能出现这样的错误:
根本原因:.net的exe 是托管代码 运行时首先他要寻找mscoree.dll 由此来匹配操作系统已经安装了的.netframework版本。Mscoree.dll 存在于system32 目录下。
关于mscoree.dll深究详情请参考此文 .NET中的幕后英雄:MSCOREE.DLL :
http://blog.csdn.net/atfield/article/details/1750890
明白了噻 ,你可以把你系统的Mscoree.dll 文件也拷到U盘目录下,然后再写个批处理文件,判断没有同名文件 则从U盘拷贝一份到system32 目录。由此 看你自己需求 ,你可以把批处理 写成一个安装脚本 就像 tomcat 那样 ,这些都是可以做到的。
还有一点 通过批处理运行始终有个命令行窗口 很不爽。C#里你知道有个什么 progress 可以调用外部进程 通过参数的方式 ,其实也就跟批处理异曲同工,并且C++里也有同样的东西,这样就可去除命令行窗口。我们编写一段简单的C++代码 把.net程序作为参数 传给moon运行,原理都讲得相当明了了 。这里我就不贴图了 ,经我测试 是行得通的。
接下来我们将 介绍setupFactory的使用。
.net程序部署(setupFactory方式)
转载于:https://www.cnblogs.com/assassinx/p/3766759.html
.net程序部署(mono方式)相关推荐
- 在Tomcat中部署Java Web应用程序几种方式
在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署.在下文中$CATALINA_HOME指的是Tomcat根目录. 一.静态部署 静态部署指的是我们在服务器启动之 ...
- Java之JVM调优案例分析与实战(1) - 高性能硬件上的程序部署策略
本JVM系列均来源于<深入理解Java虚拟机>一书中,版权归该书作者所有. 环境:一个15万PV/天左右的在线文档类型网站最近更换了硬件系统,新系统硬件为4个CPU.16GB物理内存.OS ...
- 如何将Felgo程序部署到Android中
概述 经过前面两篇文章的描述,我们知道了Felgo的大致应用,Felgo支持跨平台 windows.macos.Linux以及移动平台Android.IOS.Windows Phone和Windows ...
- Qt Creator将应用程序部署到QNX Neutrino设备
Qt Creator将应用程序部署到QNX Neutrino设备 将应用程序部署到QNX Neutrino设备 将应用程序部署到QNX Neutrino设备 您可以按照将应用程序部署到通用远程Linu ...
- IIS安装与MVC程序部署
最近在做访客系统,虽然说不是什么多大的项目,但麻雀虽小五脏俱全,使用EF Code First+Mysql+Frozenui响应式布局,感觉通过这个项目学到好多东西,Mysql的使用.EF映射Mysq ...
- Silverlight 2 应用程序部署到任意HTML页面
Silverlight 2 应用程序部署到任意HTML页面,可以采用ActiveX的方法,在页面中放入object标签,设置相应的属性即可.使用 object 元素,可以用与所有受支持浏览器兼容的方式 ...
- 使用Helm将ASP.NET Core应用程序部署到Kubernetes容器集群
在<容器化单页面应用中RESTful API的访问>以及<容器化单页面应用中Nginx反向代理与Kubernetes部署>两篇文章中,我介绍了一套容器化ASP.NET Core ...
- 如何将nodejs项目程序部署到阿里云服务器上
将nodejs项目程序部署到阿里云服务器上 一.概述 二.具体步骤 1.拥有自己的服务器 2.下载Xshell 3. oneinstack配置web环境 4. XShell连接远程主机 5.更新系统软 ...
- 使用Spring-Cloud将Spring Boot应用程序部署到Cloud Foundry
我有一个基于Spring Boot的小型应用程序 ,该应用程序使用Postgres数据库作为数据存储. 我想记录将示例应用程序部署到Cloud Foundry的步骤 . Spring Boot参考指南 ...
最新文章
- Activity的跳转及返回值,activity的生命周期
- spring mvc字符编码过滤器 CharacterEncodingFilter ,添加例外url
- winform 自适应屏幕分辨率具体操作和注意事项
- 使用axure的团队项目功能
- 神秘黑客攻陷密码管理器 Passwordstate 部署恶意软件,发动软件供应链攻击
- Python入门基础学习记录(二)汇率案例学习记录
- java类注解是否可以通过实现接口或继承父类的方式获得
- 绿盾加密导致Visual Stdio无法使用
- RAdam和LookAhead合二为一
- linux中ctrl+c、ctrl+z、ctrl+d、ctrl+l快捷键的使用
- Hive3.1.2安装指南
- Es 模糊查询 match,wildcard
- 【Python】电商用户行为数据可视化分析实战
- 图形编辑器:对齐功能的实现
- python高级教程-2
- SoundNet:根据声音来识别场景环境实践
- 这几道tomcat面试题,最后两道难倒我了
- 心脏和字节只有一个跳动,生命和工资只能拼一个多多
- Ubuntu12更新重启之后,只在左上角出现一闪一闪的小横杠
- 机器人学之运动学笔记【3】—— 机械臂DH表示法+正向运动学(Forward Kinematics)
热门文章
- android popupwindow 自定义背景,android – 无法将PopupWindow背景设置为透明
- 出入口控制系统工程设计规范_【理论冲刺】传说中的隐藏书目——《公园设计规范》...
- python数字转对应中文_python中将阿拉伯数字转换成中文的实现代码 | 学步园
- JZOJ 5938. 【NOIP2018模拟10.30】分离计划
- 云梦天气预报软件测试,云梦天气预报15天
- hue 配置mysql数据源_hue-使用mysql作为元数据库
- c语言用数组发送大写字母怎么读,c语言字符数组大小写转换
- python 相关性分析_数据分析---用Python进行相关性分析(兼谈假设检验)
- 当复选框中打勾时后面自动显示y或者n_基于轮廓系数确定K-Means聚类中的K
- 文本向量表示及TFIDF词汇权值