Convert PyIDispatch object to struct IDispatch*

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Huayang Xia

    Convert PyIDispatch object to struct IDispatch*

    I am trying to use ctypes to call dll functions. One of the functions
    requires argument "struct IDispatch* ". I do have a PyIDispatch object
    in python. How can I convert this "PyIDispatc h object" to "struct
    IDispatch* "?

    Thanks in advance.
  • Gabriel Genellina

    #2
    Re: Convert PyIDispatch object to struct IDispatch*

    En Thu, 10 Apr 2008 18:45:04 -0300, Huayang Xia <huayang.xia@gm ail.com>
    escribió:
    I am trying to use ctypes to call dll functions. One of the functions
    requires argument "struct IDispatch* ". I do have a PyIDispatch object
    in python. How can I convert this "PyIDispatc h object" to "struct
    IDispatch* "?
    I think a PyIDispatch object is an IDispatch* itself.
    But you'll get better answers from the python-win32 list:


    --
    Gabriel Genellina

    Comment

    • Huayang Xia

      #3
      Re: Convert PyIDispatch object to struct IDispatch*

      On Apr 11, 12:15 am, "Gabriel Genellina" <gagsl-...@yahoo.com.a r>
      wrote:
      En Thu, 10 Apr 2008 18:45:04 -0300, Huayang Xia <huayang....@gm ail.com>
      escribió:
      >
      I am trying to use ctypes to call dll functions. One of the functions
      requires argument "struct IDispatch* ". I do have a PyIDispatch object
      in python. How can I convert this "PyIDispatc h object" to "struct
      IDispatch* "?
      >
      I think a PyIDispatch object is an IDispatch* itself.
      But you'll get better answers from the python-win32 list:http://mail.python.org/mailman/listinfo/python-win32
      >
      --
      Gabriel Genellina
      Thanks for the info.

      To call a dll function, it needs a C style IDispatch*. PyIDispatch is
      a python wrapped one. I found a reference from:



      which shows how to convert C style to python style. Unfortunately i
      need the reversed version.

      I will post the question to python-win32.

      Comment

      • Tim Golden

        #4
        Re: Convert PyIDispatch object to struct IDispatch*

        Huayang Xia wrote:
        On Apr 11, 12:15 am, "Gabriel Genellina" <gagsl-...@yahoo.com.a r>
        wrote:
        >En Thu, 10 Apr 2008 18:45:04 -0300, Huayang Xia <huayang....@gm ail.com>
        >escribió:
        >>
        >>I am trying to use ctypes to call dll functions. One of the functions
        >>requires argument "struct IDispatch* ". I do have a PyIDispatch object
        >>in python. How can I convert this "PyIDispatc h object" to "struct
        >>IDispatch* "?
        >I think a PyIDispatch object is an IDispatch* itself.
        >But you'll get better answers from the python-win32 list:http://mail.python.org/mailman/listinfo/python-win32
        >>
        >--
        >Gabriel Genellina
        >
        Thanks for the info.
        >
        To call a dll function, it needs a C style IDispatch*. PyIDispatch is
        a python wrapped one. I found a reference from:
        >

        >
        which shows how to convert C style to python style. Unfortunately i
        need the reversed version.
        >
        I will post the question to python-win32.
        I've had a quick look at the PyIDispatch source and I can't see any obvious
        way in which the underlying IDispatch is exposed. May have missed something,
        but it's possible that there's not way out.

        TJG

        Comment

        Working...