В программы на языке AutoLISP® часто требуется внести небольшие изменения, чтобы они могли выполняться в новой версии.
Однако программа AutoLISP может работать неправильно в последней версии, так как функция AutoLISP либо команда программы или системная переменная на основе AutoCAD была изменена или устарела.
Проверьте свои пользовательские программы, чтобы выявить команды и системные переменные, которые могли устареть. В некоторых случаях устаревшие команды и системные переменные могут использоваться в таких программах, даже если их нельзя ввести непосредственно в командную строку или запустить через пользовательский интерфейс.
При необходимости использовать устаревшую команду или системную переменную в пользовательской программе можно обратиться к следующим методам.
В продуктах на базе AutoCAD, начиная с версии AutoCAD 2017, значения системных переменных CDATE и DATE больше не будут отражать текущую дату и время с точностью до тысячной или сотой доли секунды. Теперь наименьшей единицей времени для выражения значений этих переменных являются секунды. Если необходимо отследить промежутки времени с точностью до долей секунды, используйте значение системной переменной MILLISECS, которое отражает разницу во времени с момента запуска компьютера в миллисекундах.
В следующих системных переменных, связанных с датой и временем, также больше не используются миллисекунды:
В продуктах на базе AutoCAD 2016 к файлам AutoLISP можно добавлять цифровые подписи. Если добавить к файлу AutoLISP цифровую подпись, то при его загрузке в среду чертежа AutoCAD не будет отображаться предупреждение о том, что файл получен из ненадежного источника. Файлы VLX с цифровой подписью нельзя загружать в продукты на базе AutoCAD 2015 или более ранних версий.
Начиная с программных продуктов на базе AutoCAD 2016 функция объектной привязки больше не поддерживает режим быстрой объектной привязки (QUI). Удалите режим QUI из инструкций, которые используют функции объектной привязки в программах AutoLISP. Если режим не удаляется, функция объектной привязки возвращает NIL, а не значение координат для допустимой точки в области чертежа.