ObjectARX, AutoCAD. Среда программирования библиотеки C++

       

Разблокировка приложения


По умолчанию, приложения блокированы и не могут быть разгружены. Чтобы быть классифицирован как “незагружаемое” приложение, приложение должно гарантировать, что AutoCAD и другие приложения больше не обращаются{*относятся*} к любым объектам{*целям*}, или структурирует приложение,  определил. Прежде, чем Вы делаете приложение незагружаемым, быть очень осторожным, что никакие клиентские приложения не содержат активные указатели на любые объекты{*цели*} в вашем адресном пространстве. Для списка операций очистки приложение должно исполнить, чтобы быть незагружаемым, см. “ Подготовка к Разгрузке ” на странице 38.

Если Вы хотите делать ваше приложение незагружаемым, Вы должны сохранить значение pkt параметра, посланного с AcRx:: kInitAppMsg. Pkt параметр будет использоваться unlockApplication () на. По умолчанию, прикладная программа блокирована. Если Вы разблокируете приложение, это может быть разгружено.

Используйте следующий две функции, чтобы блокировать и разблокировать приложение:

bool

AcRxDynamicLinker::lockApplication(void* pkt) const;

bool

AcRxDynamicLinker::unlockApplication(void* pkt) const;

Следующие функциональные проверки, действительно ли приложение блокировано:

bool

AcRxDynamicLinker::isApplicationLocked(const char* name) const;

Аналогичные глобальные функции также обеспечиваются:

bool

acrxLockApplication(void* pkt);

bool

acrxUnlockApplication(void* pkt);

bool

acrxApplicationIsLocked(const char* modulename);



Содержание раздела