Jaco Naude wrote:
good point. I agree that the problem is probably due to name mangling.
I'm not sure how its possible to tell the application that the DLL is
a C dll? I've looked at the DLL using Dependency Walker and the
functions in the DLL are clean (Thus no name mangling used).
>
How do I tell Visual C++ that the DLL is a C dll? I thought it should
be in Python.h but this line appears at the top of the file:
/* Since this is a "meta-include" file, no #ifdef __cplusplus / extern
"C" { */
All the individual includes are wrapped in the usual
#ifdef __cplusplus
extern "C" {
#endif
stuff, so the compiler should default to C bindings, without you having
to do anything. Unfortunately, I haven't used VS 2008, but I find it
hard to believe that they've messed this up completely, and a quick
googling indicates that people are using it with Python without trouble.
Maybe there's some override in your project settings caused by some
other parts of your project? (or an #undef __cplusplus somewhere, perhaps?)
</F>
--
http://mail.python.org/mailman/listinfo/python-list