Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Обработка исключительных ситуаций без SysUtils [D6]


Страницы:   1 2 3

Bopros ©   (2006-01-14 22:48:00) 

Необходимо обработать исключительную ситуацию без использования модуля SysUtils, вот элементарный пример, который выдаёт Runtime error 200:

program Project1;

uses
 Windows;

var b:integer;
begin
 try
   b:=trunc(b/0);
 except
   MessageBox(0,'123','321',mb_ok);
   end;
end.


Игорь Шевченко   (2006-01-16 17:26:00) [41]

Владислав ©   (16.01.06 16:43) [10]

except тоже работает без SysUtils.

"Normal exception support comes from the SysUtils unit, which must be initialized before such support is available. " (c) F1


Владислав   (2006-01-16 16:43:00) [42]

А finally вроде и без SysUtils работает...


Игорь Шевченко   (2006-01-16 16:09:00) [43]


> Можно обработать исключения через SEH без использования
> каких-либо модулей. В конечном итоге все конструкции типа
> try..except, try..catch, сводятся примерно к следующему
> (с небольшими вариациями):


А finally ?


Digitman   (2006-01-16 15:23:00) [44]


> кусок кода для делфи для обработки вида
> try
> except
> end;


Ты еще не осознал, какую глупость ты сморозил при этом ?


Bopros   (2006-01-16 15:17:00) [45]

никто не поможет с кодом чтобы по минимум было?


Bopros   (2006-01-15 12:32:00) [46]

2 NightAngel

а можешь всё таки дать кусок кода для делфи для обработки вида
try
except
end;
?


Bopros   (2006-01-15 12:31:00) [47]

вообщем подкрепил err.pas из KOL и заработало все ок, и exe вырос не намного


NightAngel   (2006-01-15 00:48:00) [48]

Можно обработать исключения через SEH без использования каких-либо модулей. В конечном итоге все конструкции типа try..except, try..catch, сводятся примерно к следующему (с небольшими вариациями):

PUSH OFFSET HANDLER
PUSH FS:[0]
MOV FS:[0],ESP
... // Здесь код, в результате выполнения которого может возникнуть исключение
POP FS:[0]
ADD ESP,4h
RET
HANDLER:
... // Здесь код обработчика исключения
MOV EAX,1  // если eax==1 управление передаётся следующему обработчику в цепочке
RET


Джо   (2006-01-15 00:42:00) [49]

> [2] Bopros   (14.01.06 23:46)
> а никто готовым примером не поможет?

Так в статье ж вроде и примеры имеются.


Bopros   (2006-01-14 23:46:00) [50]

а никто готовым примером не поможет?


Bopros   (2006-01-14 23:08:00) [51]

нашёл, читаю
http://www.delphikingdom.com/asp/viewitem.asp?catalogid=833


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо