Aller au contenu

COMMENT LANCER UN SCRIPT DANS UN SCRIPT ?


ahbv

Messages recommandés

Bonjour,

J'utilise souvent des script (pas trop sophistiqués donc de mon niveau) et pour une question de structure et de longueur je souhaiterais savoir comment faire pour de lancer un nouveau script dans le déroulement d'un script (cela marche si on le lance a la fin mais au milieu du programme ou en lançant plusieurs ça ne marche pas)? Connaissez vous une astuce ou faut-il passer par du lisp ?

ex. de ce que je souhaiterais:

script:

zoom et

tilemode 0

effacer tout

 

;;;lancer insertion legende AA

script "insert-legAA.scr"

regntout

tilemode 1

;;; script inserer xref type

script "xref-type.scr"

 

Merci d'avance.

AHG

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

cela marche si on le lance a la fin

 

En effet, cela fonctionne, mais un script qui a été appelé par un autre script NE REND PAS la main au script appelant.

 

Donc tu peux faire des scripts en cascade mais pas itératif: Une fois en bas de la cascade, tu ne peux plus remonter... ;)

 

Pour de l'itératif un autre language est indispensable; lisp ou autre...

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Bonjour,

 

 

 

En effet, cela fonctionne, mais un script qui a été appelé par un autre script NE REND PAS la main au script appelant.

 

Donc tu peux faire des scripts en cascade mais pas itératif: Une fois en bas de la cascade, tu ne peux plus remonter... ;)

 

Pour de l'itératif un autre language est indispensable; lisp ou autre...

Salut et merci pour l'info..

je suis nul en lisp donc si quelqu'un peut m'aider ça serait sympa !!

Lien vers le commentaire
Partager sur d’autres sites

Salut et merci pour l'info..

je suis nul en lisp donc si quelqu'un peut m'aider ça serait sympa !!

Salut

 

Comme tu te débrouilles en script, le lisp n'est pas très loin (pour commencer)

 

Quand tu lances une commande en script, tu as la même chose avec command.

 

Par exemple :

Script --> Traceur N Plan "" PdfCreator N N O (ps le "" = espace ou entrée)

Lisp --> (command "traceur" "N" "Plan" "" "PdfCreator" "N" "N" "O") (ps le "" = entrée)

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Lien vers le commentaire
Partager sur d’autres sites

Salut

 

Comme tu te débrouilles en script, le lisp n'est pas très loin (pour commencer)

 

Quand tu lances une commande en script, tu as la même chose avec command.

 

Par exemple :

Script --> Traceur N Plan "" PdfCreator N N O (ps le "" = espace ou entrée)

Lisp --> (command "traceur" "N" "Plan" "" "PdfCreator" "N" "N" "O") (ps le "" = entrée)

 

@+

Salut Patrick_35,

je te remercie de cette aide succincte et je comprend bien que pour un "dieu" du lisp comme toi c'est facile et le script n'est qu'une succession de commande avec quelques subtilités mais surtout limité par rapport au lisp.. donc pour mon problème si j'ai bien compris je peux faire ceci

(command "script" "chemin+fichier script")

(command "_qsave")

(command "script" "chemin+fichier script2")

etc... xxx script

 

bon je viens d'essayer et cela ne marche pas !!

je ne connais rien de rien en lisp je suis juste un utilisateur de vos conceptions et là je cale désolé mais encore merci d'avoir répondu..

AHG

Lien vers le commentaire
Partager sur d’autres sites

Tu es sur la bonne voie.

Pour tester, tu fais le tout en ligne de commande, histoire de bien valider la syntaxe.

Une fois que c'est ok, on le met en forme dans un fichier texte et pour terminer, on recopie la ligne lisp directement sur la ligne de commande et on regarde le résultat.

Normalement, c'est bon.

 

(command "script" "chemin+fichier script") --> peut-être besoin de la fonction strcat (strcat chemin fichier), ou besoin de doubler les "\". Regarde la structure avec (findfile "acad.exe")

(command "_qsave") --> là, ça devrait fonctionner ;) . Une ligne en lisp de bonne

 

@+

Les Lisps de Patrick

Le but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.

Joseph Joubert, 1754-1824

Lien vers le commentaire
Partager sur d’autres sites

Tu es sur la bonne voie.

Pour tester, tu fais le tout en ligne de commande, histoire de bien valider la syntaxe.

Une fois que c'est ok, on le met en forme dans un fichier texte et pour terminer, on recopie la ligne lisp directement sur la ligne de commande et on regarde le résultat.

Normalement, c'est bon.

 

(command "script" "chemin+fichier script") --> peut-être besoin de la fonction strcat (strcat chemin fichier), ou besoin de doubler les "\". Regarde la structure avec (findfile "acad.exe")

(command "_qsave") --> là, ça devrait fonctionner ;) . Une ligne en lisp de bonne

 

@+

 

merci de passer du temps même pour un débutant en cette belle journée de printemps (ça rime !!)

sinon j'ai essayé tes recommandations mais autocad bloque sur la 2e ligne du 1er script à savoir insérer une xref mais avec un accent dans le chemin (style "Elém" qui devient "Elém" dans ligne de commande d’où le commentaire "introuvable" et arrêt du script). donc le script est bien exécuté mais les commandes sont mal interprétés , zut alors..

je ne peux pas changé les noms des répertoires contenant des lettres accentuées alors comment faire stp ??

encore merci

Lien vers le commentaire
Partager sur d’autres sites

je ne peux pas changé les noms des répertoires contenant des lettres accentuées alors comment faire stp ??

 

Utiliser peut être le format abrégé.

Tu peux obtenir ce format en faisant DIR /X dans le terminal cmd

Généralement pour les noms long il tronque en MAJUSCULE et rajoute un ~+ un entier incrémenté.

 

C'est pour assurer une compatibilité avec l'ancien temps ou les noms de fichiers étaient limités en nombre de caractères. :(rires forts):

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Utiliser peut être le format abrégé.

Tu peux obtenir ce format en faisant DIR /X dans le terminal cmd

Généralement pour les noms long il tronque en MAJUSCULE et rajoute un ~+ un entier incrémenté.

 

C'est pour assurer une compatibilité avec l'ancien temps ou les noms de fichiers étaient limités en nombre de caractères. <img src='http://cadxp.com/public/style_emoticons/<#EMO_DIR#>/laugh.gif' class='bbc_emoticon' alt=':(rires forts):' />

 

Salut BONUSCAD,

merci aussi pour ta participation, pour mon problème ce n'est pas un soucis de longueur de fichier mais de police de caractère accentuée !! par contre lorsque je lance un script par glisser coller ça coince alors que depuis un menu d'autocad (un bouton avec comme ligne de commande "^^script "nomfichier.scr") ça passe !!! va comprendre ??

Lien vers le commentaire
Partager sur d’autres sites

pour mon problème ce n'est pas un soucis de longueur de fichier mais de police de caractère accentuée !!

 

Alors essayer un autre encodage dans ton éditeur: UFT-8, ANSI, ISO Occidental, etc..

Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie. - Confucius

Lien vers le commentaire
Partager sur d’autres sites

Alors essayer un autre encodage dans ton éditeur: UFT-8, ANSI, ISO Occidental, etc..

apparemment ce n'est pas une erreur d'encodage car le même fichier script lancé par un raccourci sur un menu fonctionne (c'est a dire execute correctement les commandes du script).

C'est quand meme incroyable de ne pas pouvoir lancer plusieurs script à cause de "transcription" de noms DOS défectueuse.

 

je vais quand même faire un essai sur des répertoires ne contenant aucun caractère accentué pour voir si les recommandations de "l'excellent" patrick35 fonctionnent !!

merci mille fois à toi Bonuscad

Lien vers le commentaire
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant
×
×
  • 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é