Интересно, зачем вообще нужно устанавливать игры. Я понимаю, что некоторым программам, таким как браузер, он нужен, чтобы он мог связать с ним некоторые типы файлов и запустить исполняемый файл или добавить значок в компонент «Программы / компоненты» в Windows. Но какова цель установки, скажем, игры Steam? Сам Steam управляет установкой / удалением игры, обновлением, запуском и т. Д. Если я разрабатываю свой собственный лаунчер для игр (который будет использовать установку), зачем мне использовать установщик для моих игр?
36
Ответы:
Есть немало причин, по которым вы хотите использовать установщик. Некоторые из них, от макушки головы:
Большинство игр (и, действительно, большинство приложений) в наши дни требуют использования некоторых вспомогательных библиотек DLL (таких как динамически связанная среда C ++ или среда Direct3D). Иногда эти DLL не могут быть законно распределены напрямую и должны быть установлены через распространяемые установщики. Раньше, например, это относится к библиотекам D3DX. Важно прочитать и понять условия лицензирования для ваших зависимостей. Если у вас есть такая зависимость, завершение ее установки в вашем собственном установщике может сгладить процесс для конечных пользователей.
Хорошо функционирующая современная программа не требует повышенного доступа (администратора) для запуска. Тем не менее, может потребоваться такой доступ будет установлен , и установщик обеспечивает достаточно простой способ сделать это , чтобы пользователи более или менее знакомы.
Точно так же, как вы заметили, некоторые игры захотят генерировать записи реестра, чтобы связывать типы файлов и тому подобное. Это также может потребовать возвышения.
Если игра опирается на общесистемные версии некоторых из ее зависимостей (как указано выше), она может получить выгоду от обновлений безопасности и исправлений, сделанных для этих зависимостей, легче (ОС заботится о них, а не разработчик игры). Но установка этих зависимостей в системных местах также требует повышения прав, и может быть очень легко ошибиться, если вы попросите пользователя (особенно нетехнического пользователя) сделать это вручную.
Наконец, не забывайте, как легко, как человек, который разбирается в технологиях, недооценивать представление, не разбирающееся в технологиях. Иногда «двойной щелчок для открытия» - это единственный навык, который вы можете принять (иногда даже не так много); Двойной щелчок установщика запускает программу, которую пользователь обычно может "хорошо, хорошо, хорошо". Двойной щелчок по ZIP-файлу просто извлекает его («ну, куда пошла моя игра?») Или, что еще хуже, открывает его как папку, где пользователи дважды щелкают по файлу .exe, и он не запускается правильно. Пользователи также не всегда понимают установщики, но это ближе к той парадигме, которую они стремятся получить, чем «распаковать архив и поместить файлы в« правильное место »».
Что касается Steam ... Steam предоставляет средства для помощи в установке и удалении игры, но он не делает все для вас. Стоит также отметить, что не все игры распространяются в Steam или исключительно в Steam, поэтому полностью полагаться на сервисы установки Steam означает, что эти игры в конечном итоге дублируют работу для каналов распространения, отличных от Steam.
источник
На самом деле, когда Steam устанавливает игру, есть еще установщик. Вокруг довольно много пакетов установки, и для сборки программы установки вы используете один из этих пакетов, а затем пишете скрипт установки, который сообщает программе установки:
Решение о том, что делать там, не принимается Steam, а принимается сценарием установки, который нужно написать независимо от того, какой пакет установки вы используете, будь то WiX, NSIS или Steam.
Unix имеет аналогичные шаги. Вы можете перенести большую часть этой логики на первый запуск приложения, но логика все еще существует, вы просто разбиваете установщик на несколько частей и помещаете одну часть в вашу игру вместо установщика. Для этого есть свои плюсы и минусы, которые я бы с удовольствием обсудил в другом вопросе.
источник
Вопрос невероятно двусмысленный, но я думаю, что OP спрашивает, почему игры должны быть установлены и запущены через приложение «store» на рабочем столе, а не просто быть автономными.
Ответ прост: дистрибьютор может зарабатывать больше денег, отслеживая то, что вы делаете, а Управление цифровыми ограничениями (DRM) более эффективно при выполнении операций с удаленного сервера. Шлюз магазина также служит вашим глазам и щелчкам продавцам и облегчает дополнительные покупки.
Если вы распространяете свою собственную игру, вам не нужно такое приложение для магазина. Используйте простой установщик и сделайте вашу игру без DRM.
источник