A propos du chargement des applications ObjectARX

Une application ObjectARX doit être chargée avant que vous puissiez utiliser l'une de ses commandes ou fonctions définies.

Vous pouvez charger une application ObjectARX à l'aide de l'une des méthodes suivantes :

Remarque : A partir des produits basés sur AutoCAD 2014, les applications personnalisées doivent fonctionner en mode sécurisé lorsque la variable système SECURELOAD est définie sur 1 ou 2. En cas d'utilisation en mode sécurisé, le programme est limité au chargement et à l'exécution de fichiers contenant du code à partir des emplacements approuvés. Ces derniers sont spécifiés par la variable système TRUSTEDPATHS.

Chargement automatique des applications ObjectARX

Remarque : Certaines applications ObjectARX utilisent une partie importante de la mémoire système. Si vous ne vous servez plus d'une application et souhaitez la supprimer de la mémoire, utilisez l'option Unload de la commande ARX ou APPLOAD.

Certains ObjectARX exemples contiennent un fichier acad.rx, qui répertorie les fichiers d'application ObjectARX chargés automatiquement au démarrage d'un produit basé sur AutoCAD.

Avec un éditeur ou un traitement de texte à même de générer des fichiers texte ASCII, vous pouvez créer ou modifier ce fichier afin que les applications ObjectARX appropriés soient utilisables une fois son contenu enrichi ou élagué. Par ailleurs, la commande APPLOAD fournit l'option Applications lancées au démarrage qui charge les applications spécifiées sans qu'il soit nécessaire de modifier des fichiers.

Les produits basés sur AutoCAD recherchent le fichier acad.rx selon l'ordre spécifié par le chemin de la bibliothèque ; par conséquent, vous pouvez détenir un fichier acad.rx distinct dans chaque répertoire de dessins. Cela permet d'utiliser des applications ObjectARX spécifiques pour certains types de dessin. Par exemple, vous pouvez conserver les dessins 3D dans un répertoire appelé AcadJobs/3d_dwgs. Si ce répertoire correspond au répertoire courant, vous pouvez y copier le fichier acad.rx et le modifier de la manière suivante :

myapp1
otherapp

Si vous placez ce nouveau fichier acad.rx dans le répertoire AcadJobs/3d_dwgs et démarrez le programme en utilisant ce dernier comme répertoire courant, le système charge ces nouvelles applications ObjectARX, qui sont disponibles à partir de la ligne de commande. Etant donné que le fichier acad.rx d'origine figure toujours dans le répertoire des fichiers de programmes basés sur AutoCAD, le fichier acad.rx par défaut est chargé si vous démarrez le programme à partir d'un répertoire ne contenant pas de fichier acad.rx.

Vous pouvez charger des applications ObjectARX à partir d'un fichier MNL à l'aide de la fonction arxload. Ainsi, une application ObjectARX nécessaire au fonctionnement d'un menu est chargé simultanément au fichier de menu.

Chargement d'une application ObjectARX à l'aide d'AutoLISP

La syntaxe de la fonction arxload est pratiquement identique à celle de la fonction load utilisée avec les fichiers AutoLISP. Si la fonction arxload charge correctement le programme ObjectARX, elle renvoie le nom de l'application. La syntaxe de la fonction arxload est la suivante :

(arxload filename [onfailure])

Les deux arguments de la fonction arxload sont filename et onfailure. Comme dans le cas de la fonction load, l'argument filename est requis et doit correspondre au nom de chemin complet du fichier d'application ObjectARX à charger. L'argument onfailure est facultatif et n'est généralement pas utilisé lorsque vous chargez des applications ObjectARX à partir de la ligne de commande. L'exemple suivant charge l'application ObjectARX myapp.arx.

(arxload "myapp")

Comme dans le cas des fichiers AutoLISP, le programme recherche le fichier spécifié dans le chemin de la bibliothèque. Si vous devez charger un fichier n'appartenant pas au chemin de la bibliothèque, vous devez fournir son chemin complet.

Remarque : Lorsque vous indiquez un chemin de répertoire, vous devez utiliser une barre oblique (/) ou deux barres obliques inverses (\\) comme séparateur, car une barre oblique inverse unique a une signification particulière dans AutoLISP.

Toute tentative de chargement d'une application déjà chargée génère une erreur. Avant d'utiliser arxload, vous devez, à l'aide de la fonction arx, vérifier quelles sont les applications déjà chargées.

Pour décharger une application avec AutoLISP, utilisez la fonction arxunload. L'exemple suivant décharge l'application myapp.

(arxunload "myapp")

La fonction arxunload permet de supprimer non seulement l'application ObjectARX de la mémoire, mais également les définitions de commande associées à l'application.