Fehler bei DLL wrappen
Verfasst: Freitag 6. Mai 2011, 08:39
Hallo,
ich programmiere mit python 2.6 in der Eclipse Oberfläche und möchte eine dll wrappen mit Hilfe von Ctypes.
Hier erstmal mein Code:
Nach dem Ausführen des oberen Codes, wird der Fehler zurückgegeben:
Meine erste Vermutung war, dass die Funktion find_library() die dll nicht findet, so habe ich den Code geändert und den Pfad der USBCAN.dll der WinDLL() manuell übergeben (siehe Code):
Nach Ausführung dieses Codes bekomme ich diesen Fehler und weiß dann auch nicht mehr weiter:
Hat jemand diesen Fehler schon gehabt oder weiß jemand was ich Falsch mache?
ich programmiere mit python 2.6 in der Eclipse Oberfläche und möchte eine dll wrappen mit Hilfe von Ctypes.
Hier erstmal mein Code:
Code: Alles auswählen
usbcan_lib_path = util.find_library("USBCAN32") # Speicherort der USBCAN Bibliothek
#usbcan_lib_path="D:\Program Files (x86)\SYSTEC-electronic\USB-CANmodul Utility Disk\Lib\USBCAN32"
if sys.platform == "win32":
lib = c.WinDLL(usbcan_lib_path) # USBCAN32 Bib. einbinden, falls Windows- Sytem vorliegt
else:
lib = c.CDLL(usbcan_lib_path) # USBCAN32 Bib. einbinden falls Linux-System
Code: Alles auswählen
Traceback (most recent call last):
File "E:\eclipse\workspace\AnalyseApp_CAN Bus\src\USB_CAN\USB_CAN_Fkt.py", line 22, in <module>
lib = c.WinDLL(usbcan_lib_path) # USBCAN32 Bib. einbinden, falls Windows- Sytem vorliegt
File "D:\Program Files (x86)\Python2.6\lib\ctypes\__init__.py", line 353, in __init__
self._handle = _dlopen(self._name, mode)
TypeError: expected string or Unicode object, NoneType found
Code: Alles auswählen
usbcan_lib_path="D:\Program Files (x86)\SYSTEC-electronic\USB-CANmodul Utility Disk\Lib\USBCAN32"
if sys.platform == "win32":
lib = c.WinDLL(usbcan_lib_path) # USBCAN32 Bib. einbinden, falls Windows-Sytem vorliegt
else:
lib = c.CDLL(usbcan_lib_path) # USBCAN32 Bib. einbinden falls Linux-System
Code: Alles auswählen
Traceback (most recent call last):
File "E:\eclipse\workspace\AnalyseApp_CAN Bus\src\USB_CAN\USB_CAN_Fkt.py", line 22, in <module>
lib = c.WinDLL(usbcan_lib_path) # USBCAN32 Bib. einbinden, falls Windows- Sytem vorliegt
File "D:\Program Files (x86)\Python2.6\lib\ctypes\__init__.py", line 353, in __init__
self._handle = _dlopen(self._name, mode)
WindowsError: [Error 193] %1 ist keine zulässige Win32-Anwendung