Скачать Модуль UserError для Turbo Pascal

18.07.1994
Скачать файл (1,88 Кб)

Модуль USERERR для Turbo Pascal


Copiright (c) by SoftWeyr,1993

При работе с Turbo Pascal часто возникают такие ситуации, когда причиной ошибки времени выполнения служит некорректное обращение к уже отлаженному модулю. Если этот модуль был откомпилирован без отладочной информации, то сообщение об ошибке выскакивает в абстрактном окошке и найти место ее возникновения ох как непросто. Не лучше и ситуация, когда исходный текст модуля доступен - Call Stack после останова по ошибке сделать нельзя, а попробуй все это оттрассируй.
Особенно достали меня сообщения типа Abstract Method Call, Collection Index out of Range и т.п. в паскале 6.0.
Модуль UserErr позволяет решить эту проблему. Подцепипив его к отлаженному модулю и поместив в начале каждой интерфейсной процедуры/метода вызов PushErrFar, а в конце PopError, то в случае возниконвения ошибки в процедуре, курсор в интегрированной среде будет установлен в точку, откуда ее вызвали.
Процедура PopErrNear предназначена для случая, когда вы уже отладили какую-нибудь локальную процедуру ($F- или near) и хогтите отследить, где она некорректно вызывается в том же модуле.
Модуль UserErr переназначает процедуру завершения (ExitProc) Поэтому если вы хотите, чтобы он работал, работайте с ExitProc корректно.