I have read alot of the posts and have pulled alot of great info. But i am still having an issue getting a version number to pull from the registry. I found this code to get an IE version, and that seems to work just fine.
$array =@()
$keyname = 'SOFTWARE\\Microsoft\\Internet Explorer'
$computernames = Get-Content C:\scripts\test_names1.csv
foreach ($server in $computernames)
{
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $server)
$key = $reg.OpenSubkey($keyname)
$value = $key.GetValue('svcVersion')
$obj = New-Object PSObject
$obj | Add-Member -MemberType NoteProperty -Name "ComputerName" -Value $server
$obj | Add-Member -MemberType NoteProperty -Name "IEVersion" -Value $value
$array += $obj
}
$array | select ComputerName,IEVersion | export-csv C:\scripts\test1-IE_Version.csv
But when i modify it to try to get a Google Chrome version it fails with the
**Get-ItemProperty : Cannot bind argument to parameter 'Path' because it is null.**
Here is what I modified to try to get the Chrome version.
$array =@()
$keyname = '\\SOFTWARE\\Wow6432Node\\Google\\Update\\clients\\{8A69D345-D564-463c-AFF1-A69D9E530F96}'
$computernames = Get-Content C:\scripts\test_names.csv
foreach ($server in $computernames)
{
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $server)
$regkey = $reg.OpenSubKey('SOFTWARE\\Wow6432Node\\Google\\Update\\clients\\{8A69D345-D564-463c-AFF1-A69D9E530F96}')
$value = (Get-ItemProperty -Path $regkey -Name pv).pv
$obj = New-Object PSObject
$obj | Add-Member -MemberType NoteProperty -Name "ComputerName" -Value $server
$obj | Add-Member -MemberType NoteProperty -Name "Installed" -Value $installed
$obj | Add-Member -MemberType NoteProperty -Name "ChromeVersion" -Value $value
$array += $obj
}
$array | select ComputerName,Installed,ChromeVersion | export-csv C:\scripts\1222016_Chrome_Version.csv
I had to change the $keyname and $value variables due to the original edit throwing even more errors. I am completely new at powershell so be easy on me.
Thanks in advance.
-S
The following works for me, which is basically the same as your IE code:
$keyname = 'SOFTWARE\\Wow6432Node\\Google\\Update\\clients\\{8A69D345-D564-463c-AFF1-A69D9E530F96}'
$reg = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey('LocalMachine', $server)
$regkey = $reg.OpenSubKey($keyname)
$value = $regkey.GetValue('pv')