2013-07-19 42 views
0

我需要从MSI的快捷表的目标列中获取所有字符串。我得到了列的第一个值,但我无法得到其余的。我使用orca来确保有其他值,并且每个msi文件都有两个值。无法获取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) 

我有什么错我的代码?

回答

0

您需要一段时间的记录不是空循环来处理所有行。有关更多信息,请参阅以下帮助主题:

View.Fetch method

相关问题