Entwickler-Ecke

IO, XML und Registry - Prüfe ob Programm installiert ist !!!


masterZed - Fr 10.04.09 19:43
Titel: Prüfe ob Programm installiert ist !!!
hallo zusammen,
wenn es so ein Thread schon gibt, dann sorry, habe nichts gefunden :)

Nun ich würde gerne einen einfachen "Software checken" in C# programmieren und wollte mir etwas Hilfe von euch holen.

Ich würde gerne Prüfen ob z.B Firefox und Winrar installiert sind, wenn nicht zeige mir es als MessageBox in Rot.
Mit einem klick auf die fehlende Software, soll er eine Verbindung zu der gewünschten Seite aufbauen.

Hilfestellungen oder kleine Beispiele reichen ganz aus.


vielen Dank


jaenicke - Fr 10.04.09 20:37

Naja, du kannst die installierte Software in der Registry im Zweig

Quelltext
1:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall                    

auslesen, aber wenn eine Software nicht korrekt installiert ist, dann kannst du das nur durch Durchsuchen der kompletten Festplatte feststellen, dass die doch da ist, was natürlich dauern würde.


masterZed - Fr 10.04.09 20:51

ok!!
nehmen wir an die software ist korrekt installiert, wie sehe so eine Überprüfung aus wenn ich z.B nach Firefox und Winrar checken möchte?


jaenicke - Fr 10.04.09 20:55

Ja, die Liste durchgehen und schauen, ob es eine dir bekannte Software ist. :nixweiss:

Sollte der Zugriff auf die Registry das Problem sein, dann schau dir die Dokumentation dazu an:
http://msdn.microsoft.com/de-de/library/microsoft.win32.registry.aspx


masterZed - Fr 10.04.09 21:33

danke, werd ich mir anschauen....

wenn jemand noch etwas parat hat, dann her damit.


vielen Dank


masterZed - Mo 20.04.09 15:39

hi nochmal,
wenn ich nun Teile der registry auslesen mochte und und bestimme Programme in eine " Listview " angezeigt bekommen möchte, was wäre da am sinnvollsten? Dictionary?

vielen Dank


Kha - Mo 20.04.09 16:44

Kommt darauf an, was du damit vorhast, aber eine List<T> ist für den Anfang nie verkehrt. Als T könntest du eine eigene Klasse benutzen, die Name des Programmes, Pfad und was du sonst noch so brauchst enthält.


masterZed - Di 21.04.09 16:54

Tach nochmal,
so nun habe ich es so gemacht das beim starten, die Regstry auf nicht vorhandene Software meiner Wahl gescannt wird. Diese werden in listview angezeigt.

Nun sollen diese peer doubleclick einen link ausführen.
Die Frage ist, welche Methode ist am besten geeignet damit jeder aufgelisteter Name auch seine link bekommt?
Arraylist? or else !!!!