Author: Erwin Molendijk
How do you implement your own handler for assertion failures?
Answer:
1 program AssertDemo;
2 {3 Copyright (c) 2001 by E.J.Molendijk4 Delphi Factory Netherlands BV5 6 This little program demonstrates the use7 of your own assertion handler.8 Check out the AssertErrorHandler() procedure in SysUtils.pas to9 see how borland has implemented their (far more complex) handler.10 }11 12 uses13 Dialogs;
14 15 procedure MyAssertErrorHandler(constmessage, Filename: string;
16 LineNumber: Integer; ErrorAddr: Pointer);
17 begin18 ShowMessageFmt(
19 'This is my own assertion handler for %s line %d: %s',
20 [Filename, LineNumber, message]);
21 // you could save the information to a file or something...22 end;
23 24 begin25 AssertErrorProc := @MyAssertErrorHandler;
26 assert(false, 'assertion failure test');
27 end.