Ver Mensaje Individual
  #6  
Antiguo 08-07-2011
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola Antonio.

Aca te pongo una version un poco modificada de la conocida versión del código.
Código Delphi [-]
uses Registry;
function isAppInstalled(AppName: string): Boolean;
const
  CLAVE = '\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall';
var
  Reg: TRegistry;
  L1,L2 : TStringList;
  j,dn,us: integer;
begin
  Reg:= TRegistry.Create;
  L1:= TStringList.Create;
  L2:= TStringList.Create;
  try
    Reg.RootKey:= HKEY_LOCAL_MACHINE;
    Reg.OpenKey(CLAVE, False);
    Reg.GetKeyNames(L1);
    Result:= False;
    for j := 0 to L1.Count-1 do
    begin
      Reg.OpenKeyReadOnly(CLAVE+'\'+L1.Strings[j]);
      Reg.GetValueNames(L2);
      if(L2.IndexOf('DisplayName')<> -1)and
        (L2.IndexOf('UninstallString')<> -1)and
        (Reg.ReadString('DisplayName')=AppName) then
          Result:= True;
    end;
  finally
    L1.Free;
    L2.Free;
    Reg.Free;
  end;
end;
Devuelve verdadero si encuentra el nombre de la aplicación.

Saludos.
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita