Next: 4.2 Is it really
Up: 4. Implementing COM objects
Previous: 4. Implementing COM objects
  Contents
With LuaCOM it is possible to implement full-fledged COM objects
and OLE controls using Lua. Here we understand a COM object as a
composite of these parts:
- a server, which implements one or more COM objects;
- registry information, which associates a CLSID (Class ID) to
a triple server - type library - default interface;
- a ProgID (Programmatic Identifier) which is a name associated to
a CLSID;
- a type library containing a CoClass element.
The registry information maps a ProgID to a CLSID, which is, in
turn, mapped to a server. The type information describes the
component, that is, which interfaces it exposes and what is the
default interface.
LuaCOM simplifies these tasks providing some helper functions to
deal with registration and instantiation of COM servers. LuaCOM suports
both local (EXE) and in-process (DLL) servers.
LuaCOM also provides helper functions to register and instantiate
OLE controls (with their user interface embedded in the hosting
application). This kind of object needs an in-process server, and a
supported Lua GUI toolkit (IUP, for now).
Next: 4.2 Is it really
Up: 4. Implementing COM objects
Previous: 4. Implementing COM objects
  Contents
Fabio Mascarenhas de Queiroz
2005-06-06