Приложения ObjectARX должны быть загружены перед использованием любой из определенных в них команд или функций.
Имеется возможность загрузки приложения ObjectARX, используя один из следующих подходов:
Некоторые приложения ObjectARX используют файл acad.rx, в котором содержится список файлов приложения ObjectARX, автоматически загружаемых при запуске AutoCAD.
Для создания и редактирования этого файла можно использовать любой текстовый редактор или текстовый процессор, который сохраняет тексты в формате ASCII. При необходимости этот файл можно изменять, удаляя неиспользуемые или добавляя нужные имена ObjectARX-приложений. Кроме того, перечень приложений для автоматической загрузки можно выбрать с помощью параметра ЗАГПРИЛ. В последнем случае редактирование файлов не требуется.
Так как в программных продуктах на основе AutoCAD поиск файла acad.rx производится в порядке, заданном в стандартных библиотечных путях, в каждой папке с чертежами можно хранить свой файл acad.rx. Это позволяет загружать требуемый набор ObjectARX приложений для различных типов чертежей. Пусть, например, трехмерные чертежи хранятся в папке с именем AcadJobs/3d_dwgs. Если эта папка установлена текущей, в нее можно скопировать файл acad.rx и внести в него следующие изменения:
myapp1 otherapp
Если поместить новый файл acad.rx в папку AcadJobs/3d_dwgs, задать эту папку в качестве текущей и запустить программу, указанные приложения ObjectARX загружаются и становятся доступными из командной строки AutoCAD. Поскольку исходный файл acad.rx остается в папке программных файлов AutoCAD, файл по умолчанию acad.rx будет загружен при запуске программы из другой папки, в которой отсутствует файл acad.rx.
С помощью функции arxload приложения ObjectARX можно загружать из MNL-файлов. Это позволяет при загрузке файла меню также загружать все необходимые ObjectARX-приложения, которые должны вызываться из данного меню.
Синтаксис функции arxload во многом идентичен синтаксису функции load, используемой для работы с AutoLISP-файлами. При успешной загрузке приложения ObjectARX функция arxload возвращает имя программы. Вызов функции arxload имеет следующий синтаксис:
(arxload filename [onfailure])
Функция arxload имеет два аргумента имя_файла и при_ошибке. Как и у функции load, аргумент имя_файла является обязательным и должен представлять собой полный путь и имя файла загружаемого приложения ObjectARX. Аргумент при_ошибке является необязательным и при загрузке приложений ObjectARX из командной строки, как правило, опускается. В следующем примере производится загрузка приложения ObjectARX myapp.arx.
(arxload "myapp")
Как и в случае с файлами AutoLISP, программа производит поиск указанного файла по библиотечному пути поиска. Для загрузки файла, находящегося вне папок, указанных в библиотечном пути, требуется задание полного пути к нему.
Попытка повторной загрузки уже находящегося в памяти приложения приводит к появлению ошибки. Перед использованием arxload следует с помощью функции arx проверить, нет ли приложения в списке уже загруженных.
Для выгрузки приложения с помощью AutoLISP служит функция arxunload. На следующем примере можно посмотреть, как производится выгрузка приложения myapp.
(arxunload "myapp")
Использование функции arxunload приводит к выгрузке из памяти не только приложения ObjectARX, но и определенных в нем команд.