



Version 1.2
- Can be loaded by Lua 5's
require
function; - In-process servers, fully implemented in Lua (no initialization code in C is necessary
for in-process servers, and for local servers using Lua 5);
- Now 1-based arrays are correctly converted by LuaCOM;
- UNICODE strings are correctly converted from/to ANSI ones by
LuaCOM;
- byte arrays are now converted from/to strings with embedded zeros;
- LuaCOM now has a limited support for loading and browsing type
information and type libraries. This includes the ability to import
type library constants (enum's) as Lua globals and the ability
to open the help information associated with a component;
- objects implementing IEnumVARIANT interface are now
supported. This means that collections can be used in LuaCOM in a
similar way as the are in VBScript©;
- implemented a log mechanism to simplify debugging;
- LuaCOM now handles correctly COM calls with named
parameters5.1. This caused problems when receiving Microsoft
Excel© events;
- now it's possible to specify the context used to create an
instance of a COM object (whether it should be created as a local
server or as an in-process server);
- non-ANSI code removed;
- when faced with an IUnknown pointer, LuaCOM now
queries it for IDispatch or IEnumVARIANT interfaces,
returning a LuaCOM object instead of an IUnknown pointer;
- improved error-handling: now LuaCOM allows the customization
of the actions to be taken when errors occur;
- LuaCOM now supports the concept of default method: when one
uses a reference to a LuaCOM object as a function, LuaCOM does the
function call using the default method of that object;
- part of the LuaAPI of LuaCOM now is implemented
in Lua 5. This eases the addition of new features and avoids
cramming the library. Nevertheless, this does not impact those who use
the binary release, as they carry the Lua code precompiled;
- luacom.GetObject now supports the use of monikers. Among
other thing, this makes possible to use WMI and to open document files
directly, e.g.
luacom.GetObject("myfile.xls")
; - luacom.CreateObject and luacom.GetObject now
make an attemp to initialize the COM object via
IPersistStreamInit. Some objects refuse to work without this step.




Next: Version 1.1 Up: 5.5 History Previous: Version 1.3b Contents Fabio Mascarenhas de Queiroz 2005-01-07