VB.NET – インストールソフトウェア取得
複数のソフトを順番にインストールしたりアンインストールする方法を調査しており、まずはインストール済みのアプリケーションとアンインストーラ実行ファイルを取得するのに挑戦。
【VB.NET】インストール済みアプリケーションの一覧を作成する
を参考にさせていただきました。
Private Sub getInstallList()
Dim wkRegKey As Microsoft.Win32.RegistryKey
Dim wkKeyName As String
Dim strKeyNames() As String
Dim strKeyName As String
Dim rKey As Microsoft.Win32.RegistryKey
Dim displayName As String
Dim unInstaller As String
Dim wkSoftwareInfo As SoftwareInfo
wkKeyName = “SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall”
wkRegKey = Microsoft.Win32.Registry.LocalMachine.OpenSubKey(wkKeyName, False)
strKeyNames = wkRegKey.GetSubKeyNames()
For Each strKeyName In strKeyNames
rKey=wkRegKey.OpenSubKey(strKeyName)
‘インストールソフトウェア名取得
If Not rKey.GetVakue(“DisplayName”) is Nothing Then
displayName = rKey.GetValue(“DisplayName”).Tostring()
‘アンインストール実行ファイル取得
If Not rKey.GetVakue(“UninstallString”) is Nothing Then
unInstaller = rKey.GetVakue(“UninstallString”)
End If
End If
Next
End Sub
指定ソフトウェアがインストール済みかどうかの判断は、
DisplayNameと指定ソフトウェアの名称が一致するかで判断しました。