Aller au contenu

Charger un fichier LISP avec une commande dans un menu


Messages recommandés

Posté(e)

Bonjour,

 

j'ai un projet avec plusieurs petits applicatifs LISP. J'ai créé un menu avec des commandes qui me permettent de lancer ces applicatifs LISP.

Je dois également créer une commande qui charge automatiquement mes fichier LISP.

J'ai créer cette commande seulement quand je rentre appload dans la macro le menu s'ouvre mais je dois aller sélectionner mes programmes à charger. Mon but est que cette sélection ce fasse automatiquement (je ne veux pas avoir à sélectionner mes fichiers manuellement)...

 

Mon menu s'appelle chantier et la commande que je veux créer s'appelle Chargement fichier. Je joint une photo de la situation.

 

Qqn serait faire cela ?

  • Upvote 1
Posté(e)

Dans la fenêtre "_AppLoad", il y a, en bas à droite, un bouton "Contenu"...

 

Tu cliques dessus et tu places là-dedans les LISP qui seront chargés au démarrage d'AutoCAD ou au chargement de chaque dessin.

 

Si j'ai bien compris ta demande...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Je ne veux pas que ça soit charger tout le temps... je veux que mes fichiers soient charger quand je clique sur la commande "chargement fichier" de mon menu chantier

Posté(e)

Ok.

 

Tu places donc "^C^C(load "Fichier1.lsp");(load "Fichier2.lsp");(load "Fichier3.lsp");" dans un bouton...

 

Par contre, si tu as beaucoup de fichiers, tu places dans un fichier "ChargeLisp.lsp" :

(load "Fichier1.lsp");

(load "Fichier2.lsp");

(load "Fichier3.lsp")

 

Et tu ne places plus que "^C^C(load "ChargeLisp.lsp);" dans le bouton...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

De préférence dans un répertoire connu d'AutoCAD. Tu peux ajouter ce répertoire dans AutoCAD...

 

Commande "Options", onglet "Fichiers", "Chemin de recherche de fichiers de support en cours d'utilisation"...

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

mon fichier s'appelle pic.lsp

 

Quand je lance ma commande j'obtient :Commande: (load "pic.lsp") ; erreur: La commande CHARGER n'a pas abouti: "pic.lsp"

 

Esst ce qu'il faut que je rajoute le chemin ? si oui comment dois-je le faire ?

 

merci d'avance

Posté(e)

Ou est ce que je dois placer mon fichier ChargeLisp.lsp pour que ça fonctionne ?

Pour que (load "ChargeLisp.lsp") fonctionne il faut que le fichier soit dans un répertoire des chemins de recherche de fichiers de support d'AutoCAD. Sinon, il faut mettre le chemin complet du fichier LISP.

 

Je rappelle l'existence de ce sujet qui couvre presque exhaustivement les différentes façons de charger un LISP.

 

Je rappelle aussi que la fonction LISP autoload qui permet de ne charger un fichier LISP qu'au premier appel d'une des commande qu'il définit.

 

Exemple :

- le fichier Fichier1.lsp définit les commandes CMD1 et CMD2 avec (defun c:cmd1 ...) et (defun c:cmd2 ...) ;

- le fichier Fichier2.lsp définit la commande CMD3 ;

- dans un fichier de chargement automatique (acaddoc.lsp, acad.mnl ou tout autre fichier .mnl de même nom qu'un cuix partiel), on écrit :

(autoload "Fichier1.lsp" '("CMD1" "CMD2"))
(autoload "Fichier2.lsp" '("CMD3"))

Ainsi, Fichier1.lsp ne sera chargé dans le dessin que quand l'utilisateur appellera CMD1 ou CMD2, idem pour Fichier2.lsp. Cet appel peut se faire via une macro qui n'a alors plus à se préoccuper du chargement des fichiers : ^C^CCMD1;

Gilles Chanteau - gileCAD - GitHub
Développements sur mesure pour AutoCAD

Posté(e)

Oui, tu peux ajouter ton chemin, avec la commande "Options", onglet "Fichiers", première ligne "Chemin de recherche de fichiers de support en cours d'utilisation"... "Ajouter" puis "Parcourir"...

 

Oops, je n'avais pas vu que Maître (gile) m'avait grillé... ;)

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Content d'avoir aidé... ;)

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Posté(e)

Ca marche parfait sur mon pc comme jai rentrer le nouveau chemin de lecture seulement ce projet je dois le rendre à un prof donc il ne doit pas reparamétrer les chemins ducoup il faudrait que je que je renseigne directement le chemin dans la commande macro. Si j'explique à mon professeur de poser le dossier qui contient mon fichier lisp sur son bureau et que j'indique le chemin dans la macro est ce que ca marchera ?

 

J'ai essayé ^C^C(load:"M:\Bureau\Fichiers LSP\pic.lsp")

Seulement quand je lance ça le fichier ne se charge pas...

Pouvez vous m'aider ?

Merci ;)

Posté(e)

Re.

 

Alors déjà, ton prof devrait avoir un répertoire "public", histoire de, justement, corriger les travaux de ses élèves. Et il devrait être déclaré dans les fichiers connus d'AutoCAD?

 

Puis, le chemin du bureau change dans les différentes versions de Windows...

 

En outre, le bureau devrait se situer dans le disque C et il me semble que les "\\" sont nécessaires :

"^C^C(load "c:\\Bureau\\Fichier.lsp");"

 

Mais je pense que le répertoire du dessin en cour est désigné comme répertoire connu d'AutoCAD (de confiance ou pas, ça, je ne sais pas)... Donc, si c'est vrai, tu places tes LISP dans le même répertoire que ton DWG...

 

Enfin d'autres, comme Maître (gile), t'expliqueront ça mieux que moi, car là, on doit avoir à peu près le même niveau ;)

Windows 11 / AutoCAD 2024

Sur terre, il y a 10 types de personnes, celles qui comptent en binaire et les autres (developpez.net).
Davantage d'avantages, avantagent davantage (Bobby Lapointe).
La connaissance s'accroît quand on la partage (Socrate).
Tant va la cruche à l'eau que l'habit n'amasse pas mousse avant de l'avoir tué. (Moi)

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer. Politique de confidentialité