theo Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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 ? 1 Citer
DenisHen Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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... Citer 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)
theo Posté(e) le 1 février 2017 Auteur Posté(e) le 1 février 2017 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 Citer
DenisHen Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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... Citer 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)
theo Posté(e) le 1 février 2017 Auteur Posté(e) le 1 février 2017 Ou est ce que je dois placer mon fichier ChargeLisp.lsp pour que ça fonctionne ? Citer
DenisHen Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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"... Citer 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)
theo Posté(e) le 1 février 2017 Auteur Posté(e) le 1 février 2017 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 Citer
(gile) Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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; Citer Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
DenisHen Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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é... ;) Citer 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)
theo Posté(e) le 1 février 2017 Auteur Posté(e) le 1 février 2017 Merci beaucoup c'est tout bon ça marche !!!impeccable Citer
DenisHen Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 Content d'avoir aidé... ;) Citer 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)
theo Posté(e) le 1 février 2017 Auteur Posté(e) le 1 février 2017 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 ;) Citer
DenisHen Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 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 ;) Citer 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)
(gile) Posté(e) le 1 février 2017 Posté(e) le 1 février 2017 Re, As-tu lu attentivement ma réponse et les liens qu'elle contient ? Sinon, le chemin vers le bureau c'est : C:\Users\\DesktopEn LISP tu peux faire:(load (strcat "C:\\Users\\" (getenv "UserName") "\\Desktop\\pic.lsp")) Citer Gilles Chanteau - gileCAD - GitHub Développements sur mesure pour AutoCAD
Messages recommandés