Выбирайте
Существует несколько способов создать установщик для чего угодно, включая игру XNA.
1. Решение по развертыванию Visual Studio
Это довольно просто. Если у вас есть профессиональная версия Visual Studio, вы можете добавить проект развертывания в свое решение, и всякий раз, когда вы компилируете этот проект, он скомпилирует все необходимые зависимости / ресурсы для вас и в конце сделает вас хорошим установщиком.
Эта ссылка содержит большую часть информации, которая понадобится вам для начала работы, и содержит информацию о перераспределении платформы .NET и других связанных кусочках.
Плюсы:
- Интегрировано в Visual Studio
- Простота в получении простого установщика MSI, созданного и готового к распространению
Минусы:
- Недоступно в некоторых версиях Visual Studio
- Трудно заставить вашего установщика сделать что-то более сложное, чем установка / восстановление / удаление.
2. WiX
Если у вас нет возможности создания проекта развертывания Visual Studio, из-за ограниченной версии Visual Studio доступно несколько бесплатных альтернатив. WiX является одна из этих альтернатив.
Он обозначает Windows Installer XML и может быть интегрирован в Visual Studio, так же, как проекты VS Deployment. Это также создает MSI установки после компиляции. Имейте в виду, что WiX имеет крутой кривой обучения, но он допускает различные сложности в вашем установщике.
Вы можете узнать больше об этом здесь
Плюсы:
- 100% бесплатно.
- Мощный. Если вы хотите сделать что-то нелепо сложное в вашей программе установки, просто создайте C # DLL, свяжите ее с вашим проектом WiX и запустите как пользовательское действие. (Почти) Все возможно.
- Прекрасно интегрируется в Visual Studio, очень и очень хорошо работает с проектами .NET.
- Люди из списка рассылки WiX оказывают большую поддержку.
Минусы:
- Трудно понять и начать из-за крутой кривой обучения.
- Ошибки практически бессмысленны, когда вы начинаете, и требуется некоторое время, чтобы понять, в чем реальная проблема в вашем коде.
- Не хватает учебников по данной теме. Большинство (по моему мнению) плохо сформулированы, плохо структурированы и совершенно запутаны.
3. NSIS
NSIS - это полнофункциональный пакет для создания установщика. Я признаю, я едва использовал это, но когда я сделал это, было приятным опытом. Есть много учебных пособий, они полностью написаны для сценариев, но я бы, вероятно, сказал, что он не такой мощный, как WiX (если кто-то считает, что это не так, не стесняйтесь меня поправлять).
Это абсолютно бесплатно и с открытым исходным кодом, и вы можете найти более подробную информацию об этом здесь .
Плюсы:
- 100% бесплатно.
- Scriptable инсталлятор, так что вы должны быть в состоянии кодировать некоторые сложное поведение.
- Хорошее количество учебников, хорошая поддержка.
- Не сделать MSI, но EXE вместо (MSI может быть плохо )
Минусы:
- Не делает MSI, но вместо этого EXE (MSI может быть хорошим )
- Достаточно ограничиваться рамками команд сценариев
4. Установите Shield и установите Anywhere
Я никогда не использовал InstallShield, но для полноты картины решил упомянуть об этом здесь. Мой единственный опыт основан на том, что мне сказали люди, поэтому я не буду перечислять плюсы и минусы.
Насколько я знаю, он довольно полнофункциональный, но не может обрабатывать большое количество файлов (> 1000). Вы должны заплатить за это все же. InstallAnywhere - это кроссплатформенная версия InstallShield. Больше информации здесь .
5. Другие решения
Я перечислю другие решения для развертывания здесь, если у кого-то есть другие, чтобы добавить:
Advanced Installer - бесплатная версия позволяет использовать базовые решения для развертывания. Спасибо за это дополнение, пек.
Вывод
Существует целый ряд вариантов, доступных для создания установщика для вашей игры XNA. Попробуйте пару, посмотрите, что вы получите больше всего. Однако самое важное в создании установщиков - это обеспечение его работы на нескольких компьютерах. Если вы создаете установщик MSI, тестирование значительно упрощается благодаря запуску msi из командной строки с помощью следующей команды:
msiexec /i [name of installer.msi] /L*v verbose_log.txt
Это запишет журнал каждого отдельного события, которое проходит установщик, который вы можете затем сравнить с любым другим инструментом сравнения.
В заключение посмотрите, что подходит вам и вашему рабочему процессу лучше всего, тестирование является ключевым, и всякий раз, когда вы тестируете свой установщик, всегда ВСЕГДА регистрируйте установки (в большинстве случаев установщики никогда не дают вам никакой полезной информации о том, что пошло не так).
Это превратилось в нечто более длинное, чем я ожидал, и мне жаль. Но я надеюсь, что это поможет.
~ Ray