Devo installare un driver durante il mio processo di installazione in InnoSetup
. Per questo ho due .msi file di installazione per 32 bit/64 bit. Ora in Win7, questo driver è già incluso, quindi non ho bisogno di installarlo di nuovo. Finora, ho fatto questo:controllare la versione per Windows nel segmento [Esegui] del file di configurazione InnoSetup
[Tasks]
Name: "install_usb"; Description: "Install USB driver"; GroupDescription: "Drivers:";
[Files]
Source: "xy\driver\*"; DestDir: "{tmp}"
[Run]
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\driver_32bit.msi"""; StatusMsg: "Installing 32bit USB driver"; Check: not IsWin64(); Tasks: install_usb; Flags: skipifsilent
Filename: "msiexec.exe"; Parameters: "/i ""{tmp}\driver_64bit.msi"""; StatusMsg: "Installing 64bit USB driver"; Check: IsWin64(); Tasks: install_usb; Flags: skipifsilent
Quindi, l'utente può scegliere se desidera installare il driver. Se ha scelto di farlo, viene eseguito il driver corretto. Funziona bene Ora voglio scegliere di non installare il driver se> = Win7 è in esecuzione. Ho letto di OnlyBelowVersion: 6.1
ma mi sembra di essere in grado di fare qualcosa di simile nella sezione [Run]
:
[Run]
... Check: IsWin64() and OnlyBelowVersion:6.1; ...
Come posso usare OnlyBelowVersion
(o qualcosa di simile) nella sezione [Run]
?
Inoltre, voglio fare in modo che il msi viene eseguito nella modalità corretta (modalità a 64 bit per i sistemi a 64 bit). Perché penso, non è il caso adesso. È possibile far rispettare questo? Ho scoperto circa ArchitecturesInstallIn64BitMode=x64
, dove devo metterlo?
Cool, funziona perfettamente. Per la seconda domanda: Mentre sì, questo restituisce true in una versione x64, garantisce anche che gli eseguibili e l'installer vengano eseguiti in modalità 64 bit? – brimborium
Oh, pensavo che volessi installare l'installer 'driver_64bit.msi' su sistemi a 64 bit, non l'installer di InnoSetup. Quindi aggiornerò la risposta ... – TLama
Bene, l'autista è la parte importante. Ma se non è difficile includere anche l'installatore stesso in questa condizione, allora questa è una buona cosa. – brimborium