如何扫描MSI安装文件的路径

今天有个需求,需要扫描已经安装应用, 其中有个华云桌面

如何扫描MSI安装文件的路径_第1张图片

其中的UninstallString 值是 MsiExec.exe /X{D20A661B-0CBA-4DE3-A1F6-353D8153725D} 无法直接获取其安装目录,

MsiGetProductInfoW 等API INSTALLPROPERTY_INSTALLLOCATION 也不好使

自己写一个测试安装MSI测试下

https://www.cnblogs.com/ttcbk/p/14875456.html

如何扫描MSI安装文件的路径_第2张图片

简单一点 新建一个工程,只有一个exe, 右边ProductCode {5613CDAD-B3BC-4169-AAEC-0F0DA395714D}

如何扫描MSI安装文件的路径_第3张图片

生成好的MSI安装下 查看注册表

如何扫描MSI安装文件的路径_第4张图片

可以知道 {5613CDAD-B3BC-4169-AAEC-0F0DA395714D} 对应的ID是 DADC3165CB3B9614AACEF0D03A5917D4

在看Components

如何扫描MSI安装文件的路径_第5张图片

可以知道Components\1A674732925E6B9EFC640023DF9D992B 下有个DADC3165CB3B9614AACEF0D03A5917D4 Key值对应的就是安装包里面文件的路径

你可能感兴趣的:(从MSI获取程序安装目录)