Boa tarde a todos!
Estou precisando obter uma lista de softwares instalados em um ambiente windows, em pesquisas e testes, cheguei até uma parte da solução, eles estão disponíveis no registro do windows no endereço [b]HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall[/b], já fiz uma função que lê certo atributo de um registro específico, o problema é que nesta pasta [i]Uninstall [/i]existem várias pastas, o que eu precisaria é selecionar cada uma destas pastas, e lá pegar a propriedade [b]displayName [/b]que retorna o nome do aplicativo instalado, como obter uma lista destes registros, que estão dentro de uma pasta do registro?
por exemplo, o código abaixo me lista o displayName de um registro, mas no caso a pasta DebugBar é apenas uma dentro da pasta Uninstall, eu teria que listar todas e ir pegando o displayName.
String value = WindowsRegistry.readRegistry("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\DebugBar", "displayName");
System.out.println(value);