某一次 我同事用了这个词 ,说这样才显得够专业 擦。把某某项目 部署到服务器上 。擦 不就是拷个文件过去运行么。月亮 还是绵羊  我搞不清楚了 咱英文不好,绵羊叫的声音?。你就叫我山寨程序猿 随意 一直就这风格。

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方式)相关推荐

  1. 在Tomcat中部署Java Web应用程序几种方式

    在Tomcat中部署Java Web应用程序有两种方式:静态部署和动态部署.在下文中$CATALINA_HOME指的是Tomcat根目录.  一.静态部署       静态部署指的是我们在服务器启动之 ...

  2. Java之JVM调优案例分析与实战(1) - 高性能硬件上的程序部署策略

    本JVM系列均来源于<深入理解Java虚拟机>一书中,版权归该书作者所有. 环境:一个15万PV/天左右的在线文档类型网站最近更换了硬件系统,新系统硬件为4个CPU.16GB物理内存.OS ...

  3. 如何将Felgo程序部署到Android中

    概述 经过前面两篇文章的描述,我们知道了Felgo的大致应用,Felgo支持跨平台 windows.macos.Linux以及移动平台Android.IOS.Windows Phone和Windows ...

  4. Qt Creator将应用程序部署到QNX Neutrino设备

    Qt Creator将应用程序部署到QNX Neutrino设备 将应用程序部署到QNX Neutrino设备 将应用程序部署到QNX Neutrino设备 您可以按照将应用程序部署到通用远程Linu ...

  5. IIS安装与MVC程序部署

    最近在做访客系统,虽然说不是什么多大的项目,但麻雀虽小五脏俱全,使用EF Code First+Mysql+Frozenui响应式布局,感觉通过这个项目学到好多东西,Mysql的使用.EF映射Mysq ...

  6. Silverlight 2 应用程序部署到任意HTML页面

    Silverlight 2 应用程序部署到任意HTML页面,可以采用ActiveX的方法,在页面中放入object标签,设置相应的属性即可.使用 object 元素,可以用与所有受支持浏览器兼容的方式 ...

  7. 使用Helm将ASP.NET Core应用程序部署到Kubernetes容器集群

    在<容器化单页面应用中RESTful API的访问>以及<容器化单页面应用中Nginx反向代理与Kubernetes部署>两篇文章中,我介绍了一套容器化ASP.NET Core ...

  8. 如何将nodejs项目程序部署到阿里云服务器上

    将nodejs项目程序部署到阿里云服务器上 一.概述 二.具体步骤 1.拥有自己的服务器 2.下载Xshell 3. oneinstack配置web环境 4. XShell连接远程主机 5.更新系统软 ...

  9. 使用Spring-Cloud将Spring Boot应用程序部署到Cloud Foundry

    我有一个基于Spring Boot的小型应用程序 ,该应用程序使用Postgres数据库作为数据存储. 我想记录将示例应用程序部署到Cloud Foundry的步骤 . Spring Boot参考指南 ...

最新文章

  1. Activity的跳转及返回值,activity的生命周期
  2. spring mvc字符编码过滤器 CharacterEncodingFilter ,添加例外url
  3. winform 自适应屏幕分辨率具体操作和注意事项
  4. 使用axure的团队项目功能
  5. 神秘黑客攻陷密码管理器 Passwordstate 部署恶意软件,发动软件供应链攻击
  6. Python入门基础学习记录(二)汇率案例学习记录
  7. java类注解是否可以通过实现接口或继承父类的方式获得
  8. 绿盾加密导致Visual Stdio无法使用
  9. RAdam和LookAhead合二为一
  10. linux中ctrl+c、ctrl+z、ctrl+d、ctrl+l快捷键的使用
  11. Hive3.1.2安装指南
  12. Es 模糊查询 match,wildcard
  13. 【Python】电商用户行为数据可视化分析实战
  14. 图形编辑器:对齐功能的实现
  15. python高级教程-2
  16. SoundNet:根据声音来识别场景环境实践
  17. 这几道tomcat面试题,最后两道难倒我了
  18. 心脏和字节只有一个跳动,生命和工资只能拼一个多多
  19. Ubuntu12更新重启之后,只在左上角出现一闪一闪的小横杠
  20. 机器人学之运动学笔记【3】—— 机械臂DH表示法+正向运动学(Forward Kinematics)

热门文章

  1. android popupwindow 自定义背景,android – 无法将PopupWindow背景设置为透明
  2. 出入口控制系统工程设计规范_【理论冲刺】传说中的隐藏书目——《公园设计规范》...
  3. python数字转对应中文_python中将阿拉伯数字转换成中文的实现代码 | 学步园
  4. JZOJ 5938. 【NOIP2018模拟10.30】分离计划
  5. 云梦天气预报软件测试,云梦天气预报15天
  6. hue 配置mysql数据源_hue-使用mysql作为元数据库
  7. c语言用数组发送大写字母怎么读,c语言字符数组大小写转换
  8. python 相关性分析_数据分析---用Python进行相关性分析(兼谈假设检验)
  9. 当复选框中打勾时后面自动显示y或者n_基于轮廓系数确定K-Means聚类中的K
  10. 文本向量表示及TFIDF词汇权值