Path: csiph.com!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Hans-Georg Joepgen Newsgroups: de.comp.lang.python Subject: DLL-Funktion von Python aus nutzen Date: Sun, 25 Sep 2016 22:25:26 +0200 Lines: 26 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Trace: individual.net oOq16f4+j1cfhHJoXUV6KgJPUiCgJ+0qRJCEknqTF/JJ0wQOtn Cancel-Lock: sha1:phONePx5KwIkrrAkY6X6KyZx2us= X-Mozilla-News-Host: snews://news.individual.de/ User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 Xref: csiph.com de.comp.lang.python:4542 Es soll die Funktion HeEnum in der DLL 'he2325u.dll' von Henrik Haftmann aus einem Pythonscript genutzt werden. Auszug aus he2325u.h: #define HE_NUM_MAX 256 ... FUNC(void) HeEnum(char List[HE_NUM_MAX]); Das Script (Python 3.5.2, Windows 10 V1607/64): import ctypes dll = ctypes.WinDLL ('he2325u.dll') liste = ctypes.create_string_buffer(256) dll.HeEnum (liste) print (liste.value) Statt der erwarteten Liste wird ein Block mit folgendem Start ausgegeben: b'\xfe\xfe\xff\xff\xff\xff\xff\xff\... Irgendwo muss ein dummer Fehler stecken. Sieht den jemand? Nebenbei: Es geht um das Auslesen des Uni-Trend DMM UT61B per USB-Interface. Das Programm dmm von Henrik Haftmann schafft das über he2325u.dll sehr schön; Dll und DMM sind also in Ordnung. Gruß -- Joe