Cameron Laird's personal notes on Tcl under Win*

COM

The Tcl Resource Center covers much of the same territory.

As Alexandre Ferrieux correctly repeats, "none of the Tcl COM-client projects so far (TOCX/TAXI and OpTcl being prominent) comes close to Win32COM's maturity and completeness." On the other hand, OpTcl in particular can be enormously rewarding within its proper domain; Alexandre lauds its intelligent packaging, while Andy Hunt mentions how convenient it is for his work with ActiveMil. Three months into his reliance on it, Alexandre affirms that "it still works like a charm." The conclusion, as 2000 begins: Farzad Pezeshkpour's OpTcl (mirrored at Scriptics) is the best way for Tcl to be a COM client.

Farzad's "TclControl is an ActiveX control that exposes Tcl and Tk to ActiveX containers such as Visual Basic, Internet Explorer, MFC and others."

Andrew Friedel's "AxTcl is an ActiveX DLL that allows users of Visual Basic {4,5,6}, Delphi, Powersoft, ... and Excel to embed the Tcl8.0 interpreter in their application." This COM server, designed also for ASP applications, supersedes his TclOCX. As 2000 begins, though, Andrew has handed over the project to Noel Frankinet. To smooth the transition, Andrew has made space available for the current AxTcl.

Noel's project is ActiveTcl, "an ActiveX wrapper for the tcl 8.0 interpretor." It includes tclwin: a win32 interface for MDI and non-modal dialogues, plus tclodbc.

The preferred way to communicate with DLLs as of late 1999 is with Roger Critchlow's Ffidl.

Robin Becker's DLL caller for Win32 and Linux-ELF was an invaluable way to communicate with DLLs before Ffidl. He demonstrates, for example, how to use "the dll caller to produce a list of titled windows." Even more dramatically, he's built a Python command server for Tcl which he intends eventually to elaborate into a quite capable, COM-savvy tool.

"Tcom is a Windows-specific Tcl extension that provides commands to access COM objects and invoke methods on them."

[Explain COSH. Explain TAXI. also tcom]

Iain Findleton's DDE 2.0 "implements most of the features of the Microsoft Dynamic Data Exchange Management Library (DDEML)."

TOCX is not maintained, I believe.

Michael Kraus has worked with both optcl and tcom.

The registry

Platform-specific issues

[package stuff]

Active Scripting

Microsoft defines a (nominally) language-neutral Active Scripting technology which seems a natural venue for Tcl to shine. As of early 2000, though, I know of no one working in this area.

I recommend Mark Baker's FAQ on Active Scripting. It certainly does a good job of outlining what other languages are achieving with Active Scripting. Tclers who aim to pursue this should pay particular attention to Mark Hammond's excellent Python work. Mark has good taste, broad knowledge, and a record of accomplishment reflected in the completeness of his Python-for-Windows projects. They make good targets for Tcl work.

Installation

[Explanation of why installation matters, and why people need to know about TclKit.]

Matt Newman's tclsvc is a "[c]ompact tcl interpreter that allows any Tcl program to run as a fully fledged Windows NT Service."


Cameron Laird's personal notes on Tcl under Win*/claird@phaseit.net