2010-04-13 9 views
2

특정 대륙에서 다운로드 할 때 브랜딩이 필요한 응용 프로그램이 있습니다. 예를 들어 북미에 설치하면 응용 프로그램을 실행할 때 유럽과 다른 로고 및 회사 이름이 표시됩니다.PHP로 설정 파일 수정

설치 파일은 PHP 스크립트를 통해 제공됩니다. 현재 Windows 용 Inno Setup 실행 파일과 Mac OS X 용 DMG가 있습니다.

나는 when downloading Google Chrome을 보았지만 사용 통계를 보내야하는지 여부를 지정할 수 있습니다. JavaScript를 제어하는 ​​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

저는 스크립트에 익숙하며 실제로 건물을 자동화하는 프레임 워크를 가지고 있습니다 (또한 Mac에서 DMG를 만들기위한 것임). 나는 이것이 유일하게 실행 가능한 해결책이라고 생각한다. –

1

Chrome 예를 들어, (현재 오픈 소스 인) Omaha 프로젝트를 사용하여 설치 프로그램을 어떻게 수정하는지 확인할 수 있습니다. Google 업데이트

은 다운로드 가능한 EXE에서 Authenticode 디지털 서명의 일부를 수정하고 있음을 보여주고, 다운로드 한 EXE는 파일을 추출하고 수정 된 Authenticode 서명을 읽은 다음 원하는 매개 변수로 설치 프로그램을 시작합니다.

우리 회사에서는 다양한 매개 변수가 내장 된 다중 (200+) 설치 프로그램 "변형"또는 기본적으로 설정/해제 된 옵션을 빌드합니다. 각기 다른 설치 관리자는 각기 다른 '추적 코드'로 태그가 붙여져 개별 캠페인의 홍보 효과를 확인합니다. 또한 동일한 캠페인에는 사용자가 다운로드하기 전에 선택한 옵션에 따라 여러 설치 프로그램이있을 수 있습니다 (예 : 32 비트, 64 비트, 모듈 A/B/C 포함)