I've just released comtypes-0.6.0!

Summary of important changes:

- Added a 'dynamic' keyword parameter to comtypes.client.CreateObject()
  and other creation functions.  If 'dynamic=True' is passed then no
  wrapper module is generated if the COM object supports dynamic
  dispatch. This can save quite some time or disk space since the
  wrapper modules can be huge.

- Bugfixes


Detailed changes since version 0.5.3:

2008-12-19  Thomas Heller  <thel...@python.net>

        * Bumped version number to 0.6.0.

        * comtypes.client.lazybind.Dipatch:
        If __getitem__ fails the get the indexed default value, try
        NewENUM.  Implement __eq__ for Python 3 compatibility.

        * Fix a problem with SAFEARRAYs where the contained data was
        released too early.

        * Fix property get handling for FUNC_PUREVIRTUAL functions in
        lazybind.py

2008-12-18  Thomas Heller  <thel...@python.net>

        * Fix memoryleak in IEnumVARIANT.

2008-12-12  Thomas Heller  <thel...@python.net>
        
        * Merged changes from the dyndispatch branch:

            * Add a comtypes.client.Constants class that provides a way to
            access constants in the type library for an object, even when
            no wrapper has been created for the type library.  The
            contants can be accessed as attributes like this, assuming
            'obj' is a COM object that exposes type information at runtime
            via the dispatch interface:
                Constants(obj).MyConstant

            * New comtypes.client.lazybind module.

            * Implement NamedProperty.__call__().  Extend
            NamedProperty.__getitem__() and NamedProperty.__setitem__() so
            that they accept a tuple, which make lazy bound objects more
            compatible with early bound objects.

            * Finished (for now) the comtypes.client.lazybind module.
            IEnumVARIANT instances get a _dynamic attribute which defaults
            to False.  The values returned from next() calls are retrived
            by calling ._set_value(self._dynamic) on the VARIANT result.

            * comtypes.client.dynamic:

            * Started changes based on ideas from Michael Curran: better
            dynamic dispatch support, and a way to disable the
            time-consuming wrapper code generation on demand.
        
            * comtypes\client: Add a new 'dynamic=False' parameter to the
            CreateObject function.  This parameter allows to create a
            dynamic dispatch object, bypassing the code generation.

            * comtypes\automation.py: Add a new parameter to the
            VARIANT._get_value(dynamic=False) method.  This allows to
            retrieve the current value as a _Dispatch() instance if the
            typecode is VT_DISPATCH, bypassing the code generation on the
            result.  The IDispatch.Invoke implementation now uses this to
            ensure that dynamic objects are returned when possible.

            * comtypes\client\dynamic.py: Implement _Dispatch.__eq__ so
            that we can compare instances for equality.



-- 
Thanks,
Thomas


------------------------------------------------------------------------------
_______________________________________________
comtypes-users mailing list
comtypes-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/comtypes-users

Reply via email to