gpt4 book ai didi

wix - 如何以编程方式读取 MSI 文件中的属性?

转载 作者:行者123 更新时间:2023-12-04 13:07:52 25 4
gpt4 key购买 nike

有没有办法读取 MSI 中的属性?文件?
例如,给定一个名为 Testpackage.msi 的 MSI 文件,我需要找到

productName
PackageCode
version
这我将与 WMI 卸载一起使用
string objPath = string.Format("Win32_Product.IdentifyingNumber='{0}', Name='{1}', Version='{2}'", "{AC9C1263-2BA8-4863-BE18-01232375CE42}", "testproduct", "10.0.0.0");
使用 Orca是一个很好的选择,如果这可以通过编程实现。然后我可以使用它来生成自动发行说明。在卸载程序中也是如此。

最佳答案

您可以使用 COM-based API for working with MSI ,并做类似的事情

Function GetVersion(ByVal msiName)

Const msiOpenDatabaseModeReadOnly = 0
Dim msi, db, view

Set msi = CreateObject("WindowsInstaller.Installer")
Set db = msi.OpenDataBase(msiName, msiOpenDatabaseModeReadOnly)
Set view = db.OpenView("SELECT `Value` FROM `Property` WHERE `Property` = 'ProductVersion'")
Call view.Execute()

GetVersion = view.Fetch().StringData(1)

End Function

关于wix - 如何以编程方式读取 MSI 文件中的属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/298841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com