RunError, процедура
Синтаксис
procedure RunError(ErrorCode:  Integer = 0);
 
Описание
  Процедура RunError прерывает выполнение программы с определенным кодом ошибки. 
  RunError не является настоящей процедурой. 
 
Ошибки
 
 
Советы и приемы
  
    -  Когда возникает ошибка времени выполнения и ErrorProc равен nil, Delphi 
      вызывает RunError для вывода сообщения об ошибке и остановки программы. 
      В графическом приложении Delphi выдает сообщение об ошибке в диалоговом 
      окне. В консольном приложении Delphi печатает сообщение об ошибке на консоль. 
    
 -  Создавая собственную процедуру ErrorProc, можно использовать RunError 
      для остановки программы и выдачи короткого сообщения об ошибке. Но процедура 
      ErrorProc может выполнять и какое-нибудь другое действие, например, генерировать 
      исключительную ситуацию или печатать другое сообщение об ошибке. 
    
 -  Процедура ExitProc и разделы завершения модулей выполняются до завершения 
      программы.
 
     - Как и Halt, RunError это быстрый способ 
      завершения программы, но он не является правильным для графического приложения, 
      для завершения которого следует закрыть его главную форму. 
  
  
 
Пример
// Выдача ошибки времени выполнения. Адрес вызова RunError
// становится адресом ошибки. Адрес, передаваемый в ErrorProc,
// это адрес вызова ErrorProc, который близок, но не совсем
// совпадает с адресом вызова RunError. Можно изменить
// значение Caller, но этот метод сильно зависит от генератора
// кода.
procedure ReportError(ErrorCode: Integer);
  function Caller:  Pointer;
  asm
    MOV EAX, [ESP]
  end;
type
  TErrorProc = procedure(Code: Integer; Addr: Pointer);
begin
  if ErrorProc <> nil then
    TErrorProc(ErrorProc)(ErrorCode,   Caller);
  RunError(ErrorCode);
end;
 
Смотрите также
Процедуры Halt, SetInOutRes.
 
 
 Нет комментариев. 
  
 
Оставить комментарий:
 |   
 |