Domanda

Ho un file .ini con la configurazione.Devo verificare se esiste nella nuova installazione per evitare di crearlo di nuovo.Inoltre se il nuovo .ini ha nuovi campi da aggiungere al file esistente.

È stato utile?

Soluzione

Non installare un file ini come file, ma converti le voci in Voci della tabella IniFile.Ciò consente di trattare tutte le modifiche ai file ini come "unità di modifica atomica" che consentono la corretta fusione e ripristino tramite il meccanismo MSI integrato. Eviti tutta la complessità delle azioni personalizzate.

Come sottolinea Chris nel suo importante commento sull'aggiornamento:fai le cose nel modo giusto in Wix / MSI ed eviti molti problemi che iniziano a comparire quando i requisiti cambiano o gli aggiornamenti si complicano.Gli aggiornamenti IniFile implementati nel modo giusto sono robusti e semplici da gestire.

In Wix usi il file Elemento IniFile Per realizzare questo.Tutte le funzionalità di unione, il supporto di rollback e la gestione avanzata dei file ini sono disponibili gratuitamente.Tutto quello che devi fare è definire cosa deve essere aggiunto o modificato nel file ini durante l'installazione.Verrà creato anche se non è presente in primo luogo.

Usare l'elemento IniFile può sembrare più difficile di quanto non sia. Ecco un esempio.Puoi anche dare un'occhiata a tutorial Wix ben noto qui.

Tutti gli esperti MSI continuano a ripetere questo consiglio:non utilizzare mai un'azione personalizzata per modificare un sistema se sono presenti costrutti MSI integrati equivalenti.

Altri suggerimenti

Imposta NeververWrite="Sì" sul componente .ini file e quindi gestire l'aggiornamento tramite un'azione personalizzata.

Modifica : Generalmente è molto meglio usare la tabella Inifile come spiegato nella mia risposta da quando ottieni Rollback e Unisci Capacità . Tuttavia, alcune persone preferiscono il file INI installato come file a consente una facile modifica del file dall'esterno del file MSI . Anche se non preferito, questo consente alle persone di "hotfix" il file INI direttamente sulla posizione del supporto di installazione. Le squadre possono usarlo per far sì che il programma di installazione prenda l'ultimo INI dallo sviluppo. Ci sono problemi tecnici con ciò che può essere gestito tramite un'azione personalizzata (più significativamente problemi di sostituzione dei file sull'installazione). È anche possibile che un file INI possa caratterizzare Elementi non standard e formattazione che non si adattano alla tabella INIFILE (rara, ma possibile - le persone con senso quindi utilizzare un'estensione di file diversa dall'ini) . Come già spiegato, consiglio vivamente contro l'aggiornamento dei file INI tramite la propria azione personalizzata, a meno che tu non stia facendo qualcosa di molto speciale, in realtà è necessario. È complicato implementare e avere diritto.

Suggerirei di avere 2 file INI.Uno che l'installer possiede e uno che possiede l'applicazione / utente.L'installatore può sempre sovrascrivere il suo file INI e non preoccuparti mai di calcolare i dati dell'utente.

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