Domanda

Ho usato ClickOnce molto negli anni, ma mi sono imbattuto in un molti dei suoi limiti. Quali alternative ci sono per la distribuzione Web?

Finora l'unico che sono stato in grado di visualizzare è ClickThrough , che fa parte di WiX ora sul masterizzatore posteriore. Ce ne sono altri che hanno avuto successo?

È stato utile?

Soluzione

Dopo aver usato WiX, NSIS e InstallAware, devo ammettere umilmente che erano tutti eccessivi per ciò di cui ho veramente bisogno come sviluppatore di software. Non ci sono progetti che ho fatto finora che non potevano essere distribuiti usando il progetto di distribuzione di Visual Studio.

È limitato? Sì.

È anche molto semplice da imparare e usare. Inoltre, puoi realmente fare cose davvero ordinate come creare automaticamente patch (file .MSP) usando le tecniche descritte qui

Capisco perfettamente che non puoi fare tutto all'interno di un progetto di installazione di Visual Studio, ma è piuttosto sorprendente ciò che puoi realizzare. È gratuito, è facile e, francamente, per uso generale è un'opzione migliore rispetto a passare ore interminabili a imparare l'XML strabiliante di WiX (impressionante com'è), o gli script dettagliati di InstallAware.

Con VS Setup, è drag'n'drop & amp; build'n'deploy. Ogni altra soluzione che ho provato ha avuto battute d'arresto ... non possono rilevare automaticamente l'output del tuo progetto ... o hanno bisogno di filtri speciali per non includere output indesiderati dalla build.

Il mio suggerimento è quindi: se desideri semplicemente distribuire il tuo progetto, allora impara:

  1. Come creare una classe di installazione personalizzata e
  2. Come creare i propri pacchetti prerequisiti

Queste sono entrambe abilità ragionevolmente facili da padroneggiare e soddisfare le esigenze della maggior parte degli sviluppatori.

Altri suggerimenti

Squirrel : è come ClickOnce, ma funziona.

Squirrel è sia un insieme di strumenti che una libreria, per gestire completamente l'installazione e l'aggiornamento dell'applicazione Windows desktop, scritta in C # o in qualsiasi altra lingua (ovvero, Squirrel può gestire applicazioni C ++ native).

Squirrel utilizza i pacchetti NuGet per creare pacchetti di installazione e aggiornamento, il che significa che probabilmente conosci già quasi tutto ciò di cui hai bisogno per creare un programma di installazione.

Quali limitazioni stai riscontrando con ClickOnce? Quando non utilizzo ClickOnce, utilizzo NSIS (sebbene sia possibile utilizzare la maggior parte delle altre lingue di installazione) / sistemi) per creare un'applicazione eseguibile e autoinstallante.

Cioè, quando si esegue il download, è in esecuzione l'applicazione e non ci sono domande sulla configurazione. C'è un'opzione di menu o un rilevatore di uso frequente che consente l'installazione permanente.

I due problemi principali sono:

  1. File delle impostazioni
  2. Impostazioni del registro locale

Per i file delle impostazioni, utilizzo un servizio Web remoto per contenere gli stati, ecc.

Se sono necessarie impostazioni del registro locale (associazioni di file, ecc.), è necessario eseguire un'installazione corretta, ma ciò può essere fatto in silenzio quando l'utente sta lavorando con l'applicazione per la prima volta.

ClickOnce non riesce costantemente ad aggiornare l'applicazione e richiede la reinstallazione, è buggy e instabile. Queste sono le mie esperienze, costanti problemi con il clic una volta. I clienti mi chiamano costantemente per risolverlo, tutto ciò che posso fare è disinstallarlo e reinstallarlo. Ho pensato seriamente di creare la mia semplice soluzione anziché fare clic una volta.

Dai un'occhiata http://simpldeploy.com È simile allo scoiattolo ma integrato in VS come ClickOnce. E ha finestre di dialogo (facoltative) come ClickOnce.

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