Domanda

Ho creato un MSI che comprende anche il file di installazione per il rapporto di cristallo (CRRedist2008_x86.msi). Vorrei eseguire il rapporto di cristallo MSI con il programma di installazione principale. Capisco, devo usare un qualche tipo di azione personalizzata, ma non sono sicuro circa il modo esatto per andare su questo.

Forse sarebbero i passaggi

i) Lascia la finitura di installazione principale ii) Eseguire il "CRRedist2008_x86.msi" utilizzando il comando msiexec [non sono sicuro come fare questo]

Qualcuno mi potrebbe fornire indicazioni su come raggiungere questo obiettivo?

È stato utile?

Soluzione

Ci sono due approcci per questo:

  1. Aggiungere il programma di installazione di Crystal Reports come prerequisito. La maggior parte degli strumenti di configurazione di authoring supportano questa ed è il metodo consigliato.

  2. Crea un'azione personalizzata che lancia il secondo programma di installazione. Windows Installer non dispone di un'azione personalizzata predefinita per il lancio di altri MSI come file regolari, ma si può provare a creare un EXE personalizzato che utilizza ShellExecute per avviare il file MSI.

Per eseguire un'altra installazione MSI al termine dell'installazione è necessario organizzarsi per tempo dopo l'azione InstallFinalize ed eseguirlo con il msidbCustomActionTypeAsync e msidbCustomActionTypeContinue bandiere: http://msdn.microsoft.com/en-us/ biblioteca / aa368071 (VS.85) aspx

Altri suggerimenti

La cosa migliore è quella di utilizzare un programma di avvio automatico (ho sentito parlare bene di libera dotNetInstaller , o ci sono alternative commerciali disponibili)

Poi configurare il programma di avvio automatico per fare il seguente:

  • Verificare la presenza di Crystal Reports, installare se non presenti
  • Verificare la presenza di eventuali altre dipendenze, tentare di installare, se non presente
  • Esegui il file di installazione (che dovrebbe fare di nuovo questi controlli, e interruzione se non sono già installati dipendenze)

Ad esempio, con il programma di avvio automatico che uso, controlliamo per

  • Windows Installer 3.1
  • NET 2.0 +

Se non sono presenti, stanno quindi scaricato dalla rete e installato automaticamente. Tutto questo accade prima installare il principale inizia.

La speranza che aiuta:)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top