Введение в интерфейсы программирования  
Предотвращение ошибок AutoLISP при выполнении файлов автозагрузки
 
 Понятия 
 
 Процедуры 
 
 Команды 
 

Если в процессе выполнения AutoLISP-файла автозагрузки происходит ошибка, то оставшаяся часть файла игнорируется и не загружается.

Если файлы, указанные в файле загрузки, не существуют или отсутствуют по библиотечному пути AutoCAD, это обычно вызывает ошибки. Для предотвращения прерывания выполнения файла автозагрузки при возникновении ошибки можно использовать аргумент при_ошибке функции load. В следующем примере иллюстрируется использование данного аргумента:

(princ (load "mydocapp1" "\nФайл MYDOCAPP1.LSP не загружен."))
(princ (load "build" "\nФайл BUILD.LSP не загружен."))
(princ (load "counter" "\nФайл COUNTER.LSP не загружен."))
(princ)

При успешном завершении функция load возвращает значение последнего выражения, содержащегося в файле. Обычно в этом качестве выступает либо имя самой последней определенной в файле функции, либо подсказка по использованию функции. В случае неуспешного выполнения функция возвращает значение аргумента при_ошибке. В предыдущем примере возвращаемое функцией load значение передается функции princ, в результате чего это значение отображается в командной строке.

Например, если ошибка возникает при загрузке файла AutoCAD mydocapp1.lsp, то с помощью функции princ будет отображено приведенное ниже сообщение, после чего AutoCAD продолжит загрузку оставшихся двух файлов:

Файл MYDOCAPP1.LSP не загружен.

В файлах acad.lsp, acaddoc.lsp и MNL-файлах функция command обязательно должна вызываться из конструкции defun. Для задания последовательности команд, выполняемой в момент запуска сеанса работы с чертежом, необходимо пользоваться функцией S::STARTUP.

См. также

Функция S::STARTUP: выполнение после завершения инициализации чертежа

  Ваш комментарий об этой странице  
City 3D - Карта Ангарска со справочником организаций
Hosted by uCoz