如何使用Powershell获取程序的安装路径

时间:2017-12-19 10:18:42

标签: powershell

我尝试使用Get-ChildItem来获取已安装的程序属性信息,它确实提供了我需要的一些信息,但安装的位置/路径通常是空白的。给定程序的名称/显示名称,有没有一种方法可以使用Powershell获取Windows Server程序的安装路径(远程到其他服务器)?

提前致谢。

2 个答案:

答案 0 :(得分:2)

使用注册表:

Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall | 
% { Get-ItemProperty $_.PsPath } | Select DisplayName,InstallLocation

使用WMI:

Get-WmiObject -Class Win32_Product -Filter 'Name like "%Microsoft Office%"' | 
Select Caption,InstallLocation

对于Remoting,通过注册表它是完全不同的故事,WMI只需添加-ComputerName参数(并确保您拥有权限)

答案 1 :(得分:0)

这2个 cmdlet

Get-ChildItem HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\* | % { Get-ItemProperty $_.PsPath } | Select DisplayName,InstallLocation | Sort-Object Displayname -Descending

Get-ChildItem HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | % { Get-ItemProperty $_.PsPath } | Select DisplayName,InstallLocation | Sort-Object Displayname -Descending

这些显示了不同的程序及其位置