Dies ist eine philosophische Frage.
Bei einer hypothetischen Desktop-Anwendung und dem Wunsch, automatische Aktualisierungen bereitzustellen (anstatt die Benutzer zu zwingen, eine Website zu besuchen, nach Aktualisierungen zu suchen, Aktualisierungen herunterzuladen und zu installieren), ist welche der beiden Vorgehensweisen eher eine "bewährte Vorgehensweise"?
Wie bei iTunes wird geprüft, ob eine neue Version vorhanden ist, und der Benutzer wird aufgefordert, die neue Version herunterzuladen. In diesem Fall wird eine ausführbare Vollinstallationsdatei (in diesem Fall eine Windows Installer- Datei (.msi)) heruntergeladen, mit der die Vollversion installiert wird (nicht nur ein Upgrade auf die vorherige Version - zu viel für die Verwaltung, wenn mehrere Versionen vorhanden sind). . Angenommen, es ist Version 10.1.1. Unabhängig davon, ob Sie eine Neuinstallation oder ein Upgrade durchführen, verwenden Sie dieselbe Datei. Nach dem Herunterladen wird der Benutzer angewiesen, die Anwendung zu schließen und die Installationsdatei selbst auszuführen.
Ähnlich wie bei der anderen wird nach einer neuen Version gesucht und der Benutzer zum Herunterladen aufgefordert. Statt jedoch nur eine ausführbare Datei herunterzuladen und den Benutzer zum Ausführen aufzufordern, wird sie tatsächlich für ihn ausgeführt - das geöffnete Programm wird heruntergefahren und angefordert die notwendige Sicherheit, um Dateien zu installieren.
Probleme mit # 2: Viele Probleme beim Beenden des Programms, da das Programm andere Programme ( Outlook und Excel ) öffnen kann , oder was ist, wenn der Benutzer in der Mitte von etwas war. Um die Sicherheit zu gewährleisten, benötigen Sie lokalen Administratorzugriff für die Installation. Was tun, wenn Sie keinen haben? In späteren Versionen von Windows können Sie die Sicherheit der Person nicht einfach außer Kraft setzen.
Probleme mit Nummer 1: Einige Leute glauben, dass dies für den Endbenutzer zu schwierig und zu anstrengend sein wird.
Ich würde es sehr bevorzugen, mit Nummer 1 fortzufahren, da dadurch 80-120 Stunden für mein Projekt eingespart werden und die Implementierung und Wartung einfacher ist. Wir haben jedoch Menschen, die sich von allen Seiten stark fühlen.
Was ist eine bewährte Methode für diese Art von Dingen?
quelle
Antworten:
Persönlich mag ich den Ansatz von Google Chrome eher. Ein Basisverzeichnis mit einem Startprogramm und Unterverzeichnissen für jede installierte Version der Software. Der Launcher sucht nur nach der höchsten Versionsnummer und verwendet diese und löscht ältere Versionen nach Bedarf. Von Zeit zu Zeit wird eine Updater-Task ausgeführt, um neue Verzeichnisse herunterzuladen und zu erstellen. Wenn neue Versionen installiert werden, fordert die ausgeführte Anwendung einen Neustart an, um die neue Version zu verwenden.
quelle
Sie sollten keine unnötigen Starteinträge erstellen, um nach Updates wie Adobe Flash Player zu suchen (es ist schwierig, sie alle aufzuspüren, und ich kann keine Möglichkeit finden, die Überprüfungen zu deaktivieren ...) oder iTunes. Es ärgert den Benutzer (Geeks, sowieso). Eine bessere Option wäre, beim Start der Anwendung nach Updates zu suchen, wie dies bei Firefox der Fall ist .
Ein einfaches, nicht aufdringliches "Updates installieren?" Fenster wird Benutzer nicht stören. Lassen Sie es im Hintergrund aktualisieren, während der Benutzer andere Aufgaben ausführt, und starten Sie dann automatisch Ihre Anwendung.
Stellen Sie einfach sicher, dass Sie eine Option hinzufügen:
Oder etwas ähnliches.
Wenn es die Mühe wert ist, würde ich sagen, machen Sie es. Das ist deine Entscheidung.
quelle
Ich denke, Sie möchten ein "ClickOnce" -Setup.
http://msdn.microsoft.com/en-us/library/142dbbz4(v=vs.90).aspx
ClickOnce ist eine Bereitstellungstechnologie, mit der Sie sich selbst aktualisierende Windows-basierte Anwendungen erstellen können, die mit minimaler Benutzerinteraktion installiert und ausgeführt werden können. Die ClickOnce-Bereitstellung überwindet drei Hauptprobleme bei der Bereitstellung:
Schwierigkeiten beim Aktualisieren von Anwendungen. Bei der Bereitstellung von Microsoft Windows Installer muss der Benutzer bei jeder Aktualisierung einer Anwendung die gesamte Anwendung neu installieren. Mit der ClickOnce-Bereitstellung können Sie Updates automatisch bereitstellen. Es werden nur die Teile der Anwendung heruntergeladen, die geändert wurden. Anschließend wird die vollständige, aktualisierte Anwendung aus einem neuen Ordner nebeneinander erneut installiert.
Auswirkungen auf den Computer des Benutzers. Bei der Bereitstellung von Windows Installer sind Anwendungen häufig auf gemeinsam genutzte Komponenten angewiesen, was zu Versionskonflikten führen kann. Bei der ClickOnce-Bereitstellung ist jede Anwendung eigenständig und kann andere Anwendungen nicht beeinträchtigen.
Sicherheitsberechtigungen. Die Bereitstellung von Windows Installer erfordert Administratorrechte und ermöglicht nur eine eingeschränkte Benutzerinstallation. Die ClickOnce-Bereitstellung ermöglicht Benutzern ohne Administratorrechte die Installation und gewährt nur die für die Anwendung erforderlichen Berechtigungen für die Codezugriffssicherheit.
quelle
Ich persönlich habe Anwendungen geschätzt, die dem Sparkle-Framework ähneln . Ich denke, es ist nur ein Mac-Ding, aber es macht im Wesentlichen Folgendes (über den Kopf - ich gehe davon aus, dass das Verhalten angepasst werden kann).
Wenn man bedenkt, dass es sich um .msi handelt, ist dieses spezielle Framework nicht wirklich anwendbar, aber in diesem Fall würde ich lieber eine vorhandene Lösung wählen, als das Rad neu zu erfinden.
quelle
Ich würde sagen, Sie müssen Ihren Benutzer wirklich kennen. Wenn sie versiert sind und ein starkes Interesse daran haben, auf dem neuesten Stand zu bleiben, wird Nummer 1 funktionieren.
Unterschätzen Sie niemals die Faulheit eines Benutzers, denn wenn sein Programm nicht mehr funktioniert, weil es nicht mehr unterstützt wird, werden Sie später mit Helpdesk-Anrufen überflutet.
Die Zeit wird entweder von der Entwicklung (# 2) oder vom Support (# 1) kommen.
quelle
Was ist damit?
Sie müssen den Benutzer nicht belästigen, Sie müssen nichts schließen ...
quelle
Warum nicht etwas in der Mitte?
Fordern Sie zum Herunterladen auf (oder wählen Sie "Automatisch herunterladen"), nachdem Sie aufgefordert wurden , das heruntergeladene Update zu installieren (führen Sie die MSI-Datei aus). Auf diese Weise negieren Sie die Kehrseite von # 2 (schließen mitten in der Arbeit des Benutzers) und behalten dennoch den Komfort bei, der durch 1 weiteren Klick entsteht.
Das Dialogfeld " Update schließen und installieren? " Sollte leicht zugänglich (aber nicht ärgerlich) sein, wenn der Benutzer dies zunächst ablehnt. Mit "<Programmname> starten?" Checkbox am Ende von .msi wird fast wie # 2 mit nicht wirklich mehr Arbeit sein
@ security
Programme in modernen Windows können die Erlaubnis zum Ausführen von Aktionen anfordern, für die Administratorrechte erforderlich sind.
quelle
Ich habe 124 Leihhäuser, die meine Leihhaus-Verwaltungs-Desktop-App verwenden. Immer wenn ich ein neues Update habe, sende ich ihnen eine E-Mail, in der sie über das Update und die Details informiert werden. Dann haben sie die Möglichkeit, es per FTP zu versenden, indem sie sich auf meiner Website anmelden. Sie haben auch die Möglichkeit, das Update zurückzusetzen. Meine Website verfolgt auch die jeweils installierte Version der Leihhäuser.
quelle