comtypes 0.6.2 released
Thomas Heller
theller at ctypes.org
Mon Jan 18 08:15:34 CET 2010
Am 16.01.2010 17:22, schrieb Thomas Heller:
> I'm happy to announce the 0.6.2 comtypes release:
>
> http://sourceforge.net/projects/comtypes/
I forgot to mention what comtypes is, sorry for that:
comtypes
--------
**comtypes** is a lightweight Python COM package, based on the ctypes
FFI library, in less than 10000 lines of code (not counting the
tests).
**comtypes** allows to define, call, and implement custom and
dispatch-based COM interfaces in pure Python. It works on Windows,
64-bit Windows, and Windows CE.
> Here are the release notes:
>
> comtypes 0.6.2 released.
>
> Summary of important changes:
>
> - Several bug fixes for COM event handlers implemented in Python.
>
> - Allow typelib wrappers that (wrongly?) contain
> 'SAFEARRAY(VARIANT)*'.
>
> - DllCanUnloadNow() always returns S_FALSE in comtypes inproc
> COM servers.
>
> - The COM interfaces IViewObject, IViewObject2, and
> IViewObjectEx in the new module comtypes.viewobject.
>
> --------------------------------------------------------------------------
>
> Detailed changelog since version 0.6.0:
>
> 2010-01-15 Thomas Heller <theller at python.net>
>
> * Bumped version number to 0.6.2.
>
> * CoUninitialize() returns nothing, not HRESULT.
>
> 2009-12-22 Thomas Heller <theller at python.net>
>
> * Bug fixes for event handlers implemented in Python.
>
> 2009-12-11 Thomas Heller <theller at python.net>
>
> * COM servers implemented in Python can now fire events; it did
> not work in some cases.
>
> * When an exception occurs in a COM event handler, a traceback is
> printed.
>
> 2009-11-26 Thomas Heller <theller at python.net>
>
> * Allow typelib wrappers that contain 'SAFEARRAY(VARIANT*)'
> parameter types to be imported. Calling these methods will fail,
> though.
>
> 2009-11-13 Thomas Heller <theller at python.net>
>
> * To avoid a memory leak when PyInitialize()/PyUninitialize() are
> called several times, return S_FALSE from inproc server's
> DllCanUnloadNow().
>
> 2009-11-05 Thomas Heller <theller at python.net>
>
> * COMObject subclasses can now implement a _final_release_()
> method to free up resources, for example. This method is called
> when the COM reference count reaches zero.
>
> * Implement __hash__ method in dynamic dispatch classes. This
> fixes a 'python -3' warning.
>
> * comtypes\safearray.py: When numpy is not installed, creating
> safearrays took a very long time. This is fixed now.
>
> * comtypes\test\test_server.py: New way to test COM client and
> server. Work in progress.
>
> 2009-10-22 Thomas Heller <theller at python.net>
>
> * Support broken COM objects that provide IProvideClassInfo2, but
> not IProvideClassInfo (although the latter is derived from the
> former). See
> http://sourceforge.net/tracker/index.php?func=detail&aid=2829887&group_id=115265&atid=692942
>
> * Fixed a regression from the 0.4 version, [out] parameters didn't
> accept pointers or arrays any longer. Thanks again to Michael
> Eddington.
>
> 2009-10-19 Thomas Heller <theller at python.net>
>
> * Fix a memory leak in Python COM servers. Thanks to Michael
> Eddington for the patch.
>
> 2009-10-02 Thomas Heller <theller at python.net>
>
> * comtypes\test\test_server.py: Start a better approach to test
> both COM object calls and COM object implementations.
>
> 2009-09-09 Thomas Heller <theller at python.net>
>
> * Fix returning SAFEARRAY of VT_RECORDs. Based on a patch from
> Eduardo Arias.
>
> * New module comtypes.viewobject, contains the interfaces
> IViewObject, IViewObject2, IViewObjectEx. IAdviseSink is faked.
>
> * Change version number to 0.6.2dev.
>
> 2009-09-04 Thomas Heller <theller at python.net>
>
> * CoTaskMemFree does not return a HRESULT. Patch from James Teh.
>
> 2009-08-19 Thomas Heller <theller at python.net>
>
> * Bumped version number to 0.6.1.
>
> 2009-08-07 Thomas Heller <theller at python.net>
>
> * When an interface was specified in the call to
> IClassObject.CreateInstance, return that instead of calling
> GetBestInterface. Patch from James Teh.
>
> 2009-08-04 Thomas Heller <theller at python.net>
>
> * Added comtypes.CoGetClassObject() low-level function,
> comtypes.client.GetClassObject() high-level function, and
> implemented a pythonic interface to IClassFactory's CreateInstance
> method:
>
> def CreateInstance(self,
> punkouter=None,
> interface=None,
> dynamic=False)
>
> * Added the 'dynamic=False' parameter to the
> comtypes.client.CoGetObject and comtypes.client.GetActiveObject
> functions. Suggested by James Teh.
>
> 2009-06-17 Thomas Heller <theller at python.net>
>
> * comtypes.automation: Support VT_I8 and VT_UI8 SAFEARRAYs.
>
> * comtypes._comobject: Restore compatibility with Python 2.3.
>
> * Add the comtypes.IServiceProvider interface. Based on a patch
> from Michael Curran.
>
> 2009-04-30 Thomas Heller <theller at python.net>
>
> * Change version number in repository to 0.6.0.2dev.
>
> * Replace the VARIANTEnumerator implementation class in
> comtypes.server.automation with a new one which should actually be
> usable.
>
> * A completely new way how localserver and inproc server instances
> are managed:
>
> A comtypes.LocalServer or comtypes.InprocServer instance
> is attached to the comtypes.COMObject class at runtime.
>
> These changes keep localserver running as long as
> COMObject instances are alive.
>
> 2009-04-29 Thomas Heller <theller at python.net>
>
> * comtypes.errorinfo.ReportException now takes an additional
> 'stacklevel' named argument.
>
> * Add E_OUTOFMEMORY hresult code.
>
> * Register the InprocServer32 only when running as script or
> py2exe dll, not when running as py2exe exe server.
>
> 2009-04-25 Thomas Heller <theller at python.net>
>
> * SAFEARRAYs can now also be created from multi-dimensional numpy
> arrays.
>
> 2009-04-23 Thomas Heller <theller at python.net>
>
> * Change version number in repository to 0.6.0.1dev.
>
> * SAFEARRAYs can now also be created from array.array objects, and
> from (one-dimensional) numpy arrays. This is a lot faster than
> creating them from Python lists or tuples, at least for large
> arrays.
>
> * ctypes instances like c_int, c_ubyte, and so on can now be
> assigned to VARIANT().value. This allows to force creation of
> VARIANTs with the corresponding typecodes V_I4, VT_UI1 and alike.
>
> * Accept typelibs that contain SAFEARRAY(char).
>
> 2009-03-17 Thomas Heller <theller at python.net>
>
> * Fixed the return type of ITypeLib::ReleaseTLibAttr, which is
> documented wrongly in MSDN. The return type is void, not HRESULT.
> Reported to cause crashes on Windows 7.
>
> 2009-01-29 Thomas Heller <theller at python.net>
>
> * Restore compatibility with Python 2.3.
>
> * comtypes\client\_code_cache.py: Add missing 'import types' in
> comtypes\client\_code_cache.py.
>
>
>
--
Thanks,
Thomas
More information about the Python-announce-list
mailing list