Hi all,
I've produced a DLL from my C++ program, which gets an
image from external hardware and saves to a buffer.
How can I get the image data from the DLL in Python?
The C functions are somehow implemented as follows:
static char *ImageBuffer = NULL;
int WriteImageBuffer(void)
{
// acquire an image and write to the buffer
AcquireImg(ImageBuffer, params);
}
PyObject* GetImage(void)
{
return Py_BuildValue("s#", &ImageBuffer, 640*480);
}
In Python I got (I am using ctypes for calling DLL's),
(... some code here to load the library)
>>> @cdecl(c_char_p, dll, [])
... def GetImage():
... return GetImage._api_()
...
>>> data = GetImage()
Traceback (most recent call last):
File "<interactive input>", line 1, in ?
File "<interactive input>", line 3, in GetImage
WindowsError: exception: access violation reading
0x0181D000
If i could get the PIL string here, I'd like to use
image = Image.fromstring("L", (640, 480), data)
to have a PIL Image object.
Any body can help? Thanks a lot in advance!!
John
_______________________________________________
Image-SIG maillist - [email protected]
http://mail.python.org/mailman/listinfo/image-sig