Hallo, ich probiere mit folgendem Code alle Installierten Programme auszulesen:
PHP
- StringCollection alleProgramme = new StringCollection();
- string regKeyPfad = @"Software\Microsoft\Windows\CurrentVersion\Uninstall";
- RegistryKey regKey = Registry.LocalMachine.OpenSubKey(regKeyPfad);
- if (regKey != null)
- {
- string[] subKeyNames = regKey.GetSubKeyNames();
- for (int i = 0; i < subKeyNames.Length; i++)
- {
- RegistryKey subKey = regKey.OpenSubKey(subKeyNames[i]);
- string programmName = (string)subKey.GetValue("DisplayName");
- if (programmName == null)
- {
- programmName = (string)subKey.GetValue("QuitDisplayName");
- }
- if (programmName != null)
- {
- alleProgramme.Add(programmName);
- }
- }
- }
- else
- {
- throw new Exception("Registry-Schluessel"
- + Registry.LocalMachine.Name
- + "\\" + regKeyPfad
- + " nicht gefunden");
- }
- return alleProgramme;
mein Problem ist nun das Darksiders II zum Beispiel nicht gefunden wird.
Und ich selbst finde es in der Registrie (mit regedit.exe) unter diesem Pfad:
auch nicht.
Wenn ich jetztt aber z.b. mit Regshot meine Registrie änderungen vor und nach der Installation vergleiche wird mir genau der Pfad als geändert angezeigt?! Und i-wie muss es ja unter Programme auch zum deinstallieren angezeigt werden dadurch und wird es ja auch. Nur der Pfad is eben NICHT! da?!
mfg
Icynator