| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
| |
| SPS |
Autor
|
Thema: exe über VBA aufrufen (10196 mal gelesen)
|
Rapti Mitglied Dipl. Ing. HTL Maschinenbau
Beiträge: 691 Registriert: 13.02.2003 SolidWorks 2019 Premium
|
erstellt am: 27. Feb. 2006 15:13 <-- editieren / zitieren --> Unities abgeben:
Hallo Leute, habe ein exe-File, welches ich in SolidWorks über ein Button aufrufen will. Dazu brauche ich jetzt ein kleines VB-Programm, welches dieses EXE in SolidWorks aufruft. Kann mir da jemand ein Tip geben. Bin völliger VB-Unwissender. Gruss Rapti Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
HenryV Mitglied Konstrukteur, Engineering
Beiträge: 813 Registriert: 18.05.2005 SolidWorks 2022 x64 SP5.0 Dell Precision 5820 Intel Xeon W-2125 4x4GHz NVIDIA Quadro P2000 5GB 32GB RAM 2x Dell U2412M, 24" TFT Windows 10 Enterprise x64 22H2 Microsoft 365 E5 Microsoft Visual Studio Enterprise 2022
|
erstellt am: 27. Feb. 2006 15:36 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
|
u.clemens Mitglied Konstrukteur
Beiträge: 964 Registriert: 04.07.2000 engineer's law o cheap o fast o good check only two !
|
erstellt am: 27. Feb. 2006 15:39 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
Sub main() Dim pfad As String pfad = CurDir ChDrive "C:" ChDir "C:\Programme\SolidWorks\Tools\" MyAppID = Shell("C:\Programme\SolidWorks\Tools\Demo.exe", 1) ChDir pfad End Sub ------------------ mfg uc Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 27. Feb. 2006 15:39 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
|
Rapti Mitglied Dipl. Ing. HTL Maschinenbau
Beiträge: 691 Registriert: 13.02.2003 SolidWorks 2019 Premium
|
erstellt am: 27. Feb. 2006 16:55 <-- editieren / zitieren --> Unities abgeben:
|
Rapti Mitglied Dipl. Ing. HTL Maschinenbau
Beiträge: 691 Registriert: 13.02.2003 SolidWorks 2019 Premium
|
erstellt am: 28. Feb. 2006 14:24 <-- editieren / zitieren --> Unities abgeben:
Hallo Leute, ich nochmal. Was ich jetzt noch brauche ist ein dynamischer Pfad, in dem er das exe sucht. Er sollte immer den Pfad dort eintragen, der in den SolidWorks-Dateipositionen unter Macros angegeben ist (dort ist das exe zu suchen). Es ist bei jedem PC nicht zwangsmässig das gleiche Verzeichnis ! Geht das ? Gruss Rapti Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Lutz Federbusch Ehrenmitglied V.I.P. h.c. Dipl.-Ing. Maschinenbau
Beiträge: 3094 Registriert: 03.12.2001 alle SW seit 97+ AutoCAD2016-2022 ERP ProAlpha + CA-Link Intel Core i7-7820K 32GB Win10x64 Quadro K5000 SpacePilot
|
erstellt am: 28. Feb. 2006 15:02 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
|
VBSpawn Mitglied Programmierer
Beiträge: 514 Registriert: 23.08.2005 Sorgfältige Planung ersetzt niemals pures Glück.
|
erstellt am: 28. Feb. 2006 15:37 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
Hi, also der einfachste Weg der mir einfällt: 1. Erzeuge deine swp Datei mit folgendem Code Dim swApp As SldWorks.SldWorks Dim myAppID As Variant Sub main() Set swApp = CreateObject("SldWorks.Application") Dim mPath As String Dim rPos As Long rPos = InStrRev(swApp.GetCurrentMacroPathName, "\", , vbTextCompare) mPath = Left$(swApp.GetCurrentMacroPathName, rPos) myAppID = Shell(mPath & "meine.exe", 1) ''Call AppActivate(myAppID) End Sub 2. Klicke in SWX auf Extras, Anpassen, Tabreiter Befehle , Kategorie Marko und ziehe das Männchen auf deine lieblings Toolbar. Diesem kannst du nun eine swp Datei zuweisen (siehe oben). 3. Fertig - Du musst auf jeden PC den Button erzeugen. - Solange du die swp und die exe in einem Verz liegen hast funzt das.. Gruß Micha ------------------ http://classicvb.org/petition/ Zitat: Interpunktion und Orthographie des Postings sind frei erfunden. Eine Übereinstimmung mit aktuellen oder ehemaligen Regeln wäre rein zufällig und ist nicht beabsichtigt.
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Projekt10 Mitglied
Beiträge: 6 Registriert: 05.02.2010 Solid Works 2020 SP 3.0
|
erstellt am: 14. Jan. 2011 08:22 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
Hallo allerseits, Ich habe erfolglos versucht das Makro einzubinden. Ich finde nichteinmal 'myAppID' in der API-Hilfe. SolidWorks 2011 x64 SP1.0 Gibt es noch einen anderen Weg? Oder hat sich in der 2011er Version etwas geändert? Gruß Ronny
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Projekt10 Mitglied
Beiträge: 6 Registriert: 05.02.2010 Solid Works 2020 SP 3.0
|
erstellt am: 14. Jan. 2011 08:32 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
Hallo zusammen, Ich habe bisher erfolglos versucht das Makro einzubinden. Bedauerlicherweise finde ich 'MyAppID' auch nicht in der API-Hilfe. Fehlermeldung: 'Fehler beim Kompilieren. Projekt oder Bibliothek nicht gefunden.' SolidWorks 2011 x64 SP1.0 Gibt es noch einen anderen Weg? Oder liegt es daran, daß ich auf ein Netzlaufwerk verweisen will?
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Projekt10 Mitglied
Beiträge: 6 Registriert: 05.02.2010 Solid Works 2020 SP 3.0
|
erstellt am: 14. Jan. 2011 08:51 <-- editieren / zitieren --> Unities abgeben: Nur für Rapti
Hallo Zusammen, Bisher habe ich es noch nicht geschafft dieses Makro einzubinden. Bedauerlicherweise gibt mir meine API-Hilfe auch keine weiteren Auskünfte über 'myAppID' Fehlermeldung des Compilers: 'Projekt oder Bibliothek nicht gefunden.' Version: Solid Works 2011 x64 SP1.0 Liegt es an der neuen Version oder evtl. daran, daß ich versuche auf ein Netzlaufwerk zu verweisen? Der Code: Sub main() MyAppID = Shell("H:\Versuche\1\SWFinish_64.exe", 1) End Sub Danke schonmal Gruß Ronny
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |