edrawing API GetObject

bonjour


Pour ouvrir un fichier dans SolidWorks depuis une macro , j'utilise


Dim swApp As SldWorks.SldWorks

Set swApp = GetObject(, "SldWorks.Application")   ' pour récupérer le SW déjà ouvert

ou encore

Set swApp = CreateObject("SldWorks.Application")  ' pour démarrer SW

Je voudrai faire la même chose avec eDrawing

Problème , je n'ai pas trouvé de GetObject pour eDrawing

j'ai bien vu que dans mon projet VBA , je peux ajouter comme "References"

Library EModelView
    C:\Program Files\SOLIDWORKS Corp\eDrawings\EModelView.dll
    EModelView 2020 Type Library

j'ai essayé sans succès

Set EModelViewApp = CreateObject("EModelView.Application")

mais cela ne fonctionne pas :-(

( j'ai installé SW 2020 / eDrawing 2020 )
 

Bonjour,

Si c'est juste pour ouvrir un fichier dans eDrawings :

Dim RetVal As Boolean
Dim App As String
Dim Fichier As String

Sub main()
    App = "C:\Program Files\SOLIDWORKS Corp\eDrawings\eDrawings.exe"
    Fichier = "C:\Users\xxx\Desktop\monFichier.dxf"
    RetVal = Shell(App & " " & Fichier, 1)
End Sub

Sans oublier de mettre "Microsoft Shell Controls And Automation" en référence.

Cordialement,

bonjour,

c'est comme cela que je fais actuellement,

mais le problème , c est de redémarrer une application eDrawing pour chaque fichier .....

je voulais trouver mieux en utilisant GetObject  CreateObject .....

Regarde cet exemple pour sauvegarder un Sldprt en pdf à l'aide de l'API eDrawing:

https://www.codestack.net/edrawings-api/output/print-to-pdf/

La structure est différente de l'API Solidworks mais ca fonctionne bien. Je l'utilise pour convertir les Sldprt en edrawing.