파이썬 및 ctypes 덕분에 목록 상자의 내용을 가져오고 싶습니다.파이썬 및 ctypes 목록 상자의 내용을 win32에 가져 오는 경우
item_count = ctypes.windll.user32.SendMessageA(hwnd, win32con.LB_GETCOUNT, 0, 0)
items = []
for i in xrange(item_count):
text_len = ctypes.windll.user32.SendMessageA(hwnd, win32con.LB_GETTEXTLEN, i, 0)
buffer = ctypes.create_string_buffer("", text_len+1)
ctypes.windll.user32.SendMessageA(hwnd, win32con.LB_GETTEXT, i, buffer)
items.append(buffer.value)
print items
항목 수가 맞지만 텍스트가 잘못되었습니다. 모든 text_len은 4이고 텍스트 값은 '0 \ xd9 \ xee \ x02 \ x90'과 같습니다.
비슷한 결과를 가진 유니 코드 버퍼를 사용하려고했습니다.
오류가 발견되지 않습니다. 어떤 생각?
나는 당신이 옳다고 생각합니다. 이것은 소유자가 그린 목록 상자입니다. 데이터 구조가 무엇인지 모르겠으므로 텍스트를 얻을 수 없습니다 .-( – luc