Development |
Recommended ITLogLib variant |
Comment |
Windows .Net language platform | ||
Visual Basic .NET |
ITLogLib/.NET |
|
Visual C# |
ITLogLib/.NET |
|
Visual J# |
ITLogLib/.NET |
|
Visual C++ .NET |
ITLogLib/Visual C++ |
Use ITLogLib/Visual C++ for C++-only projects, because this variant provides convenient output streaming operators (<<) and has real automatic destructor support (sends ITLogMsg instances immediately at the end of their scope). |
ITLogLib/.NET |
Use ITLogLib/.NET especially in .NET projects which use components written in different .NET languages which should use the same logchannels, output filter settings etc. You must explicitly call ITLogMsg.Send() to send logmessages, as the Garbage Collector would send them very late (and sometimes not until the end of your program). | |
Other .NET languages, incl. scripting languages |
ITLogLib/.NET |
|
Standard Windows languages | ||
Visual Basic 6 |
ITLogLib/COM |
You could also use ITLogLib/Win32, but that would be very inconvenient. |
VBA hosts |
ITLogLib/COM |
|
VBScript hosts |
ITLogLib/COM |
|
Visual C++ 6 |
ITLogLib/Visual C++ |
You could also use ITLogLib/COM from VC, but this would be inconvenient and requires COM DLL registration at deployment. You could also use ITLogLib/Win32 from VC, but that would be inconvenient. And the deployment is essentially the same for both variants. |
Other C++ compilers |
ITLogLib/Standard C++ |
ITLogLib/Standard C++ builds on ITLogLib/Win32 and provides an object-oriented C++ interface. Direct use of ITLogLib/Win32 is not needed in this case. |
Visual J++ 6 |
ITLogLib/COM |
|
Delphi 6 and 7 |
ITLogLib/Delphi |
ITLogLib/Delphi builds on ITLogLib/Win32 to provide an object-oriented Delphi interface. ITLogLib/Delphi compared to ITLogLib/COM: · Adapted especially for Delphi. · Higher performance by avoiding the COM marshalling and unmarshalling overhead. · Doesn’t require COM DLL registration for deployment. Advantages of using ITLogLib/COM (instead of ITLogLib/Delphi): · Supports logging in mixed COM language projects. · Supports automatic Free() (which included Send()) of ITLogMsg instances at the end of their scope (by the COM extensions which are built into the Delphi compiler). Note: You could also directly use ITLogLib/Win32 from Delphi, but that would be very inconvenient. |
Pure Java on Windows and Windows languages which can use DLLs | ||
Compatible pure Java compilers |
ITLogLib/Java |
ITLogLib/Java builds on ITLogLib/Win32 to provide a real object-oriented Java interface using the Java Native Interface (JNI). |
C Compiler |
ITLogLib/Win32 |
|
Simple compiled or scripting languages (e.g. InstallShield’s InstallScript |
ITLogLib/Win32 |
Practically all Windows programming languages which support the use of Windows DLLs (with WINAPI / stdcall calling convention) to be able to use the WINAPI functions and to be extensible. |
See also: