Dim Key, Reader As RegistryKey, Y As String
Key = Registry.LocalMachine.OpenSubKey("Software\Microsoft\Windows\CurrentVersion\Uninstall", False)
For Each x In Key.GetSubKeyNames
Reader = Registry.LocalMachine.OpenSubKey _
("Software\Microsoft\Windows\CurrentVersion\Uninstall\" & x, False)
If Reader.GetValueNames().Contains("DisplayName") Then
Y = Reader.GetValue("DisplayName")
If Not lbx.Items.Contains(Y) Then lbx.Items.Add(Y)
End If
Next