none
PS: Какой софт установлен на ПК RRS feed

  • Вопрос

  • Как можно получить список какой софт установлен на данном ПК и его версия? Например Adobe Acrobat Reader 9.1
    Интересует получение данных на удаленной машине...
    С помощью WMI  Get-WmiObject Win32_Software....а далее может кто-то уже интересовался...
    А также можно через рееестр HKLM

    Подскажите, что уже копал в данном направлении...
    Спасибо

    21 апреля 2009 г. 14:50

Ответы

  • Зачем такая сложность?
    Через WMI на PowerShell:
    ---
    gwmi win32_product -computername <computername> | sort vendor, name | ft vendor, name, version
    ---
    <computername> - имя ПК
    Если надо вывести не для просмотра, а в файл, последнюю часть заменить на export-csv "filename.csv"
    MCP | scriptoholic | PowerShell | SCCM 2007 | SMS 2003
    • Помечено в качестве ответа Alex_UA 21 апреля 2009 г. 19:41
    21 апреля 2009 г. 15:47
  • Как можно получить список какой софт установлен на данном ПК и его версия? Например Adobe Acrobat Reader 9.1
    Интересует получение данных на удаленной машине...
    С помощью WMI  Get-WmiObject Win32_Software....а далее может кто-то уже интересовался...
    А также можно через рееестр HKLM

    На PoSH примерно так:

    Param($Comuter) 
    $myobjs = @() 
    $RemoteRegistry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("LocalMachine",$Computer) 
    $RegKey = $RemoteRegistry.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\") 
    foreach($key in $RegKey.GetSubKeyNames()) 
    { 
        $SubKey = $RegKey.OpenSubKey($key) 
        $myobj = "" | Select-Object Name,Version,Vendor 
        $myobj.Name = $SubKey.GetValue("DisplayName") 
        $myobj.Version = $SubKey.GetValue("DisplayVersion") 
        $myobj.Vendor = $SubKey.GetValue("Publisher") 
        $myobjs += $myobj
    } 
    $myobjs | export-csv "${Computer}SOFTWARE.csv"
    
    На VBS с помощью WMI тоже где-то был скриптик...
    • Помечено в качестве ответа Alex_UA 21 апреля 2009 г. 19:41
    21 апреля 2009 г. 15:02

Все ответы

  • Как можно получить список какой софт установлен на данном ПК и его версия? Например Adobe Acrobat Reader 9.1
    Интересует получение данных на удаленной машине...
    С помощью WMI  Get-WmiObject Win32_Software....а далее может кто-то уже интересовался...
    А также можно через рееестр HKLM

    На PoSH примерно так:

    Param($Comuter) 
    $myobjs = @() 
    $RemoteRegistry = [Microsoft.Win32.RegistryKey]::OpenRemoteBaseKey("LocalMachine",$Computer) 
    $RegKey = $RemoteRegistry.OpenSubKey("SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\") 
    foreach($key in $RegKey.GetSubKeyNames()) 
    { 
        $SubKey = $RegKey.OpenSubKey($key) 
        $myobj = "" | Select-Object Name,Version,Vendor 
        $myobj.Name = $SubKey.GetValue("DisplayName") 
        $myobj.Version = $SubKey.GetValue("DisplayVersion") 
        $myobj.Vendor = $SubKey.GetValue("Publisher") 
        $myobjs += $myobj
    } 
    $myobjs | export-csv "${Computer}SOFTWARE.csv"
    
    На VBS с помощью WMI тоже где-то был скриптик...
    • Помечено в качестве ответа Alex_UA 21 апреля 2009 г. 19:41
    21 апреля 2009 г. 15:02
  • Зачем такая сложность?
    Через WMI на PowerShell:
    ---
    gwmi win32_product -computername <computername> | sort vendor, name | ft vendor, name, version
    ---
    <computername> - имя ПК
    Если надо вывести не для просмотра, а в файл, последнюю часть заменить на export-csv "filename.csv"
    MCP | scriptoholic | PowerShell | SCCM 2007 | SMS 2003
    • Помечено в качестве ответа Alex_UA 21 апреля 2009 г. 19:41
    21 апреля 2009 г. 15:47
  • Всем спасибо

    21 апреля 2009 г. 19:44