如何为XNA演示创建安装程序?


11

我有一个使用VS2008在XNA3.1中编码的演示。我真的很希望能够将此内容发送给具有PC的任何人,并让他们安装并运行它,而无需他们安装VS或.Net框架等。

我以为会是发布选项,但对此有些困惑。谁能阐明这件事?

先感谢您。


XNA所做的任何事情都需要XNA Framework才能运行,因此他们必须安装.net Framework和XNA Framework。他们不需要Visual Studio。
thedaian 2011年

2
这有点误导。您说对了,他们将需要xna框架,可能还需要.net框架等。但是,它们本身不需要安装它-这就是制作安装程序的全部要点;它检查依赖项并根据需要安装它们。在这种情况下,其中包括重新分发的XNA框架。
SirYakalot

Answers:


14

选择

有多种方法可以为任何东西创建安装程序,包括XNA游戏。

1. Visual Studio部署解决方案

这是相当简单的。如果您拥有Visual Studio的专业版,则可以将Deployment项目添加到解决方案中,并且每当编译该项目时,它将为您编译所有必需的依赖项/资产,并在其结尾使您成为一个不错的安装程序。

此链接包含您入门所需的大多数信息,并且包含有关重新分发.NET框架和其他相关细节的信息。

优点:

  • 集成到Visual Studio中
  • 简单地构建简单的MSI安装程序并准备分发

缺点:

  • 在某些版本的Visual Studio中不可用
  • 很难让您的安装程序执行比安装/修复/卸载更复杂的事情。

2. WiX

如果由于Visual Studio版本有限而无法选择创建Visual Studio部署项目,则可以使用许多免费替代方案。WiX是这些替代方案之一。

它代表Windows Installer XML,可以像VS Deployment项目一样集成到Visual Studio中。编译后还会创建一个msi安装程序。请注意,WiX具有陡峭的学习曲线,但确实会导致安装程序出现各种复杂情况。

您可以在这里找到更多信息

优点:

  • 100%免费。
  • 强大。如果您想在安装程序中完成一件非常荒唐的事情,只需创建一个C#DLL,将其链接到WiX项目中,然后将其作为“自定义操作”运行即可。(几乎)一切皆有可能。
  • 可以很好地集成到Visual Studio中,并且可以与.NET项目很好地协作。
  • WiX邮件列表上的人员提供了很多支持。

缺点:

  • 学习曲线陡峭,难以掌握和入门。
  • 当您开始时,错误几乎是荒谬的,并且需要一段时间才能真正弄清楚代码中的真正问题是什么。
  • 没有足够的有关该主题的教程。大多数(我认为)措辞不当,结构不当且令人困惑。

3. NSIS

NSIS是功能齐全的安装程序创建软件包。我承认,我几乎没有用过它,但是当我这样做时,这是一种愉快的体验。有大量的教程,完全可以编写脚本,但是我可能会说它不如WiX强大(如果有人觉得情况并非如此,请随时纠正我)。

它是完全免费和开源的,您可以在此处找到更多信息。

优点:

  • 100%免费。
  • 可编写脚本的安装程序,因此您应该能够编写一些复杂的行为。
  • 大量的教程,良好的支持。
  • 不制作MSI,而是制作EXE(MSI可能不好

缺点:

  • 不制作MSI,而是制作EXE(MSI可以很好
  • 受脚本命令范围的相当限制

4. InstallShield和InstallAnywhere

我从未使用过InstallShield,但是出于完整性考虑,我想在这里提到它。我唯一的经验就是人们告诉我的内容,因此我不会列出其优缺点。

据我所知,它功能齐全,但是无法处理大量文件(> 1000)。您确实需要为此付费。InstallAnywhere是InstallShield的跨平台版本。更多信息在这里

5.其他解决方案

如果有人要添加其他任何解决方案,我将在此处列出其他部署解决方案:

Advanced Installer-免费版本允许基本的部署解决方案。感谢您的添加,佩克。

结论

有许多选项可用于为您的XNA游戏创建安装程序。尝试一对,看看您最满意的是什么。但是,关于创建安装程序的最重要的事情是确保它可以在多台计算机上运行。如果要创建MSI安装程序,则可以使用以下命令从命令行运行msi,从而使测试更加容易:

msiexec /i [name of installer.msi] /L*v verbose_log.txt

这将写出安装程序遇到的每个事件的日志,然后您可以从所需的任何diff工具中进行比较。

总之,请查看最适合您和您的工作流程的产品,测试是关键,无论何时测试安装程序,总是总是记录安装情况(大多数情况下,安装程序永远不会向您提供有关发生问题的有用信息)。

这变成比我预期更长的时间,对不起。但我确实希望能有所帮助。

〜雷


这是您可能需要添加以确保完整性的另一个安装程序工具:Advanced Installer(advancedinstaller.com)。用户界面可以完成很多事情,对于简单的项目就足够了。尚未将其用于任何复杂的事情。这个免费软件版本几乎具有一个简单项目所需的一切,因此我对此表示满意。
pek 2011年

1
“ Visual Studio部署解决方案”实际上是指两种独立的技术-ClickOnce和Windows Installer。Windows Installer创建外观正常的安装程序向导。它使用更广泛,外观更专业。ClickOnce易于使用,具有自动更新程序的功能,并且可以直接从网页安装。然而,ClickOnce是只净(不支持本地C ++项目) -因为XNA也仅净,这不应该是一个问题..
BlueRaja -丹尼Pflughoeft
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.