It is correct that the SmartInspect library gets compiled into the .exe by default (you also have the option to use it as an external .bpl), so this shouldn’t cause the problem. No external libraries or applications are needed. If logging is configured correctly (i.e. setting Si.Enabled to True and setting the connections string to log to a file), then it’s likely that the SmartInspect library encounters a problem while trying to open the specified log file. For example, it’s likely to be a permission problem on the target machine (or maybe the target directory does not exist). In which directory do you try to log?
The reason why you do not see an error is that the library does not raise an exception but rather uses a special event to report exceptions in order to not change the exception behavior of your application. This event is called OnError can be used as follows:
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, SiAuto, SmartInspect, StdCtrls;
TForm1 = class(TForm)
procedure Button1Click(Sender: TObject);
procedure OnError(ASender: TSmartInspect; AException: Exception);
procedure TForm1.Button1Click(Sender: TObject);
Si.OnError := OnError;
Si.Connections := 'file(filename="c:\log.sil")';
Si.Enabled := True;
procedure TForm1.OnError(ASender: TSmartInspect; AException: Exception);
More information about the error handling of the libraries can be found in the online help (press F1 in the Console) under “Working with SmartInspect | Library Error Handling”.