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.