从命令lin获取msi产品名称、版本

2024-04-19 07:09:59 发布

您现在位置:Python中文网/ 问答频道 /正文

有没有办法从命令行显示msi文件的产品名和版本?或者更好的是,这可以通过python实现吗?在


Tags: 文件命令行版本msi办法产品名
2条回答

您可以使用以下方法获取产品版本:

from msilib import *

def GetMsiProperty(path ,property):
    db = OpenDatabase(path, MSIDBOPEN_READONLY)
    view = db.OpenView ("SELECT Value FROM Property WHERE Property='" + property + "'")
    view.Execute(None)
    result = view.Fetch()
    #print dir(result)
    return result.GetString(1)


msiVersion = GetMsiProperty(r'C:\path\to.msi' ,"ProductVersion")

您的python版本必须高于2.5,以上函数才能正常工作。在

尝试SummaryInformation.GetProperty(PID_TITLE)SummaryInformation.GetProperty(PID_REVNUMBER)以及位于{a1}的所有其他字段名

相关问题 更多 >