2017-11-14 44 views
0

기본 MSI 프로젝트 설치 프로그램이 있습니다. 사용자가 설치 프로그램을 실행하면 서버에서 EULA 파일을 다운로드하고 설치시 사용권 계약 대화 상자에 표시하려고합니다. InstallScript 설치 프로그램에서 가능합니다. 하지만 기본 MSI 설치 프로그램의 LicenseAgreement 대화 상자에서 EULA 파일을 어떻게 동적으로 표시 할 수 있습니까?InstallShield의 LicenseAgreement 대화 상자에 라이센스 파일을 동적으로 추가하는 방법

+0

이 아주 나쁜 생각이다. 설치 프로그램은 웹 액세스 용 프록시 서버가있는 시스템에서 실행될 수 있으며 여러 방화벽 (소프트웨어, 하드웨어) 및 보안 소프트웨어가있는 경우도 있습니다. 이러한 모든 요소가 다운로드를 방해 할 수 있습니다. 마찬가지로 사용자는 오프라인에서도 (무선 연결 없음) 간단히 설치할 수 있습니다. 브라우저가 열리도록 다른 방법을 사용하여 온라인 사용권 계약에 연결하면됩니다. 일반적으로 올바른 프록시 설정과 하드웨어 세부 정보가 구성됩니다. –

+0

또한 설치 프로그램을 자동 모드로 실행할 수도 있으므로 자동 설치 중에는 인터넷에 액세스하려는 사용자 지정 작업이 없어야합니다. 전체 GUI는 자동 모드에서 건너 뜁니다 만 사용자 지정 작업을 잘못 구성하면 자동 모드에서 런타임 오류가 발생할 수 있습니다. –

답변

1

서식있는 텍스트를 동적으로 다운로드 한 다음 임시보기를 사용하여 메모리 내 msi 데이터베이스를 업데이트하려면 사용자 지정 작업이 필요합니다. 참조 :

https://resources.flexera.com/web/pdf/archive/msiaccess.pdf

당신이 C#을/DTF를 사용하려면 더 같은있다 : 당신의 설치를 통해 일을 다운로드

http://blog.deploymentengineering.com/2008/07/dynamic-windows-installer-ui.html

+0

크리스토퍼에게 감사드립니다. InstallScript CA에서이 솔루션을 사용해 보았습니다. 특정 리치 텍스트를 읽을 수는 있지만 MSI DB를 임시로 업데이트하는 InstallScript API를 찾을 수 없습니다. 내 라이센스 계약조차도 엄청나 다. 그렇다면 MSI DB의 텍스트 필드에 데이터를 쓰는 것이 효율적일까요? –

+1

나는 매번 실행될 때마다 다른 EULA를 가질 수있는 설치 프로그램에 대한 언급을 피하려고합니다. 개인적으로 아무도 설치 프로그램에서 아무 것도 읽지 않으므로 UI를 가능한 간단하게 유지합니다. 아마도이 기능을 설치 프로그램에서 응용 프로그램으로 이동하는 것이 더 쉽고 더 쉬울 것입니다.이 응용 프로그램에서는 eula가 변경 될 때마다 더 쉽게 코드를 작성하고 사용자에게 더 자주 알릴 수 있습니다. –

+0

Chris에 동의하고 대신 응용 프로그램에 넣으십시오. 오류 처리 및 디버깅 기능이 향상되며 자동 설치 (회사 배포)가 실행 된 경우에도 사용자가 사용권 계약을 볼 수 있습니다. 설치 프로그램에서 응용 프로그램으로 기능을 이동하는 것이 좋습니다 (예 : [** 라이센스 **] (https://stackoverflow.com/questions/24359248/installer-with-online-registration-for-windows-application/24360658). # 24360658) (자세한 내용은 링크 참조 - 귀하의 EULA 문제의 근거는 유사합니다). "벅차"를 피하려면 아마도 앱에서 직접 코드를 작성하라는 제안을 받았을 것입니다. –