zebulon_ Posté(e) le 12 décembre 2006 Posté(e) le 12 décembre 2006 Bonjour, il y a déjà qqe temps, on s'était posé la question de savoir comment ouvrir un pdf ou un dwf à partir du lisp ici. J'ai trouvé un petit truc qui me semble beaucoup plus sympa. C'est mieux que strartapp, parce qu'il n'y a pas besoin de lancer l'application, l'extension du fichier suffit. Et c'est bien sûr mieux qu'un (command "_shell") qui ouvre un antique fenêtre MS-DOS (je suis nostalgique, mais quand même ...) (defun do_open_filename (fileName / shell) (if FileName (progn (setq shell (vla-getinterfaceobject (vlax-get-acad-object) "Shell.Application" ) ) (vlax-invoke-method shell 'Open filename) (vlax-release-object shell) ) ) ) (defun c:_opendwf () (setq FileName (getfiled "\nSélectionner un fichier dwf à ouvrir : " "" "dwf" 16)) (do_open_filename FileName) ) En plus, si filename a une extension qui n'est pas définie, l'application demande avec quel logiciel elle doit ouvrir le fichier. J'ai essayé avec un fichier pdf, un fichier dwf et un fichier doc : ça marche à tous les coups. On en a peut être déjà parlé de ce sujet ici, alors excusez moi d'être redondant. Amicalement Zebulon_ C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme) C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)
Patrick_35 Posté(e) le 12 décembre 2006 Posté(e) le 12 décembre 2006 AH, ca fait plaisir de voir quelqu'un d'autre tater des activex Juste poutr info, ta routine do_open_filename peut aussi s'écrire de cette manière (defun do_open_filename (fileName / shell) (if FileName (progn (setq shell (vlax-create-object "Shell.Application")) (vlax-invoke shell 'open filename) (vlax-release-object shell) ) ) ) @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
Patrick_35 Posté(e) le 12 décembre 2006 Posté(e) le 12 décembre 2006 Et tant que j'y suis. Si tu veux jouer avec "Shell.Application" @+ Les Lisps de PatrickLe but n'est pas toujours placé pour être atteint, mais pour servir de point de mire.Joseph Joubert, 1754-1824
zebulon_ Posté(e) le 13 décembre 2006 Auteur Posté(e) le 13 décembre 2006 AH, ca fait plaisir de voir quelqu'un d'autre tater des activex ça fait plaisir aussi quand on découvre l'étendue de ce qui est disponible. Et ça fait surtout plaisir de pouvoir réutiliser une fonctionnalité empaquetée programmée par quelqu'un d'autre. De toute façon, je ne saurais pas programmer ces fonctionnalités, alors c'est une mine que de pouvoir disposer de librairies toutes faites. Encore faut-il s'y retrouver ... Amicalement Zebulon_ PS : Je me sers de cette méthode pour ouvrir un fichier pdf associé à un bouton aide d'une boîte de dialogue. [Edité le 13/12/2006 par zebulon_] C'est au pied du mur que l'on reconnaît le maçon ! (Anonyme) C’est en restant au pied du mur qu’on ne voit que le mur (Anonyme aussi)
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