Matt666 Posté(e) mercredi à 13:39 Posté(e) mercredi à 13:39 Bonjour à tous, J'espère tout le monde va bien. J'ai créé un lisp qui retourne la liste des imprimantes système par le biais de la commande _-plot, qui permet d'afficher les imprimantes système dans l'historique de l'invite de commande (un bon gros F2 quoi) que j'enregistre pour extraire la liste. Bref. Le problème que le F2 n'est pas très silencieux, et je n'arrive pas à l'empêcher. Auriez-vous une solution autre que de ne passer par une commande ? 🙂 Merci beaucoup ! Matt. "Chacun compte pour un, et nul ne compte pour plus d'un."
Eric Posté(e) mercredi à 13:59 Posté(e) mercredi à 13:59 Bonjour, Ca ne serait pas cela que vous recherchez ? https://help.autodesk.com/view/ACD/2026/FRA/?guid=GUID-E7599129-5A3B-4121-A0C3-A625CA96E55B Eric est formateur, revendeur sur AutoCAD LT, DraftSight, ZWCAD, SketchUp et PDF2CAD
Matt666 Posté(e) hier à 09:28 Auteur Posté(e) hier à 09:28 Bonjour Eric, merci pour votre réponse. Nope ça ne change rien. C'est vrai que j'aurais dû noter que j'avais déjà testé. Voici le code, si vous voulez vous faire une idée. Pour info je suis sur BricsCad. ;; retourne la liste des imprimantes système ;; Voir pour empêcher l'affichage de la fenêtre d'historique de commande (defun printerList ( / qaflags f pos line l ) (setvar 'cmdecho 0) (setvar 'logfilemode 1) ;Réinitialiser le .log (setq f (open (getvar 'LogFileName) "w")) (write-line "" f) (close f) ;écrire la liste dans l'historique de commande (command "_LOGFILEON") (setvar 'qaflags 2) (setvar 'cmdecho 1) (command "_-plot" "_y" "" "?" nil) (setvar 'cmdecho 0) (setvar 'qaflags 0) (command "_LOGFILEOFF") (setq f (open (getvar 'LogFileName) "R")) (while (setq line (read-line f)) (while (setq pos (vl-string-search "\"" line nil)) (setq line (vl-string-subst "" "\"" line pos)) ) (if (eq (substr line 1 2) " ") (setq l (cons (vl-string-subst "" ".pc3" (vl-string-subst "" " " line)) l)) ) ) (close f) (setvar 'logfilemode 0) (setvar 'cmdecho 1) l ) "Chacun compte pour un, et nul ne compte pour plus d'un."
SF.Designer Posté(e) hier à 12:07 Posté(e) hier à 12:07 Petite solution en fin de fonction : ; Fermer Fenetre Texte (defun CloseWindowText () (textscr) ; Basculer sur fenêtre de texte (vlax-invoke-method (vlax-get-or-create-object "WScript.Shell") "SendKeys" "%{F4}")) ; Fermer fenêtre de texte
Fraid Posté(e) hier à 13:19 Posté(e) hier à 13:19 Bonjour, Je ne sait pas comment c'est sur BricsCad, mais sur Autocad c'est plutôt. (vlax-invoke-method (vlax-get-or-create-object "WScript.Shell") "SendKeys" "{F2}") Cdt https://github.com/Fraiddd
Matt666 Posté(e) hier à 13:26 Auteur Posté(e) hier à 13:26 Merci SF.Designer, ça fonctionne losqu'on a un écran (la touche est F2). Pour deux écrans, c'est plus compliqué haha. Apparemment F2 ne bascule pas si 2écrans ou plus. Les fantaisies de BriscsCad. Sinon j'ai trouvé un code purement activeX, pour celleux que ça intéresse : (vlax-safearray->list (vlax-variant-value (vla-GetPlotDeviceNames (vla-Get-ActiveLayout (vla-get-ActiveDocument (vlax-get-Acad-object) ) ) ) ) ) PS : Tout à fait, Fraid, c'est la même chose sur AutoCAD. "Chacun compte pour un, et nul ne compte pour plus d'un."
Patrick Emin Posté(e) il y a 23 heures Posté(e) il y a 23 heures Bonjour, vous avez essayé Nomutt? https://help.autodesk.com/view/ACD/2026/FRA/?guid=GUID-9289326E-DEE9-40E7-839C-A4B031A29B2A CAO et NTIC Dessein-Tech
Matt666 Posté(e) il y a 23 heures Auteur Posté(e) il y a 23 heures Bonjour Patrick, et merci pour votre réponse. Non pas essayé mais le fonctionnement de cette routine est basé sur l'affichage des imprimantes disponibles dans l'historique depuis la commande _-plot. Nomutt supprime cet affichage. "Chacun compte pour un, et nul ne compte pour plus d'un."
Patrick Emin Posté(e) il y a 22 heures Posté(e) il y a 22 heures OK dans ce cas-là ne vous est-il pas possible de lancer Nomutt avant les lignes que vous ne voulez pas voir s'afficher et de la remettre à sa valeur précédente ensuite ? CAO et NTIC Dessein-Tech
Messages recommandés
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 compteSe connecter
Vous avez déjà un compte ? Connectez-vous ici.
Connectez-vous maintenant