Message 1 sur 12
- Marquer comme nouveau
- Marquer
- S'abonner
- Sourdine
- S'abonner au fil RSS
- Lien permanent
- Imprimer
- Signaler
Bonjour
Petite question:
Le lisp movbak ne semble plus fonctionner sur les dernière versions autocad. Pourtant, aucun message d'erreur.
Quelqu'un a réussi a corriger le problème?
Merci
Pour mémoire, le lisp fonctionne en 2 parties:
Le lisp en lui même:
; Réacteur
(defun patrick:bouger_bak(rea dwg / anc des fso nom rep tot)
(setq des (cadr dwg)
rep (strcat (vl-filename-directory des) "/bak")
nom (strcat (vl-filename-base des) ".bak")
fso (vlax-create-object "Scripting.FileSystemObject")
)
(or (findfile rep)
(vlax-invoke fso 'CreateFolder rep)
)
(and (setq tot (findfile (strcat (vl-filename-directory des) "/" nom)))
(setq anc (findfile (strcat rep "/" (vl-filename-base des) ".bak")))
(vl-file-delete anc)
)
(and tot
(vlax-invoke-method fso 'MoveFile tot (strcat rep "/"))
)
(vlax-release-object fso)
(princ)
)
;Activer le réacteur
(defun c:mbak()
(if patrick:reacteur_bak
(princ "\nLe réacteur est déjà actif.")
(setq patrick:reacteur_bak (vlr-dwg-reactor nil (list (cons :vlr-savecomplete (function patrick:bouger_bak)))))
)
(princ)
)
; Désactiver le réacteur
(defun c:rbak()
(if patrick:reacteur_bak
(progn
(vlr-remove patrick:reacteur_bak)
(setq patrick:reacteur_bak nil)
)
(princ "\nLe réacteur est déjà désactivé.")
)
(princ)
)
Et un 2ème pour le lancer :
(load"D:/movbak.lsp")
(c:mbak) ;deplacer bak
Résolu ! Accéder à la solution.