Domanda

Generalmente quando utilizzo ClickOnce quando creo un programma VB.NET, ma presenta alcuni aspetti negativi.Non ho mai usato nient'altro, quindi non sono sicuro di quali siano le mie opzioni.

Svantaggi di ClickOnce:

  • È costituito da più file: sembra più semplice distribuire un file piuttosto che gestire un gruppo di file e il downloader per scaricare tali file.
  • Devi ricostruirlo per le installazioni da CD (per quando l'utente finale non dispone di Internet)
  • Il programma non finisce in Programmi: finisce nascosto in qualche cartella di cattura dell'applicazione, rendendo molto più difficile il collegamento.

Pro di ClickOnce:

  • Funziona.Magicamente.Ed è integrato in VisualStudio 2008 Express.
  • Semplifica l'aggiornamento dell'applicazione.

Anche Windows Installer fa queste cose?So che non ha nessuno degli svantaggi di ClickOnce, ma sarebbe bello sapere se ha anche i vantaggi di ClickOnce.

Aggiornamento:Alla fine ho utilizzato Wix 2 (Wix 3 era disponibile ma al momento in cui ho realizzato il progetto nessuno aveva un tutorial competente).È stato bello perché supportava le tre cose di cui (alla fine) avevo bisogno.Un collegamento opzionale per l'avvio con Windows, un'opzione per l'avvio al termine del programma di installazione e tre paragrafi di testo che, secondo il mio capo, impediranno agli utenti di fare clic sull'opzione sbagliata.

È stato utile?

Soluzione

Hai già visto WiX?

http://wix.sourceforge.net/

Crea programmi di installazione di Windows utilizzando un file XML e dispone di librerie aggiuntive da utilizzare se desideri rendere più fantasiosi i tuoi programmi di installazione e simili.Devo ammettere che la curva di apprendimento per me è stata medio-alta per iniziare, ma in seguito sono stato in grado di creare un secondo programma di installazione senza problemi.

Gestirà gli aggiornamenti e altri elementi se lo desideri e potrai applicare autorizzazioni per cartelle e simili ai programmi di installazione.Ti dà anche un maggiore controllo su dove esattamente vuoi installare i file ed è compatibile con tutte le convenzioni di cartelle standardizzate di Windows, quindi puoi specificare "PROGRAM_DATA" o qualcosa in tal senso e il programma di installazione saprà inserirlo in C:\Documents e Impostazioni utti gli utenti\Dati applicazioni o C:\ProgramData a seconda se utilizzi XP o Vista.

Si vocifera che Office 2007 e Visual Studio 2008 abbiano utilizzato WiX per creare il proprio programma di installazione, ma non sono riuscito a verificarlo da nessuna parte.Credo che sia sviluppato da alcune persone Microsoft all'interno.

Altri suggerimenti

Sono d'accordo con Joseph, la mia esperienza con ClickOnce è ottima per la stragrande maggioranza dei progetti, soprattutto in un ambiente aziendale dove semplifica la creazione, la pubblicazione e l'implementazione.Implementare l'"aggiornamento forzato" per garantire che gli utenti dispongano della versione più recente durante l'esecuzione è molto più semplice in ClickOnce ed è uno dei motivi principali del mio utilizzo.

Problemi con ClickOnce:In un ambiente aziendale ha problemi con i server proxy e le soluzioni alternative sono tutt'altro che ideali.In questi casi ho dovuto distribuire alcune app da percorsi UNC... ma non puoi farlo sempre.Il suo "sandbox" è fantastico, finché non vuoi trovare l'eseguibile o creare un collegamento sul desktop.

Non sono ancora stati distribuiti dal 2008, quindi non sono sicuro che questi problemi esistano ancora.

Creare un progetto di installazione, con una dipendenza dal tuo EXE (che a sua volta dipende da ciò di cui ha bisogno) è un processo abbastanza semplice, ma per questo avrai bisogno almeno di VS Standard Edition.

All'interno del progetto di installazione, puoi creare attività personalizzate e passaggi di dialogo che ti consentono di eseguire qualsiasi cosa tu codifichi.

Ciò che manca è la magia dell'aggiornamento automatico e del controllo della versione che ottieni con ClickOnce.Puoi ancora integrarlo, semplicemente non è automatico.

Non credo che esista un modo semplice per fare in modo che un progetto Windows Installer abbia la facilità o l'aggiornabilità di ClickOnce.Utilizzo ClickOnce per tutte le app .NET interne che sviluppo (ad eccezione delle app console).Trovo che in un ambiente aziendale la facilità di implementazione superi la mancanza di flessibilità.

ClickOnce può essere problematico se sono presenti componenti di terze parti che devono essere installati insieme al prodotto.È possibile aggirare questo problema in una certa misura creando programmi di installazione per i componenti, tuttavia con la distribuzione ClickOnce è necessario creare la logica per aggiornare detti programmi di installazione dei componenti.

In una vita precedente ho utilizzato Wise For Windows Installer per creare pacchetti di installazione.Anche se la creazione degli aggiornamenti con esso non era automatica come ClickOnce, erano più precisi e meno gravosi quando si trattava di altri componenti che dovevano essere registrati/aggiunti.

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