| | |  | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS | | | |  | Smart Engineering Session: CAD-Automation in SOLIDWORKS in Hannover, eine Veranstaltung am 18.08.2026
|
|
Autor
|
Thema: API: Primäres Modul (373 mal gelesen)
|
Stefan Ansgar Böttcher Mitglied Stundent und Hilfskraft in Konstr.Büro

 Beiträge: 62 Registriert: 15.07.2003
|
erstellt am: 10. Mai. 2004 16:15 <-- editieren / zitieren --> Unities abgeben:         
Hiho! Ich hab schon wieder ne API -Frage:  Modulares Programmieren ist ja super toll, deshalb bemühe ich mich auch immer, das zu tun...  Nun hab ich also ein Makro, in dem es mehrere Module gibt. Solange ich das Makro über einen Button (in SolidWorks) aufrufe, gibt es keine Probleme, denn da sag ich ihm ja, welche Prozedur der da starten soll. Wenn ich aber das Makro über den Play-Button (in Solidworks) starte, so scheint der die main-Prozedur nicht zu finden, weshalb das Makro dann nicht ausführbar ist... und das Ganze, obwohl es nur eine main-Prozedur gibt... Kann man denn in der VB-Entwicklungsumgebung eine Prozedur als "primäre" oder Start-Prozedur angeben? tööö Ansgar. Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)

 Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 10. Mai. 2004 21:48 <-- editieren / zitieren --> Unities abgeben:          Nur für Stefan Ansgar Böttcher
Hallo Ansgar, bei mehreren Modulen ist das etwas verzwickt ... über einen Makro-Button kannst du ja wie schon gesehen das Start-Modul und die Startprozedur angeben, deswegen klappt das da ganz gut. Beim einfachen Aufruf sieht die Sache etwas anders aus, ich zitiere mal aus einem alten Thread von 2002 meine Antwort: Zitat: aus Sub main() tut nixDas VBA in SolidWorks startet immer mit der letzten Prozedur, also in deinem Fall mit der prozedur2() Verschieb einfach deine sub main() mit Cut/Paste ans Ende des Moduls und es sollte wieder gehen. Und noch etwas: wenn du mit mehreren Modulen arbeitest, dann wird das noch chaotischer. Dann wird nämlich die letzte Prozedur im zuletzt eingefügten Modul ausgeführt (unabhängig vom Namen) ... und wer merkt sich schon die zeitliche Reihenfolge, in der was eingefügt wurde. Einen kleinen Trick gibt es noch: man sieht mit welcher Funktion SolidWorks versucht zu starten, wenn man das Makro im VBA-Editor aufruft, der Cursor steht dann in der Prozedur, mit der alles anfängt ...
Also im Klartext: es ist vollkommen egal, wie die Startprozedur heißt, anders als z.B. VB oder C ist nicht automatisch eine Prozedur main der Startpunkt  Ciao, Stefan ------------------ Inoffizielle deutsche SolidWorks Hilfeseite http://solidworks.cad.de KLAMM? Was ist KLAMM? Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stefan Ansgar Böttcher Mitglied Stundent und Hilfskraft in Konstr.Büro

 Beiträge: 62 Registriert: 15.07.2003
|
erstellt am: 11. Mai. 2004 17:35 <-- editieren / zitieren --> Unities abgeben:         
|
StefanBerlitz Guter-Geist-Moderator IT Admin (CAx)

 Beiträge: 8756 Registriert: 02.03.2000 SunZu sagt: Analysiere die Vorteile, die du aus meinem Ratschlag ziehst. Dann gliedere deine Kräfte entsprechend und mache dir außergewöhnliche Taktiken zunutze.
|
erstellt am: 11. Mai. 2004 18:26 <-- editieren / zitieren --> Unities abgeben:          Nur für Stefan Ansgar Böttcher
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
 |