Domanda

Devo avvolgere tutti i file che voglio installare nei singoli componenti? Qual è il vantaggio di mettere più file in un componente?

È stato utile?

Soluzione

Un motivo per " un file per componente " è resilienza . All'avvio di un'applicazione, Windows Installer può verificare se keypath di qualsiasi componente manca. Se manca il keypath, il componente viene reinstallato / riparato.

Se un componente ha più file, allora solo un file può essere la chiave di volta. In wix lo indichi impostando KeyPath = yes su un File element. Gli altri file non saranno quindi completamente protetti dalla resilienza di Windows Installer. Verranno reinstallati solo se il file keypath scompare.

Un altro motivo per avere " un file per componente " è quando si installano file in posizioni in cui potrebbero essere già presenti (ad es. un aggiornamento dell'applicazione, o quando si installa in c: \ windows \ system32 ). Il programma di installazione di Windows determina se è necessario installare un componente controllando la chiave di volta. Se il keypath è un file e il file è già presente (con la stessa versione o successiva), il componente non è non installato. Questo è un problema se gli altri file nel componente dovevano effettivamente essere installati / aggiornati.

Altri suggerimenti

Seguo l'approccio Microsoft utilizzato anche da InstallShield: http://msdn.microsoft.com/en-us/library/aa368269 (VS.85) aspx

Il link sopra riportato offre i vantaggi di questo approccio.

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