Mensaje    Asunto: Listar Sofware instalado Responder citando

Hola a todos... antes que nada agradesco a quienes me ayudaron con un problema con firebird...

Ahora... tengo el siguiente problema... una parte de un sistema que estoy realizando tiene como mision realizar un inventario del software instalado en el PC... Mostrar el Path en el que se encuentra y la ruta al desinstalador de tenerlo....

De momento hice algo... que se no es para nada optimo... solo como prueba... se ve de la siguiente manera:





Como veran leo el registro en la siguiente ruta:

Código:
Reg->RootKey = HKEY_LOCAL_MACHINE;
 if(Reg->OpenKey("SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall",false))
   Reg->GetKeyNames(Lista->Items);



Y luego al clickear en cada "programa" listado lo siguiente para mostrar el nombre del software y el instalador de la siguiente manera:

Código:
if(Reg->OpenKey("\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\"+
    Lista->Items->Strings[Lista->ItemIndex],false))
  {
   Programa->Text = Reg->ReadString("DisplayName");
   Uni->Text = Reg->ReadString("UninstallString");
  }


Todo bastante simple... repito... es solo para pruebas... pero he estado buscando algo en el registro que me de informacion mas detallada ... o alguna otra forma de listar el software... y que no se incluyan algunos programas que son del sistema de windows....

Algo asi como listar el software que puede ser desinstalado... algo asi como aparece en el Agregar o quitar programas del mismo Windows.



Es decir... tener el nombre del software... con la cadena que da la ruta al desinstalador con sus parametros de tenerlos...



Cualquier solucion, cualquier idea es bienvenida... gracias de antemano... y saludos a todos...

De a poco empiezo a volver al foro Very Happy

Saludos!!!
_________________
"Ser inteligente no es ser mas, solo equivocarse menos y no usar Visual Basic"
Atte.
Victor Yañez

Apoyen el Proyecto OpenSource del Club Builder. Ya tenemos componentes Listos!!!