Xavv
6 februari 2020 om 13:37
1
Hallo
Om een bestand in SolidWorks te openen vanaf een macro, gebruik ik
Dim swApp als SldWorks.SldWorks
Stel swApp = GetObject(, "SldWorks.Application") ' in om de reeds geopende SW op te halen
of
Stel swApp = CreateObject("SldWorks.Application") ' in om SW te starten
Ik zou graag hetzelfde willen doen met eDrawing
Probleem, ik kon geen GetObject vinden voor eDrawing
Ik zag dat ik in mijn VBA-project kan toevoegen als "Referenties"
Bibliotheek EModelView C:\Program Files\SOLIDWORKS Corp\eDrawings\EModelView.dll EModelView 2020 Type Bibliotheek
Ik heb het zonder succes geprobeerd
Stel EModelViewApp = CreateObject ("EModelView.Application") in
maar het werkt niet :-(
(Ik heb SW 2020 / eDrawing 2020 geïnstalleerd)
Hallo
Als het alleen is om een bestand in eDrawings te openen:
Dim RetVal als Booleaanse Dim app als string Bestand dimmen als tekenreeks
Sub hoofd() App = "C:\Program Files\SOLIDWORKS Corp\eDrawings\eDrawings.exe" Bestand = "C:\Gebruikers\xxx\Desktop\myFile.dxf" RetVal = Shell(App &" " & Bestand, 1) Einde Sub
Vergeet niet om "Microsoft Shell Controls And Automation" als referentie te vermelden.
Vriendelijke groeten
Xavv
7 februari 2020 om 14:40
3
Hallo
Zo doe ik het nu,
maar het probleem is om voor elk bestand een eDrawing-applicatie opnieuw op te starten.....
Ik wilde een betere manier vinden om GetObject CreateObject .....
Bekijk dit voorbeeld om een Sldprt op te slaan als een pdf met behulp van de eDrawing API:
https://www.codestack.net/edrawings-api/output/print-to-pdf/
De structuur is anders dan de Solidworks API, maar het werkt goed. Ik gebruik het om Sldprt naar edrawing te converteren.