Following example is for finding the list of all installed software and applications on your machine.
This example requires listbox control named ‘_list’.
Private Sub ListAllInstalledSoftwareInListView() Dim _Software As String = Nothing 'The registry key will be held in a string SoftwareKey. Dim _SoftwareKey As String = "SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products" Using rk As Microsoft.Win32.RegistryKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(_SoftwareKey) For Each _skName As String In rk.GetSubKeyNames 'Get sub keys Dim _name = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(_SoftwareKey).OpenSubKey(_skName).OpenSubKey("InstallProperties").GetValue("DisplayName") 'Registry.LocalMachine.OpenSubKey(SoftwareKey).OpenSubKey(skName).OpenSubKey("InstallProperties").GetValue("DisplayName") Dim _installocation = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(_SoftwareKey).OpenSubKey(_skName).OpenSubKey("InstallProperties").GetValue("InstallLocation") 'InstallProperties Dim _publisher = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(_SoftwareKey).OpenSubKey(_skName).OpenSubKey("InstallProperties").GetValue("Publisher") Dim _uninstallString = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(_SoftwareKey).OpenSubKey(_skName).OpenSubKey("InstallProperties").GetValue("UninstallString") 'Add the Software information to lstPrograms If _name.ToString <> "" Then 'Declare new ListView Item Dim _list As New ListViewItem 'Set Text Property to Name of Software _list.Text = _name.ToString 'Add Install Location _list.SubItems.Add(_installocation.ToString) 'Add Publisher _list.SubItems.Add(_publisher.ToString) ' Add it to lstPrograms, a listview that will hold our Software List. lstPrograms.Items.Add(_list) End If 'next Next End Using End Sub