如何找出给定exe / dll所属的安装程序包

Modified on: Thu, 06 Dec 2018 21:00:02 +0800

我想知道MSI在我的系统上安装了给定的dll或exe。我知道Windows修复了已删除的文件,如果它们属于已安装的软件包。我可以在不实际删除文件的情况下查询该信息吗?是否有工具或Win32 API来检查文件所属的包?

作者:wigy

最佳答案

看来毕竟可能有办法!
我最近发现了Windows安装程序在以下子树下安装的文件的注册表项:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData

我编写了一个小的Python脚本,使用存储在那里的信息查找文件的安装程序:

> python windows-installer-file-search.py opus.dll File: C:\Program Files (x86)\Mumble\opus.dll Product: Mumble 1.2.13 Install user: S-1-5-18 Cached installer: C:\Windows\Installer\2f6b072.msi

可在此处获取:https://github.com/Zero3/windows-installer -file搜索

作者:Zero3

相关问答

添加新评论