Auto applicazione aggiornamento installare con WiX?
-
18-09-2019 - |
Domanda
Sto scrivendo un programma che deve essere installato su un gran numero di desktop e anche bisogno di aggiornare se stesso. Stiamo cercando di WIX per creare l'installazione. Ho usato ClickOnce e non è una buona soluzione per questa installazione. WIX sembra adattarsi, ma non v'è alcun buon processo di aggiornamento automatico che ho trovato.
Ho guardato ClickThrough , ma non sembra pronto per il debutto ancora. Qualcuno ha un'altra buona soluzione da utilizzare con WiX (o forse un altro installare programma) per l'aggiornamento automatico installare un'applicazione?
Soluzione
Si, ClickThrough è davvero quello che stai cercando qui. Ci sono pezzi in esso che il lavoro. Potreste essere in grado di sezionare il codice e utilizzare da soli, senza tutti gli extra "UI + costruire l'integrazione". La maggior parte dei bug sono ai livelli più alti. Alla radice, l'aggiornamento RSS ed eseguibili funzionano bene Bootstrapper.
Altri suggerimenti
Proprio come "auto" -update ha a essere? :-)
Usiamo WiX (2.0) per un app che ha bisogno di essere installato più e più volte. Finché si va con "importanti aggiornamenti" da versione a versione, che funziona bene - è possibile disinstallare la vecchia versione e poi re-installare quella nuova -. Senza grossi problemi qui
La chiave è di avere un "UpgradeCode" stabile (un GUID nel vostro WiX) che non cambia mai - è la chiave per la vostra applicazione -. E di avere un nuovo ProductCode per ogni rilascio
Poi, nel file WXS, è necessario due bit:
<Upgrade Id='--your-updatecode-GUID-here--'>
<UpgradeVersion MigrateFeatures='yes' RemoveFeatures='ALL' />
</Upgrade>
<InstallExecuteSequence>
<RemoveExistingProducts After='InstallInitialize' />
</InstallExecuteSequence>
Che dovrebbe farlo!
Oltre a questo - nulla di veramente molto da dire - funziona solo: -)
Windows Installer non è realmente progettato per il software "self aggiornamento". Se non avete bisogno di MSI, o realmente bisogno l'applicazione di "tirare", è proprio aggiornamenti quindi utilizzare NSIS o qualche altro strumento e scrivere il proprio aggiornamento di routine / servizio.
Tuttavia, se questo viene installato su un gran numero di desktop all'interno di una singola organizzazione, allora la soluzione migliore sarebbe quella di distribuire un MSI tramite Active Directory. È quindi possibile "spingere" gli aggiornamenti utilizzando Criteri di gruppo. Questo sta per essere molto più robusto di qualsiasi applicazione che si aggiorna.