On Oct 16, 10:58 am, Henrik <[EMAIL PROTECTED]> wrote: > Hi, > > We are upgrading from Python 2.3 to verion 2.5 and when we recompile > we get ImportError. > > To test we took the spam example from the web documentation and > compiled it with Py23 and it imports without a problem. Changing the > libs in visual studio 2008 to point to Py25 and we get: > > >>> import spam > > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ImportError: No module named spam > > > > Would really appreciate any assistance. > > H > > ---------------------------------------------------------------------------------------------------------------------- > #include "stdafx.h" > #ifdef _MANAGED > #pragma managed(push, off) > #endif > BOOL APIENTRY DllMain( HMODULE hModule, > DWORD ul_reason_for_call, > LPVOID lpReserved > ) > { > return TRUE;} > > #ifdef _MANAGED > #pragma managed(pop) > #endif > static PyObject * > spam_system(PyObject *self, PyObject *args) > { > const char *command; > int sts; > if (!PyArg_ParseTuple(args, "s", &command)) > return NULL; > sts = system(command); > return Py_BuildValue("i", sts);} > > static PyMethodDef PyBSMethods[] = { > {"spam", (PyCFunction) spam_system, METH_VARARGS|METH_KEYWORDS, > "Hi"}, > {NULL, NULL, 0, NULL} /* Sentinel */}; > > extern "C" { > __declspec(dllexport) void initspam(void) > { > PyObject* module = Py_InitModule("spam", PyBSMethods); > PyObject* d = PyModule_GetDict(module); > }} > > ----------------------------------------------------------------------------------------------------------------------
What about the simple stuff like: did you put your dll/pyd file where python 2.5 can find it? Are you including the correct Python.h, are you linking against the correct library (python25.lib or python25_d.lib)? Have you tried debugging with the "python -v" option (shows import trace messages)? Matt -- http://mail.python.org/mailman/listinfo/python-list