getEditText et objet'<class 'bytes'>'
Bonjour à tous,
Je sollicite votre aide car j'essaie en vain d'adapter pour qu'elle fonctionne en python 3. une fonction que j'ai empruntée ici: http://www.brunningonline.net/simon/...es/000664.html
Voici mon essai:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| def getEditText(hwnd):
result = []
bufferlength = struct.pack('i', 255) ### <class 'bytes'>
### "linecount" correspond au nombre de lignes contenu du widget concerné
linecount = win32gui.SendMessage(hwnd, win32con.EM_GETLINECOUNT, 0, 0)
for line in range(linecount):
var1=b"".ljust(253)
linetext = bufferlength + var1
linelength = win32gui.SendMessage(hwnd, win32con.EM_GETLINE, line, linetext)
result.append(linetext[:linelength])
maLigne=linetext[:linelength].decode()
for a in result:
print('--- essai1',a)
print('--- essai2',a.decode()) |
et voici la sortie:
-- essai1 b' \x00d\x00o\x00g\x00f\x00'
--- essai2 NULdNULoNulgNULf et autres NUL du genre
Pourquoi ce résultat alors que bien sûr le widget en question contient du texte?
Je débute aussi bien avec struct.pack qu'avec les objects bytes
aussi ne pas m'en vouloir si j'ai manqué quelque chose. D'avance merci pour vos lumières.