| | |
 | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS |
|
Autor
|
Thema: API: Automatischer Aufbau von einer Geräteträgerbaugruppe (992 mal gelesen)
|
INKN Mitglied Consulant/Softwareentwickler
 
 Beiträge: 277 Registriert: 22.08.2001 SolidWorks 2015-2018 Lino 3D layout 2.2<P>Visual Studio 2017
|
erstellt am: 18. Sep. 2001 10:20 <-- editieren / zitieren --> Unities abgeben:         
Hi, ich bin gerade dabei einen Prototyp für den automatischen Aufbau eines Geräteträgers zu schreiben C++ (COM). 1. Ich habe von einem Basisblech eine Kopie erzeugt mit SW Explorer. 2. per Programm habe ich ein neues Assembly begonnen, Namen gegeben und gespeichert 3. die Kopie des Basisblech geöffnet und dann als Komponente dem Assy hinzugefügt. Dabei ist mir folgendes aufgefallen, daß der Komponentenname im FeatureView falsch angezeigt (Name des Orginal Basisbleches) und wenn man dann mit RMB die Komponente öffnet wird das Orginal Basisblech geöffnet. Hat jemand schon mal dieses Problem gehabt? Und gelöst? Meine Vermutung ist, daß intern nochmal eine Name abgelegt der von der API benutzt wird, denn wenn mal das ganze händisch macht, kommt nämlich der richtige Namen. Besten Dank im voraus! Gruß INKN
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Martin Staffenski Mitglied Consultant PDM

 Beiträge: 39 Registriert: 17.08.2001 ...das einzige, was wir brauchen um gute Philosophen zu werden, ist die Fähigkeit uns zu wundern...
|
erstellt am: 18. Sep. 2001 10:51 <-- editieren / zitieren --> Unities abgeben:          Nur für INKN
Hallo INKN, bist Du sicher COM zu programmieren ? SolidWorks ist da etwas zickig. Selbst wenn man C++ programmiert, landet man meistens auf der IDispatch Schnittstelle, mit der Folge, dass man die API Befehle nicht für COM verwenden kann, sondern die für OLE Automation verwenden muss.  ________________________ Martin Staffenski CAD/PDM System-Support SPI GmbH
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
INKN Mitglied Consulant/Softwareentwickler
 
 Beiträge: 277 Registriert: 22.08.2001
|
erstellt am: 18. Sep. 2001 11:10 <-- editieren / zitieren --> Unities abgeben:         
Hi Martin, ich bin gerade am Testen der API Möglichkeiten und für das was ich alles vorhabe war eigentlich nur COM Programmierung die einzige Möglichkeit. Ich wollte eine volle Integration in die Oberfläche und das ist nur mit COM möglich. Ich wollte mich nicht jetzt schon einschränken! Gibt es entscheidende Gründe gegen die Nutzung von COM? Gruß INKN
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Martin Staffenski Mitglied Consultant PDM

 Beiträge: 39 Registriert: 17.08.2001 ...das einzige, was wir brauchen um gute Philosophen zu werden, ist die Fähigkeit uns zu wundern...
|
erstellt am: 18. Sep. 2001 11:22 <-- editieren / zitieren --> Unities abgeben:          Nur für INKN
Hi INKN, du hast mich vielleicht falsch verstanden. Schau Dir mal die API am Anfang genau an. Dort steht (sinngemäß) dass bei externen Programmen und der C++ Programmierung die OLE Automation Schnittstelle Anwendung findet. Das heißt, Du kannst nur COM Programmieren, wenn Du eine DLL erstellst und diese in der SolidWorks Umgebung ausgeführt wird. Um direkt COM für externe Anwendungen zu programmieren, müsstest Du erhebliche Änderungen in den Header Dateien von SolidWorks vornehmen. Da unsere Firma selbst programmiert, darf ich Dir leider nicht sagen, welche Änderungen durchgeführt werden müssen (Firmengeheimnis ). _____________________ Martin Staffenski CAD/PDM System-Support SPI GmbH
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
INKN Mitglied Consulant/Softwareentwickler
 
 Beiträge: 277 Registriert: 22.08.2001
|
erstellt am: 18. Sep. 2001 11:38 <-- editieren / zitieren --> Unities abgeben:         
|