0

我需要从 MSI 快捷方式表的 Target 列中获取所有字符串。我得到了列的第一个值,但我不能得到其余的值。我使用 orca 来确保还有其他值,并且每个 msi 文件都有两个。

这是我获取它的代码:

def verify(self):
    self.db = msilib.OpenDatabase(str(self.msi_file),msilib.MSIDBOPEN_TRANSACT)
    self.getColumnNames()

def getColumnNames(self):
    view = self.db.OpenView("SELECT Target FROM Shortcut ")
    view.Execute(None)
    print view.GetColumnInfo(msilib.MSICOLINFO_NAMES)
    record = view.Fetch()
    print record.GetFieldCount()
    self.value = record.GetString(1)
    print record.GetString(1)

我的代码有什么问题?

4

1 回答 1

0

您需要一个 while 记录不是空循环来处理所有行。有关详细信息,请参阅以下帮助主题:

View.Fetch 方法

于 2013-07-19T18:02:39.073 回答