Utilizamos cookies propias y de terceros. [Más información sobre las cookies].
Política de cookies
Proyecto AjpdSoft

· Inicio
· Buscar
· Contactar
· Cookies
· Descargas
· Foros
· Historia
· Nosotros
· Temas
· Top 10
· Trucos
· Tutoriales
· Wiki
Obtener una lista de los programas instalados en el PC - Delphi
Lenguaje de programación Borland Delphi


Pondremos un botón y un TMemo en un formulario. Al pulsar el botón se llenará el Memo con la lista de los programas instalados y la ruta para desinstalación. Será necesario incluir en el USES del formulario REGISTRY. En el evento click del botón pondremos el siguiente código:

procedure TForm1.Button1Click(Sender: TObject);
 const CLAVE =
   '\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall';

 var
   reg    : TRegistry;
   Lista  : TStringList;
   Lista2 : TStringList;
   i,n    : integer;

 begin
   mp.Clear;
   txtpcerrar.Clear;
   {Creamos temporales}
   reg    := TRegistry.Create;
   Lista  := TStringList.Create;
   Lista2 := TStringList.Create;

   {Cargamos todas las subkeys}
   {Load all the subkeys}
   with Reg do
   begin
     RootKey := HKEY_LOCAL_MACHINE;
     OpenKey(CLAVE,false);
     GetKeyNames(Lista);
   end;

   {Cargamos todos los Nombres de valores}
   for i := 0 to Lista.Count -1 do
   begin
     reg.OpenKey(CLAVE + '\' +Lista.Strings[i],false);
     reg.GetValueNames(Lista2);
     {Mostraremos sólo los que tengan 'DisplayName'}
     n:=Lista2.IndexOf('DisplayName');
     if (n <> -1) and (Lista2.IndexOf('UninstallString')<>-1) then
     begin
        {DisplayName+UnInstallString}
       Mp.Lines.Append (reg.ReadString(Lista2.Strings[n])+'    -    
            '+ reg.ReadString(Lista2.Strings Lista2.IndexOf('UninstallString')]));
     end;
   end;
   {Liberamos temporales}
   Lista.Free;
   Lista2.Free;
   reg.CloseKey;
   reg.Destroy;
end;




Publicado el: 2003-10-14

Visita nuestro nuevo sitio web con programas y contenidos actualizados: Proyecto A