#2 client.Create should try IProvideClassInfo2

closed-fixed
nobody
None
5
2009-10-22
2009-07-30
Jorenko
No

client.Create should try IProvideClassInfo2 if IProvideClassInfo fails, as some modules implement the former but not the latter

Discussion

  • Jorenko

    Jorenko - 2009-07-30

    client.Create should try IProvideClassInfo2

     
  • Thomas Heller

    Thomas Heller - 2009-07-31

    The IProvideClassInfo2 interface derives from IProvideClassInfo. So, it would by very strange if QueryInterface(IProvideClassInfo2) succeeds when QueryInterface(IProvideClassInfo) fails.

    Wouldn't an object with this behaviour be VERY SEVERLY broken?

     
  • Nobody/Anonymous

    Specifically, all interfaces generated using Pacific Mindworks' Nimbus 2.0 have this behavior. Everything works, except for QueryInterface(IProvideClassInfo). When my company asked their support team, they said "IProvideClassInfo2's better anyway, just use that."

     
  • Thomas Heller

    Thomas Heller - 2009-10-01

    Ok, I'm convinced that you need it.
    Is a COM object developed with Nimbus available for download somewhere?

     
  • Jorenko

    Jorenko - 2009-10-21

    http://www.vtiinstruments.com/Files/IVI/VTEXSystem.msi

    >>> from comtypes import client
    >>> client.CreateObject("VTEXSystem.VTEXSystem")
    <POINTER(IVTEXSystem) ptr=0x13e48f0 at e692b0>

    It will say "<POINTER(IUnknown) ptr=0x13e48f0 at e692b0>" instead before making this patch.

     
  • Thomas Heller

    Thomas Heller - 2009-10-22
    • status: open --> closed-fixed
     
  • Thomas Heller

    Thomas Heller - 2009-10-22

    I've committed your patch to SVN. The next comtypes release will contain it. Thanks!

     

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:





No, thanks