Jason Ward wrote: > Hi. I am interested to know why python can't access DLL files directly. > It seems to me that because python can't access DLL's directly we have to > waste our time and write wrappers around libraries that have already > been written. > > So if the python developers were to implement say this. > > import MYDLL.dll > > Then we would be able to do everything with that library that we can > do in other languages. > > For eg. I want to use PyOpenGL. But the problem is the library hasn't > got all the opengl functions implemented. > So I can either develop quickly with an incomplete library or develop > slowly in assembler. > I mean really, in asm we just call the dll function directly. > > Why must python be different? Hi again, Jason,
As we pointed out to you, ctypes *does* allow you to just load the DLL and start calling functions. In fact, that's how development tends to happen in the ctypes implementation. Someone just loads the DLL, hacks up a demo, I look at it and factor their code into the code-base. If there's some function missing that you need, do something like this: from OpenGL.platform import GL GL.myFunction( myParameter, myOtherParameter ) and if the parameters are of simple types, it will often "just work". If you want to pass arrays or similar data-types you'll need to make them ctypes arrays or pointers to use those "raw" functions, but they should work perfectly well. That is, you have to pass the right data-type, but then you'd have to do that in assembler too. Have fun, Mike -- ________________________________________________ Mike C. Fletcher Designer, VR Plumber, Coder http://www.vrplumber.com http://blog.vrplumber.com -- http://mail.python.org/mailman/listinfo/python-list