30 Stimmen

Was macht eine Standard-"Installation" tatsächlich?

Ich bin mehr oder weniger nur ein Hobbyprogrammierer und habe mich codingmäßig in der .NET ClickOnce-Welt entwickelt.

Was passiert eigentlich, wenn man ein Programm "installiert"?

Außerdem: Einige kleine Apps/Tools laufen einfach von der exe-Datei aus. Warum benötigen die meisten Programme einen aufwändigen Installationsprozess? Was sind die Vor- und Nachteile, Pros & Cons? Ist eine Installation normalerweise notwendig oder mehr eine Standardpraxis?

Entschuldigung für die zusätzlichen Fragen. Ich hoffe nur auf eine Erklärung der wichtigen Faktoren in einfachem Englisch, mehr oder weniger für den Laien verständlich.

1voto

Lorenz Lo Sauer Punkte 22044

Ein Installer abstrahiert den Prozess der Bereitstellung komplexer Softwareinfrastruktur, die in der Regel in einem Archiv enthalten ist, durch eine bequeme, eigenständige Benutzeroberfläche.

Diese Benutzeroberfläche kann grafisch oder textbasiert sein, wobei Text auf einer Befehlszeile wie der Unix-Shell (z.B. bash) ausgegeben wird. Bei grafischen Installationsprogrammen wird oft ein sogenannter Installations-Bootstrapper verwendet. In letzterem Fall handelt es sich um Installationsskripte, die Bash-Skripte, Microsoft-Batch-Skripte oder eine andere Skriptsprache sein können, die auf einer Befehlszeile ausgeführt wird.

Im einfachsten Fall ist eine Anwendung einfach eine ausführbare Datei, bei der das Betriebssystem weiß, was mit der Datei zu tun ist, um sie auszuführen. Die Anwendungsdatei kann sich in einem Ordner mit Unterordnern und anderen Hilfsdateien befinden, die in einem Archiv zusammengepackt sind. In diesem Fall ist möglicherweise kein Installer erforderlich.

Für komplexe Software können komplette Softwareplattformen und enge Integration mit der zugrunde liegenden Betriebssysteminfrastruktur wünschenswert sein, beispielsweise um das Urheberrecht eines Softwareprodukts durchzusetzen.

Viele Installer unter Windows bieten einen /e oder /extract Flag. z. B. setup.exe /e, um die Inhalte des Archivs ohne Ausführen des Installationskripts des Installationsprogramms extrahieren zu können. Kürzlich musste ich genau das tun.

Verschiebungen im Denken

Installationsprogramme sind fast zur Norm geworden, um professionelle Software zu liefern, unabhängig davon, wie einfach die zugrunde liegenden Softwarekomponenten sind. Mit einer zunehmenden Anzahl von computeraffinen Benutzern und dem Wunsch, die eigenen Anwendungen von einem Desktop zum nächsten zu migrieren, wird tragbare Software, die oft in einem einfachen Archiv geliefert wird, immer beliebter.

( Ich weiß nicht, wie viel Zeit ich insgesamt mit Installationsprogrammen verbracht habe, aber es sind definitiv Tage. )

Aufgaben, die der Installer möglicherweise handhaben muss, sind:

  • Entpacken (oft mit exotischen, starken Kompressionsarchiven)
  • Sicherstellung der Hardwareanforderungen des Systems
  • Sicherstellung ausreichenden Festplattenspeicherplatzes
  • Sicherstellung der Laufzeitanforderungen der Softwareplattform (z. B. 'Verteilbares')
  • Überprüfung auf neuere Softwareupdates
  • Herunterladen der Software aus einem entfernten Repository
  • Erstellen und/oder Aktualisieren von Programmdateien und Ordnern
  • Erstellen von Konfigurationsdateien, Registrierungseinträgen oder Umgebungsvariablen
  • Installieren von Softwaretreibern, Einbinden oder Auswerfen von Geräten
  • Erhöhung der Zugänglichkeit für Alltagsbenutzer, indem Installationschritte erklärt, Links und Verknüpfungen erstellt werden
  • Eigene Software durch Lesezeichen o.ä. bewerben
  • Konfigurieren von Kernel-Modulen und automatisch laufenden Komponenten (z. B. Dämonen, Windows-Dienste)
  • Automatisches Patchen der Software
  • Einstellen von Ordner-, Datei- und Benutzerberechtigungen
  • Erstellung von UUID-Referenzen zur Verknüpfung der Software mit einer Installationsinstanz und Verhindern der Portabilität

PS: Wenn Ihnen noch weitere Punkte einfallen, lassen Sie es mich wissen und ich werde sie einbauen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X