Détection AutoCad / Ouverture de fichiers

Résolu
BOBO CALIMERO Messages postés 22 Date d'inscription vendredi 31 octobre 2003 Statut Membre Dernière intervention 2 novembre 2010 - 24 févr. 2010 à 10:39
BOBO CALIMERO Messages postés 22 Date d'inscription vendredi 31 octobre 2003 Statut Membre Dernière intervention 2 novembre 2010 - 24 févr. 2010 à 14:36
Bonjour à tous,

J'ai cherché, sans succès, un exemple de code qui me permettrait d'ouvrir un fichier AutoCad connu. Dans mon appli, j'utilise actuellement le code suivant :

Dim v_Cmd As Double
Dim DwgName As String

DwgName = "C:\Program Files\AutoCAD Map 3D 2009\acad.exe " & Chr(34) & MonFichier.dwg
v_Cmd = Shell(DwgName, vbMaximizedFocus)

Ce code fonctionne correctement MAIS ouvre autant d'instances d'application AutoCad que de fichiers DWG. Je souhaiterais connaître un code (faisant certainement appel aux fonction GetObject et autres) qui permettrait de détecter si AutoCad est déjà en cours d'execution et d'ouvrir le nouveau fichier DWG souhaité dans l'instance en cours.

A noter que j'utilise une version 2009 Map d'AutoCad.

En vous remerciant d'avance pour les réponse que vous pourriez m'apporter,

Martial

2 réponses

cs_Jack Messages postés 14007 Date d'inscription samedi 29 décembre 2001 Statut Modérateur Dernière intervention 28 août 2015 78
24 févr. 2010 à 11:33
Salut
Si tu double-cliques sur un fichier DWG, est-ce que Autocad s'ouvre ?
Ouvre t-il une nouvelle instance ou utilise t-il l'instance déjà ouverte ?

Si le double-clic ouvre le fichier dans l'instance existante (ce que tu cherches à faire), oriente toi vers l'utilisation de l'API nommée ShellExecute auquel tu ne donneras que le nom du fichier DWG (sans préciser le chemin et le nom de l'application)
Un exemple <dans ce snippet>

Pour l'utilisation des APIs (avec exemples VB6), utilise <ce logiciel gratuit> qui te dira tout sur la majeure partie des APIs

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
3
BOBO CALIMERO Messages postés 22 Date d'inscription vendredi 31 octobre 2003 Statut Membre Dernière intervention 2 novembre 2010
24 févr. 2010 à 14:36
IM-PEC-CABLE ! C'est beau quand ça fonctionne aussi bien et aussi facilement.

Pour info, pour les lecteurs de ce post, mon fichier s'ouvre dans l'instance en cours lorsque je double-clic dessus.

Je n'ai pas encore regardé les API, en revanche, ces snippets sont géniaux.

Merci pour cette réponse simple, claire et rapide.


Martial
3