Was macht ein intaller genau? Installer selber Programieren!

2 Antworten

Ein Installer ist ein ganz normales Programm. Dies lädt alle Programmdaten aus den Ressourcen/ dem Internet/ oder aus dem Ordner einer CD (u.v.m.). Dies Daten werden teilweise aufbereitet (z.B. entpackt) und in einen Speicherort abgespeichert. Dieser Registriert auch alle Dateiendungen und stellt die Verknüpfungen auf dem Desktop her. Insgesammt ist ein Installer nur ein Programm, welches das eigentliche Programm vorbereitet, damit dann alles schneller geht.

Ein Deinstaller macht genau das Gegenteil. Normalerweise sollte es alle Daten löschen, die der Installer und das eigentliche Programm erstellt haben (außer der privaten). Doch meistens werden einige Dinge (wie die Registryeinträge) vergessen.

Kleiner Tipp am Rande, alle Dateien, die mit exe enden, werden von Windows als Programme erkannt.

Prinzipiell geht ein Installer sehr leicht zu programmieren, du musst nur wissen, was das eigentliche Programm deiner Wahl braucht und musst diese Daten aus einer Quelle deiner Wahl bereitstellen.

lin0815 
Fragesteller
 15.07.2014, 23:16

Das war mir schon klar -.- Das hätte mir wahrscheinlich ein 5 Jähriger auch erklären können. Ich wollte nur wissen was man machen muss, damit Windows eine exe als Programm erkennt und nicht nur als Datei. Wenn ich das Programmieren will, dann muss ich ja genaue Anweisungen Programmieren. Z.B Wo ich wie was in die Regestry eintragen muss. Das wäre Schön wenn es so wäre , aber Programm brauchen mehr als nur ne Anweisung "Ey jo instalier mal"

0
JungerPadawan95  16.07.2014, 06:44
@lin0815

Damit Windows eine Exe Datei erkennt muss man NICHTS machen. Windows weis, dank der Dateitypzuordnung, dass ALLE exe-Dateien ein Programm sind.

Alle Zuordnungen der Dateitypen werden in der Registry unter HKEY__CLASSES__ROOT gespeichert. Wie man das genaue macht, kann ich dir nicht sagen, weil es unzählige Möglichkeiten gibt, eine Dateiendung zu registrieren. Ich nenne dir deshalb ein einfaches Beispiel:

Unter diesen "Ordner" erstellst du einen Schlüssel mit den Namen .test

Bei diesen erstellst du dann den Unterschlüssel mit den Namen OpenWithProgids. Unter diesen legst du dann eindeutige Keys ab, der dein Programm spezifiziert.

Dann unter HKEY__CLASSES__ROOT erstellst du einen neuen Schlüssel mit den Namen, den du vorhin bei den Dateityp abgelegt hast. Dort erstellst du dann den Unterschlüssel Shell\Open\Command und dort legst du den Dateipfad ab.

Programmiertechnisch unterscheidet es sich an der Programmiersprache die du verwendest. Und da ich deine nicht kenne, kann ich dir kein Codebeispiel nennen.

Der Rest bei einer Installation ist: Dateien von einer Quelle auf die Festplatte übertragen (auch das eigentliche Programm).

1
Sanctuaria  22.11.2016, 13:14
@lin0815

Wie unfreundlich... der Antwortende weiß doch nicht deinen Wissensstand aufgrund der spärlichen Infos in der Fragestellung.

0

Meines Wissens nach entpackt er lediglich die dazugehörigen Dateien (z.B .dll) in einem Ordner, der der Installer erstellt (meist in C:\Programme). Jedoch habe ich keine Ahnung ob das stimmt, da ich mich selber auch nicht damit beschäftigt hab.