2010-07-21 17 views
7

sono stato molto gradire il nuovo Microsoft installatore hanno utilizzato, principalmente per le loro installazioni miscela che utilizzano WPF, mi chiedo se posso fare qualcosa di simile per la mia applicazione?Crea il mio programma di installazione da C#?

Le principali preoccupazioni sono la creazione dei file di programma Directory e registrare l'applicazione con Windows in modo che aggiunge al componente aggiuntivo/lista rimuovere le applicazioni.

C'è qualcuno con un po 'di esperienza su questo?

Grazie

+2

Usa WiX: http://wix.codeplex.com/ –

+4

o semplicemente abbattere e piangere: http://ventspace.wordpress.com/2010/06/30/windows-installer-is-terrible/ – jalf

+0

I penso che farò il mio da Blend, ma come faccio a codificarlo aggiungendolo per aggiungere/rimuovere? –

risposta

4

Microsoft hanno utilizzato WiX con several of their installers e sono riusciti a creare alcuni piuttosto originale, facile da usare e accessibili le interfacce utente. Esempi di questi includono SQL Server e Microsoft Office.

suona come il vostro installatore non ha bisogno di fare troppo per il sistema, creare una directory dei file di programma e installare alcuni file lì. È meglio usare Windows Installer per gestire questo, questo è quello per cui è stato creato, piuttosto che il tuo. Otterrete tutte le funzionalità per affrontare i guasti e tornare indietro in modo sicuro fuori dalla scatola. Lo sforzo richiesto per creare un programma di installazione di base in WiX è truly minimal e adding a basic GUI è altrettanto facile.

+0

Grazie molto utili e collegamenti di aiuto inclusi :) –

0

Si dovrebbe utilizzare uno strumento basato su Windows Installer perché MSI fa un sacco di cose scrivere. Cose che cercherete di imparare da zero (ad esempio, non conoscete la chiave di disinstallazione nel registro e MsiPublishProduct lo fa per voi). Se vuoi lavorare con le tue truppe su WPF puoi sempre prendere il tuo programma di installazione funzionante (diciamo WiX) e lavorare sul tuo gestore di interfaccia utente esterno usando DTF e WPF.

Problemi correlati