Hello! I am using cTypes on Windows to interface with a dll and I keep getting an error when I execute this method:
def eDigitalIn(self, channel, idNum = None, demo = 0, readD=0): """ Name: U12.eAnalogIn(channel, idNum = None, demo = 0, readD=0) Args: See section 4.4 of the User's Guide Desc: This is a simplified version of Counter. Reads & resets the counter (CNT). """ if idNum is None: idNum = self.id ljid = ctypes.c_long(idNum) state = ctypes.c_long(999) ecode = staticLib.ECount(ctypes.byref(ljid), demo, channel, readD, ctypes.byref(state)) if ecode != 0: raise LabJackException(ecode) if ljid == -1: raise LabJackException(-1, "LabJack not found.") return {"idnum":ljid.value, "state":state.value} Here is the error message: Traceback (most recent call last): File "<pyshell#4>", line 1, in <module> device.eDigitalIn(0) File "C:\Documents and Settings\All Users\Documents\Python \LabJackPython_new\u12.py", line 118, in eDigitalIn ecode = staticLib.ECount(ctypes.byref(ljid), demo, channel, readD, ctypes.byref(state)) WindowsError: exception: access violation writing 0x00000000 Here is the signature of the method (which is known to work with C++ programs): long _stdcall EDigitalIn(long *idnum, long demo, long channel, long readD, long *state); staticLib is declared with staticLib = ctypes.windll.LoadLibrary ("ljackuw"). Any ideas? Thanks, Sam -- http://mail.python.org/mailman/listinfo/python-list