doc.mefi...@gmail.com writes: > Hi. I'm a newbie in python. But I want embed it in my C program. > > There is such method of my class: > @staticmethod > def install_instr_callback(callback): > # set hook for every change of PC > m68k.set_instr_hook_callback(callback) > > And in my C code there is such callback function: > static PyObject *my_instr_callback(PyObject *self); > > I want call install_instr_callback from C with specifying of my callback. I > do: > PyObject_CallMethod(myClass, "install_instr_callback", "(O)", > my_instr_callback); > But python writes me: [b]null argument to internal routine[/b].
If this output really comes from "PyObject_CallMethod", then some passed in argument is likely "null" - maybe "myclass"? The Python-C interface is complicated. It might be advicible to use e.g. "cython" to get the boilder plate code and some intricacies taken care of. I have done this with "dm.xmlsec.binding". You can find in its source also an example for the callback defined in Python and called from "C". -- https://mail.python.org/mailman/listinfo/python-list