我很惊讶我找不到这个问题已经被问过,所以如果我只是错过了它,请立即通知。
我需要在 .NET 中编写一个非常小、相当简单的应用程序,最终消费者将下载该应用程序并将其安装在他们的系统上。 Silverlight 的沙盒模型将无法工作 - 它必须是完整下载、安装的可执行文件。
这是我所知道的:
- 我开发了在受控桌面环境中运行的应用程序 - 例如,在一百台内部计算机上运行的 IT 应用程序。
- 我使用 Mono 开发了应用程序
我不知道的是:
- 如何创建一个灵活、强大的安装程序,该安装程序将在无数不受控制的桌面配置和环境中工作。
- 如何对针对 Mac OSX 的 Mono 执行相同操作。
- 安装广泛分布的最终用户应用程序时有哪些常见问题以及如何缓解这些问题?
我正在寻找填补我的知识空白的最佳资源.
Related
相当于 OSX 上带有 Mono 的 Windows 服务 https://stackoverflow.com/questions/1223520/equivalent-of-a-windows-service-on-osx-with-mono
对于 Windows,请考虑Windows 安装程序 XML (WiX) http://wix.sourceforge.net/。对于 OSX,您需要生成 .app 捆绑包。这是一个例子 http://www.monobjc.net/index.php?page=cocoa-application使用包含的 nant 任务Monobjc http://www.monobjc.net/项目。
以下是您将面临的一些主要问题:
在 Windows 上:
- 您的安装程序必须检测
以前/旧版本和
关闭/卸载/迁移为
合适的。 NSIS 和 WiX 都有
机制。
- 您的安装程序/应用程序必须是
兼容不同版本
Windows(XP、Vista、7)和其他
.NET 版本(2.0、3.0、3.5
最终)。实际测试这是
您最乏味的任务之一
脸。我强烈建议您拥有一个
少量干净的虚拟机
为此的图像。
On OSX:
- 您很可能希望发布一个独立的应用程序包,这意味着 mono 将捆绑在您的 .app 中。这将为您的可分发文件添加约 50mb。
- 您将必须引用不同版本的 Monobjc 来支持 OSX 10.4 和 10.5,您将需要配置您的构建来执行此操作,并测试这两个版本。
- 通过运行以下命令确保您的 C# 代码未使用 Windows/.NET 特定调用单声道迁移分析仪 (MoMA) http://www.mono-project.com/MoMA在你的代码库上。
升级:
您还没有提到您计划如何提供升级。 NSIS 和 WiX 具有处理升级的能力。确保在部署初始版本之前制定好构建版本控制方案。在 OSX 上,Monobjc 可以与Sparkle http://sparkle.andymatuschak.org/.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)