首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >有没有办法在不卸载注册表或C:\Windows\Installer的情况下检测安装位置?

有没有办法在不卸载注册表或C:\Windows\Installer的情况下检测安装位置?
EN

Stack Overflow用户
提问于 2020-07-25 00:54:03
回答 1查看 226关注 0票数 1

我需要检测的一些可执行文件安装正确,但没有在通常的Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\中编写InstallLocation

我还检查了C:\Windows\Installer,但在msi文件中找不到GUID。

有没有办法知道这些文件安装在哪里?

EN

回答 1

Stack Overflow用户

发布于 2020-07-25 08:36:27

update MSI API:下面是一个使用VBScript获取Microsoft Visual C++ 2012 x86 Minimum Runtime - 11.0.50727 -update的安装路径的示例(显然):

代码语言:javascript
运行
复制
Set i = CreateObject("WindowsInstaller.Installer")

' Microsoft Visual C++ 2012 x86 Minimum Runtime - 11.0.50727
MsgBox i.ComponentPath("{2F73A7B2-E50E-39A6-9ABC-EF89E4C62E36}","{F5CBD6DC-5C9C-430E-83A7-179BA49988CD}")

Installer.ComponentPath方法:

  • 第一个参数是产品,第二个参数是组件code.
  • The

GUID:在"Component Table".中找到产品代码,在"Component Table".中找到组件代码,然后用打开有问题的MSI (或等效的链接)

对于已安装的软件包,您可以执行以下操作:

查找缓存的MSI:The below PowerShell script is from here。它将允许您查找已安装的MSI的本地缓存路径。

代码语言:javascript
运行
复制
gwmi -Query "SELECT Name,LocalPackage FROM Win32_Product WHERE IdentifyingNumber='{2F73A7B2-E50E-39A6-9ABC-EF89E4C62E36}'" | Format-Table Name,LocalPackage

链接:

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63078090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档