Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Auflisten und Ausführen der software-Deinstaller (https://www.delphipraxis.net/15450-auflisten-und-ausfuehren-der-software-deinstaller.html)

Synonym 28. Jan 2004 21:47


Auflisten und Ausführen der software-Deinstaller
 
Hi,


ich hab mel ne kleine Frage, wie kann ich wie in Windows alle Software auf dem System auflisten und dann ggf. die Deinstaller starten..

Gruß

Synonym

Synonym 28. Jan 2004 22:08

Re: Auflisten und Ausführen der software-Deinstaller
 
das auflisten hab ich jetzt so hinbekommen:

Code:
procedure TForm1.Button1Click(Sender: TObject);
const
  UNINST_PATH = 'SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall';
var
  Reg: TRegistry;
  SubKeys: TStringList;

  i: integer;
  sDisplayName, sUninstallString: string;
begin

  Reg := TRegistry.Create;
  with Reg do
    try
      with Listbox1.Items do
        try
          BeginUpdate;
          Clear;
          RootKey := HKEY_LOCAL_MACHINE;
          if OpenKeyReadOnly(UNINST_PATH) then
          begin
            SubKeys := TStringList.Create;
            try
              GetKeyNames(SubKeys);
              CloseKey;
              for i := 0 to subKeys.Count - 1 do
                if OpenKeyReadOnly(Format('%s\%s', [UNINST_PATH, SubKeys[i]])) then
                  try
                    sDisplayName    := ReadString('DisplayName');
                    sUninstallString := ReadString('UninstallString');
                    if sDisplayName <> '' then
                    begin

Listbox1.items.Add(sDisplayName);
                      Listbox1.items.Add(sUninstallString);
                    end;
                  finally
                    CloseKey;
                  end;
            finally
              SubKeys.Free;
            end;
          end;
        finally

          EndUpdate;
        end;
    finally
      CloseKey;
      Free;
    end;
end;
leider zeigt es mir nur die namen und uninstaller.exe an...ich muss das noch ein wenig ferfeinern...aber vielleicht weiß jetzt jemand weiter. ich brauche auch die hauptanwendung der software..sowie den genauen pfad der uninstaller. also bei antivir 6.0 z.B. c:\programme\antivir\antivir.exe und c:\programme\antivir\antiviruninstall.exe (Beispiel)

Synonym 29. Jan 2004 17:35

Re: Auflisten und Ausführen der software-Deinstaller
 
vielleicht weiß ja noch jemand was!


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:13 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz