Release Notes‎ > ‎

Comfy 2.4 Release Notes

Post date: Oct 28, 2010 2:48:11 PM

Changes since version 2.3:

    • Added the CodegenForComfyJ plug-in for Eclipse.

    • Added the DllClassFactory class that allows obtaining an IClassFactory object directly from the type library file (DLL) without registering it in the system.


    • Improved performance of the Automation function calls (almost by two times).

    • Improved the Deciamal class: added the ability to create a Decimal object from a Java double value and convert a Decimal value to a double value respectively.

    • Added to ComfyJ Programmer's Guide step-by-step instructions guiding through the creation of Java COM wrappers from a COM Type Library.


    • Fixed the problem with returning out parameters from Java COM callbacks.

    • Fixed the problem with releasing all unused objects in the OleContainer.destroyObject() method.

    • Fixed a deadlock problem that occurs while adding/removing an OleContainer object to/from a container.

    • Fixed the problem in the Automation.invoke() method: now it correctly reverses the order of parameters for a dispinterface.

    • Fixed the Automation.invokeDispatch() method which did not cast the resulting value to some types, for instance, to ComEnumeration type.

    • Fixed a focus handling problem in the OleContainer class.

    • Fixed an access violation problem in the OleContainer class that appeared in JDK 1.4.2_12 and later.

    • Fixed the IUnknownImpl.release() method related to disposing of a COM object in a stopped OleMessageLoop thread.

    • Fixed implementation of the IUnknown.hashCode() method.

    • Fixed the problem in the SafeArray class: externally allocated SafeArray's are correctly freed now.

    • Fixed the problem in the BStr class: externally allocated BString's are correctly freed now.

    • Updated Javadoc for ComToJava functionality.

Bug fixes in the CodegenForComfyJ:

Important note: In ComfyJ 2.3, there was a problem (incorrect reverse of parameters for wrappers to dispinterfaces) in code generation. So if you created Java wrappers for dispinterfaces using that version, we recommend you to re-generate them anew. Otherwise, they will not work correctly with ComfyJ 2.4. We are sorry for inconvenience.

    • Fixed generation of wrappers for pure dispinterfaces: the order of parameters is not reversed.

    • Fixed a naming issue for property getters/setters whose names may clash with existing methods of COM interfaces.

    • Fixed the problem with generation of wrong method names for Java COM event servers.

    • Fixed the problem when stubs were not generated properly for some types, like Pointer.Void[] /*[in,out]*/ or Int16[] /*[in,out]*/.

    • Fixed the problem when an incorrect wrapper was generated when a method of a COM interface expected a pointer to a primitive type (for example, in/out type* value).

    • Fixed several issues in the plug-in for IDEA.