Cro schrieb:
Good day.

I've been trying to port HGE (http://hge.relishgames.com) to Python
for more than 4 months now...
HGE is a hardware accelerated 2D game engine.
It comes with the source and examples. In the folder "include", you
can find "hge.h", the file that i am talking about in all the post.

#
I tried to load the DLL functions with Python Ctypes like this :
[code]
from ctypes import *
HGE = cdll.LoadLibrary("C:/hge181/hge")
HGE.hgeCreate(0x180)
[/code]
But i get this error : "Procedure called with not enough arguments (4
bytes missing) or wrong calling convention".
The call should be done with hgeCreate(HGE_VERSION) and the constant
is defined as "#define HGE_VERSION 0x180"...
Number 0x180 means 384 in Python. I don't mean what it means in C.
So i am stuck.

You are aware that ctypes knows another call for windows dlls with another calling convention?

http://docs.python.org/library/ctypes.html#loading-dynamic-link-libraries

Looking at the headers, I see

#define CALL  __stdcall

So to me it looks as if you use the wrong DLL-loading mechanism.

Diez
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to