mCtrl
0.10.0
|
MCTRL.DLL
can be built in Release as well as in Debug configuration. In production, the release build should always be used. However for diagnostics, debugging and during development of you application, or even when developing mCtrl itself, the Debug build may be very helpful.
In general, the debug builds of MCTRL.DLL
should be binary compatible and usable as a drop-in replacement of the Release builds of MCTRL.DLL
.
The Debug builds differs from the Release builds in the following ways:
gcc
, and gdb
does not understand PDB format as produced by Microsoft's compiler.)DebugBreak()
or similar function instead of process termination so developer can perform further analyzes of the issue.)MCTRL.DLL
function called with an invalid parameter), it logs down a debug message explaining the issue. (See below for more details.)Since version 0.10.0, debug builds (built with gcc
) are included in the released binary packages.
As noted above, the debug build of MCTRL.DLL
logs down some messages during the runtime of application linked with MCTRL.DLL
. The logging is performed via the OutputDebugString()
function.
So this debug output may be seen with any application capable catching it, which includes Microsoft debugger within Microsoft Visual Studio (just run your application within the debugger), gdb
(ditto), or DebugView utility available from the package of SysInternals utilities (see https://technet.microsoft.com/en-us/sysinternals/).
Seeing this debug output may help whenever something with mCtrl goes wrong and this makes the Debug build of MCTRL.DLL
very valuable tool during application development:
MCTRL.DLL
fails, the output may provide a hint about the reason.