Use o Python para extrair itens ListView de outro aplicativo

Eu tenho um aplicativo com um controle ListView ('SysListView32'), do qual gostaria de extrair dados. O controle tem 4 colunas, apenas dados textuais.

Eu tenho jogado nas seguintes linhas (encontradas online em algum lugar):

VALUE_LENGTH = 256
bufferlength_int=struct.pack('i', VALUE_LENGTH)
count = win32gui.SendMessage(TargetHwnd, commctrl.LVM_GETITEMCOUNT, 0, 0)
for ItemIndex in range(count):
    valuebuffer = array.array('c',bufferlength_int + " " * (VALUE_LENGTH - len(bufferlength_int)))
    ListItems = win32gui.SendMessage(TargetHwnd, commctrl.LVM_GETITEMTEXT, ItemIndex, valuebuffer)

[O código acima pode não ser inteiramente executável, já que eu o tirei de material irrelevante. mas a essência está certamente aqui.]

Isso parece correr bem, mas eu devo estar fazendo algo errado - eu recebo todos os tipos de buffers de dados zerados na sua maioria, e nenhum dos conteúdos de texto que eu estava procurando.

Alguma sugestão?

Obrigado,
Yonatan

questionAnswers(2)

yourAnswerToTheQuestion