Windows Uninstall

Antworten
KOBOLD Messring GmbH
Beiträge: 155
Registriert: Mi 22. Aug 2007, 14:52
OS, Lazarus, FPC: Mandriva Linux 2008 (L 0.9.28 FPC 2.2.4)
CPU-Target: 32Bit
Wohnort: 65719 Hofheim am Taunus
Kontaktdaten:

Windows Uninstall

Beitrag von KOBOLD Messring GmbH »

Hallo Windows-Experten, habe lange gesucht, aber noch nichts gefunden (weder hier, noch bei Google allgemein):
Ich möchte, dass mein eigenes (Lazarus) Programm sich ordentlich in die Windows-Registry bei den Uninstall-Einträgen einträgt, so dass es vom Benutzer in gewohnter Weise über Systemsteuerung|Software|Deinstallieren auch wieder entfernt werden kann, so wie das viele Programme können.
Jetzt meine Fragen:
¿Gibt es von/für Lazarus/FPC schon z.B. eine Unit mit solchen Funktionen, die einem diese Registry Einträge erstellen?
¿Gibt es irgendwo eine Anleitung, was man in die Registry schreiben muss, damit der Benutzer diesen bequemen "Uninstall" Button in der Systemsteuerung|Software findet?
¿Und welche Dinge muss das (eigene) Uninstall-Programm machen, damit es alles sauber funktioniert?

Vielen Dank für Eure Hilfe

MmVisual
Beiträge: 1469
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 3.0 FPC 3.2)
CPU-Target: 32/64Bit

Re: Windows Uninstall

Beitrag von MmVisual »

Nimm Inno-Setup (http://www.istool.org)

- Kostenlos
- Setup kann mittels Pascal-Script individuell angepasst werden
- So auch der uninstaller
- Demo-Scripte sind dabei
EleLa - Elektronik Lagerverwaltung - www.elela.de

KOBOLD Messring GmbH
Beiträge: 155
Registriert: Mi 22. Aug 2007, 14:52
OS, Lazarus, FPC: Mandriva Linux 2008 (L 0.9.28 FPC 2.2.4)
CPU-Target: 32Bit
Wohnort: 65719 Hofheim am Taunus
Kontaktdaten:

Re: Windows Uninstall

Beitrag von KOBOLD Messring GmbH »

Vielen Dank MmVisual,
ich habe aber bereits ein Install-Programm geschrieben (für Windows und Linux), sogar das "Uninstall" für Windows ist schon fertig, was mir fehlt ist eigentlich "nur" noch der Eintrag in eben diese Systemsteuerung|Software. Im Moment muss man mein "Uninstall" aus der Programmgruppe aus aufrufen, das sieht man auch oft, aber eben immer weniger, und ich denke, es macht einen professionelleren Eindruck, wenn sich ein Programm in die Systemsteuerung|Software einträgt. Deshalb meine Frage nach einer Anleitung dazu. Aber trotzdem vielen Dank.

MmVisual
Beiträge: 1469
Registriert: Fr 10. Okt 2008, 23:54
OS, Lazarus, FPC: Winuxarm (L 3.0 FPC 3.2)
CPU-Target: 32/64Bit

Re: Windows Uninstall

Beitrag von MmVisual »

Einfach hier rein schreiben:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\<Dein Programm>

Auf WIndows-Rechner gibt es jede Menge Programme die sich hier rein schreiben, und abschauen was da für Werte drin stehen.
EleLa - Elektronik Lagerverwaltung - www.elela.de

KOBOLD Messring GmbH
Beiträge: 155
Registriert: Mi 22. Aug 2007, 14:52
OS, Lazarus, FPC: Mandriva Linux 2008 (L 0.9.28 FPC 2.2.4)
CPU-Target: 32Bit
Wohnort: 65719 Hofheim am Taunus
Kontaktdaten:

Re: Windows Uninstall

Beitrag von KOBOLD Messring GmbH »

Vielen Dank MmVisual.
Habe das so gemacht, funktioniert sehr gut. Nur ausser einer Sache: In der Systemsteuerung|Uninstall-Liste steht normalerweise noch die Grösse mit drin (z.B. "Mozilla Firefox - Grösse: 23,48MB") ¿wo kommt das denn her? das habe ich nirgendwo gefunden und wenn ich dort mein eigenes Deinstallations-Programm eintrage, bleibt dieser Eintrag immer leer, ansonsten, wie gesagt, geht das phantastisch gut.
Da muss ich ja direkt zur Ehrenrettung von Windows was sagen: Das geht super-einfach-gut: Im Vergleich dazu ein rpm-Installationspaket für Linux zu erstellen erscheint mir entsetzlich umständlich, da habe ich mich noch nicht rangetraut... (mal durchgeblättert: 87 Seiten :shock: "Student-Version" von Gurulabs "Creating RPMs")

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: Windows Uninstall

Beitrag von monta »

Kannst du nicht direkt EstimatedSize in die Registy mit eintragen:
http://msdn.microsoft.com/en-us/library ... 85%29.aspx

Das klingt für mich so, als wenn das genau der Wert ist, den du haben möchtest. (Wobei da bei mir auch Programme wie die Treiber von Ati, und einige Microsoftsachen keine Größe angeben, du bist also nicht allein ;) )

Damit das Effekt hat, musst du wohl nach dem du EstimatedSize dort eingetragen hast, noch den ARPCache leeren, der sich als SlowInfoCache auch in der Registry versteckt. Beim nächsten Aufruf der Liste der Installierten Programme wird dann SlowInfoCache neu generiert und deine eingetragene Größe sollte bei deinem Program auftauchen.
Johannes

Antworten