2010-04-13 2 views
2

У меня есть приложение, которое нужно использовать при печати на некоторых континентах. Например, при установке в Северной Америке приложение при запуске отображает другой логотип и название компании, чем в Европе.Изменение файла установки с помощью PHP

Файл установки предоставляется через PHP-скрипт. В настоящее время есть исполняемый файл Inno Setup для Windows и DMG для Mac OS X.

Я видел, что when downloading Google Chrome, вы можете указать, следует ли отправлять статистику использования. Краткий обзор JavaScript, который его контролирует, показывает, что это просто отправляется обратно на сервер с &usagestats=0 или &usagestats=1.

Как я могу повлиять на установку на основе настроек, указанных на странице загрузки PHP?

ответ

2

Если вы можете упаковать различные версии своего приложения в зависимости от региона, вы можете использовать какой-либо вид IP-адреса в базе данных страны, который определит, какой файл пользователь может загрузить.

Вы можете использовать онлайн-сервис, чтобы узнать, где находится пользователь (http://www.ip2location.com/) или получить базу данных и выполнить свои собственные запросы (несколько бесплатных источников, которые я не могу вспомнить прямо сейчас).

+0

Я собирался спуститься по этой дороге, но подумал, что сначала опросить экспертов. В основном, я надеялся, что может быть какой-то умный способ изменить файл установки, противоположный тому, чтобы иметь другой пакет для каждого континента. Спасибо за ссылку; Я сравню его с GeoIP (http://www.maxmind.com/app/geoip_country). –

+0

Inno Setup довольно продвинутый (он имеет возможности сценариев), поэтому упаковка вашего приложения может быть тривиальной. Если вы загружаете изображение/текст из файла конфигурации, вам просто нужно убедиться, что соответствующий файл конфигурации упакован. – zaf

+0

Я знаком со сценарием и на самом деле имею структуру для автоматизации здания (также для создания DMG на Mac). Думаю, это единственное жизнеспособное решение. –

1

Для примера Chrome вы можете увидеть, как они изменяют установщик, используя проект (теперь открытый) Omaha. Обновление Google.

documentation показывает, что они изменяют часть цифровой подписи Authenticode на загружаемом EXE, загруженный EXE будет извлекать файлы, читать измененную подпись Authenticode и затем запускать установку с требуемыми параметрами.

В нашей компании мы строим несколько (200+) «модификаций» установщика с различными встроенными параметрами или включенными/отключенными параметрами по умолчанию. Различные установщики помечены разными кодами отслеживания, чтобы узнать, насколько эффективна продвижение отдельной кампании. Кроме того, в одной и той же кампании может быть несколько установщиков, которые выбираются в зависимости от того, какие параметры пользователь поставил перед загрузкой (например, 32-разрядный, 64-битный, модуль A/B/C включен)