Frage

Ich habe die breite Palette von Installation und Web-Deployment-Lösungen wurde die Bewertung für Windows-Anwendungen. Ich werde einfach hier klären (ohne zu sehr ins Detail, diese Werkzeuge sind in anderen Fragen abgedeckt) mein Verständnis der Optionen:

  • NSIS - Free-Tool, das Setup Executables erzeugt. Kleine binär. Specialized, manchmal stumpf, Skriptsprache.
  • Inno Setup - Kostenlose Tools für das Setup ausführbare Dateien. Verschiedene binäre Kompressionsschemata. Pascal Scripting-Engine.
  • WIX - Free Toolset MSI-Binärdateien zu erzeugen. XML-Definitionen Sprache.
  • WIX Klicken - Zusätzliche Werkzeuge für die Verpackung, Web-Download und Auto-Update-Erkennung (jetzt Teil von WIX Kern).
  • Install - Kommerzielle Entwicklungsumgebung für die Installation Verpackung. Erzeugt MSI-Binärdateien. C-ähnliche InstallScript- Sprache.
  • Wise - Kommerzielle Entwicklungsumgebung für die Installation Verpackung. Erzeugt MSI-Binärdateien.
  • Clickonce - Visual Studio unterstützt Rahmen für Anwendungen auf einen Webserver, mit automatischer Erkennung von Updates veröffentlichen. Keine Unterstützung für benutzerdefinierte Installation Anforderungen (INI-Dateien, Registry etc ...). Packages Setup als MSI binär.
  • installieren Aware - Kommerzielle Entwicklungsumgebung für die Installation. Erzeugt MSI-Binärdateien. Automatische Update-Framework (Web-Update).

Wenn ich jede verpasst haben, lassen Sie es mich wissen.

Und fand einige nützliche Diskussionen dieser Technologien auf Stackoverflow:

Ich habe mit ein paar dieser Lösungen gearbeitet, sowie eine Handvoll proprietäre interne Installationslösungen. Sie sind hauptsächlich mit Installationen Verpackung und Bereitstellung eines Rahmens für Entwickler die Laufzeitumgebung zuzugreifen. Mit dem wachsenden Bedarf an Web-Deployment und automatisches Software-Updates, erwartete ich mehr von einem Konsens unter den Entwicklern über einen Rahmen für Web-Lieferung von Software und nachfolgenden Aktualisierungen zu finden, habe ich nicht wirklich, dass ein Konsens gefunden. Sicherlich gibt es Lösungen zur Verfügung (Clickonce, Klicken, Installshield Update Service), aber sie haben jeweils erheblichen Einschränkungen (bitte korrigieren Sie mich, wenn ich eine dieser Fehl darstellen). Ich würde interessieren, in einem Rahmen, der einige der folgenden bereitgestellt:

  • Third Party Hosting / Verwaltung von Updates.
  • Zugriff auf Client-Umgebung (INI-Dateien, Registry, etc ..).
  • Benutzerregistrierung / Aktivierung.
  • Feedback / Fehlerberichterstattung

Dies läßt mich mit dem starken Eindruck, dass der beste Weg, um das Web-Deployment Problem ist durch eine speziell angefertigten proprietäre Lösung (möglicherweise Nutzung bestehende Installer Verpackung) zu nähern. Ich habe diese Art von Lösung der Arbeit gesehen gut für eine Reihe von erfolgreichen Anwendungen:

  • FileZilla- HTTP-Anforderung an update.filezilla-project.org nach Updates zu suchen, lädt ein NSIS binary (glaube ich) und schaltet dann ab, laufen die Installation.
  • Automatische Updates für Massively Multiplayer-Spiele sind absolut notwendig und universell proprietäre Systeme implementiert.

So, endlich, auf meine Fragen:

  • Habe ich einen Web-Deployment Framework verpasst, die die Funktionalität benötige ich?
  • Sind zu spezifisch meine Anforderungen angemessen zu einem fremden Rahmen zu erwarten zu liefern?
  • Soll ich kaufen oder bauen?
War es hilfreich?

Lösung

  • Wenn Sie Ihre spezifischen Anforderungen sind Kerne für Ihr Unternehmen; dh ein Teil Ihres Unternehmens ist eine reibungslose und benutzerfreundliche Bereitstellung / Installation zur Verfügung zu stellen und Sie das Gefühl, dass keiner der verfügbaren Bereitstellungsbibliotheken können Sie dies erreichen können, sicherlich dann gehen Sie vor und bauen Sie Ihre eigenen.
  • Wenn Sie Ihre spezifischen Anforderungen zu haben wäre schön, aber sie haben nicht einen wesentlichen Teil Ihres Unternehmens machen; dh der Endverbraucher in der Regel nicht erwarten oder eine reibungslose Installation benötigen, oder nie tun müssen, dass sich (dh sie diesen Schritt auf ihre IT-Abteilung übergeben), dann ist die Notwendigkeit, Ihre eigenen zu bauen nur für Ihre eigenen spezifischen Anforderungen wahrscheinlich durch den zusätzlichen Aufwand aufgewogen werden, die bedeuten würde.

Ich denke, dass Ihr Eindruck, dass Sie eine individuelle Lösung mehr brauchen ist ein Ton ein; es scheint, wie Ihre Anforderungen an die Erfahrung Ihres Produktes sein Schlüssel gehen, vor allem, wenn Sie wirklich brauchen, nahtlose automatische Updates und Feedback.

Andere Tipps

Ich würde Vorsicht auf InstallAware drängen. Wir hatten vor kurzem eine schockierende Erfahrung mit ihrem Kunden-Support.

Wir folgten einer ihrer Beispielprojekte auf den Brief, kläglich gescheitert. Raised ein Support-Ticket mit Kunden-Support und uns wurde gesagt, es würde uns für sie $ 199 kosten suchen ihren eigenen Code zu fixieren.

Wir hoben dann das gleiche Problem in den Anwenderforen und wurden prompt verboten, weil dieses Kreuz Entsendung gebildet und war nicht erlaubt. Auch wenn dies nicht in ihren Geschäftsbedingungen erwähnt. In der Tat, verboten sie unsere IP, damit niemand in unserer Gesellschaft zu den Foren veröffentlichen kann.

Eine sehr schlechte Erfahrung und den wir wiederholen gewohnt. Wir suchen jetzt InstallAware so schnell wie möglich zu ersetzen.

Kauf InstallAware auf eigene Gefahr.

Absolut mit Plakate zustimmen, der weg von dem zu bleiben, von InstallAware. Sie haben eine lange Geschichte der wirklich absurd Ethik Probleme hatte, und sie behandeln ihre eigenen Kunden schrecklich. Sie können geradezu beleidigend und beleidigend sein.

Beware InstallAware!

Ich stimme völlig zu InstallAware.

Nach der Verwendung von WiX, NSIS und InstallAware, habe ich demütig zugeben, dass sie alle übertrieben für waren, was ich brauche als Software-Entwickler wirklich. Es gibt keine Projekte, die ich bisher gemacht habe, die nicht in das Visual Studio-Bereitstellung-Projekt mit eingesetzt werden könnte.

Ist es begrenzt? Ja.

Es ist auch sehr einfach eine Anwendung zu erlernen. Außerdem Sie eigentlich können haben wirklich nette Dinge wie automatisch erstellen Patches (MSP-Dateien) durch Techniken wie hier

Ich verstehe, dass Sie nicht tun können alles innerhalb eines Visual Studio Setup-Projekt, aber es ist ziemlich überraschend, was Sie können erreichen. Es ist kostenlos, es ist einfach und, ehrlich gesagt, für den allgemeinen Gebrauch eine bessere Option ist als endlose Stunden verbringen Wix irrsinnig XML Lernen (beeindruckend, wie es ist), oder InstallAware die ausführliche Skripte ...

Mit VS-Setup ist es Drag'n'Drop & build'n'deploy. Jede andere Lösung, die ich versucht habe, Rücken gesetzt hatte ... sie können Ihr Projekt Ausgang nicht automatisch erkennen ... oder spezielle Filter benötigen, um nicht unerwünschte Ausgaben aus dem Build zu enthalten.

Mein Vorschlag ist also: Wenn Sie einfach nur Ihr Projekt eingesetzt werden, dann lernen:

  1. Wie eine benutzerdefinierte Installer-Klasse zu bauen, und
  2. Wie Sie Ihre eigene Voraussetzung Pakete an Autor

Diese sind beide recht einfach Fähigkeiten zu meistern, und erfüllen die Anforderungen der meisten Entwickler.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top