Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  API: ActiveX und Visual Basic .Net

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für SOLIDWORKS
  
SIMULIA Regional User Meeting 2026, eine Veranstaltung am 17.06.2026
Autor Thema:  API: ActiveX und Visual Basic .Net (2139 mal gelesen)
Carlhainz
Mitglied
Student


Sehen Sie sich das Profil von Carlhainz an!   Senden Sie eine Private Message an Carlhainz  Schreiben Sie einen Gästebucheintrag für Carlhainz

Beiträge: 12
Registriert: 18.07.2004

erstellt am: 21. Jul. 2004 14:56    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,
ich versuch zur Zeit ein Add-In für SW zu schreiben, dass einen zusätzlichen TreeView im FeatureManager anzeigen soll.
Ich habe angefangen das Add-In mit Hilfe der APIProgrammier- und Anwendungsschnittstelle (Application Programming Interface)-Doku von SW und etwas Glück ;-) mit Visual Studio 6.0 hinzubekommen.
Nun soll ich das Projekt aber mit .Net fortsetzen und da beginnen meine Probleme.
Ich habe es bis jetzt noch nicht geschafft das Add-In bei SW anzumelden.
Mein nächstes Problem ist das ActiveX-Steuerelement (die oben erwähnte TreeView). Ich weiß gar nicht, ob man ActiveX-Steuerelemente mit .Net programmieren kann, bzw. ob es eine Möglichkeit gibt .Net-Steuerelemente über ein Add-In in SW einzubinden bzw. im FeatureManager anzeigen zu lassen.
Für jede noch so kleine Hilfe wäre ich sehr dankbar.
Grüße, Benni

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

StefanBerlitz
Guter-Geist-Moderator
IT Admin (CAx)



Sehen Sie sich das Profil von StefanBerlitz an!   Senden Sie eine Private Message an StefanBerlitz  Schreiben Sie einen Gästebucheintrag für StefanBerlitz

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: 21. Jul. 2004 16:23    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Carlhainz 10 Unities + Antwort hilfreich

Hallo Benni,

und herzlich willkommen im Forum  

Ich kann dir leider nicht direkt helfen, da ich mich bisher mit SolidWorks-API unter VB.NET noch gar nicht beschäftigt habe.

Vielleicht kannst du auf den API-Beispielseiten von SolidWorks etwas finden ( http://www.solidworks.com/pages/services/APIDownloads.html  ), da gibt es was zu FM-Tabs per ActiveX und auch zu .NET, aber ich weiß nicht, ob auch für die Kombination ...

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

Carlhainz
Mitglied
Student


Sehen Sie sich das Profil von Carlhainz an!   Senden Sie eine Private Message an Carlhainz  Schreiben Sie einen Gästebucheintrag für Carlhainz

Beiträge: 12
Registriert: 18.07.2004

erstellt am: 21. Jul. 2004 16:41    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Vielen Dank für die Antwort,
leider habe ich mich schon durch die Beispiel gearbeitet. Die meisten basieren aber auf Visual Basic 6.0 Code und können so gut wie gar nicht auf .Net übertragen werden.
Trotz eines Beispielcode habe ich es noch nicht geschafft, das .Net Add-In in SolidWorks anzumelden.
Wäre diese Hürde überwunden wäre der großte Brocken aus der Welt geschafft.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

PASCAM
Mitglied
Diplom Informatiker


Sehen Sie sich das Profil von PASCAM an!   Senden Sie eine Private Message an PASCAM  Schreiben Sie einen Gästebucheintrag für PASCAM

Beiträge: 67
Registriert: 25.11.2002

erstellt am: 22. Jul. 2004 09:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Carlhainz 10 Unities + Antwort hilfreich


SWNet.zip

 
Hallo Carlheinz,

Ja, das mit dem .NET ist so eine Sache. Du musst einfach ein paar Kleinigkeiten beachten:
Ich habe mal ein kleines Beispiel beigefuegt. Entscheidend ist, daß die Methoden, die SolidWorks aufrufen soll (also die Implementierung des Inertfaces) über COM veröffentlicht werden. Und daß die Dll registriert ist.

------------------
PASCAM Ralph Müller
Softwareentwicklung

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Carlhainz
Mitglied
Student


Sehen Sie sich das Profil von Carlhainz an!   Senden Sie eine Private Message an Carlhainz  Schreiben Sie einen Gästebucheintrag für Carlhainz

Beiträge: 12
Registriert: 18.07.2004

erstellt am: 22. Jul. 2004 20:20    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Wunderbar! Vielen Dank Pascam,
ich kann es leider heute noch nicht ausprobieren. Aber auf jeden Fall enthält Dein Codebeispiel genau die Fragen, die noch offen waren.
Ich schreibe Dir morgen, ob meine Probleme damit gelöst sind.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

stucki
Mitglied
Ingenieur


Sehen Sie sich das Profil von stucki an!   Senden Sie eine Private Message an stucki  Schreiben Sie einen Gästebucheintrag für stucki

Beiträge: 73
Registriert: 30.04.2004

erstellt am: 23. Jul. 2004 10:45    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Carlhainz 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Carlhainz:
Trotz eines Beispielcode habe ich es noch nicht geschafft, das .Net Add-In in SolidWorks anzumelden.
Wäre diese Hürde überwunden wäre der großte Brocken aus der Welt geschafft.

Hallo Carlhainz
unter  http://ww3.cad.de/foren/ubb/Forum2/HTML/005449.shtml
habe ich beschrieben was für vorkehrungen getroffen werden müssen um das Add-In in .NET zu erstellen.

gruss tom

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Carlhainz
Mitglied
Student


Sehen Sie sich das Profil von Carlhainz an!   Senden Sie eine Private Message an Carlhainz  Schreiben Sie einen Gästebucheintrag für Carlhainz

Beiträge: 12
Registriert: 18.07.2004

erstellt am: 23. Jul. 2004 14:21    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Ich dachte das beigelegte .zip-File bezieht sich nur auf die Entwicklung von SW Add-Ins mit C#.

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Carlhainz
Mitglied
Student


Sehen Sie sich das Profil von Carlhainz an!   Senden Sie eine Private Message an Carlhainz  Schreiben Sie einen Gästebucheintrag für Carlhainz

Beiträge: 12
Registriert: 18.07.2004

erstellt am: 23. Jul. 2004 15:11    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

@PASCAM
Ich habe Dein Template benutzt und kompiliert, sowie mit "Regasm MyAdd.dll \codebase" registriert und erhalte immer noch die Meldung von SolidWorks "Zusatzanwendung konnte nicht initialisiert werden".

@stucki
Ich hab den SwAddIn Wizard entsprechend modifiziert, dh. die Zeile geändert und siehe da VS .NET konnte das Projekt erstellen. Nur beim Kompilieren und anschließendem testen kam. Die selbe Fehlermeldung von SolidWorks: "Zusatzanwendung konnte nicht initialisiert werden".

Langsam erinnert mich das schon an "...und täglich grüßt das Murmeltier.".
Schade ist auch, dass der Support von SolidWorks mehr als schlecht ist. Der einzige eintrag auf der Supportseite, den ich bis jetzt zum Thema Visual Basic .NET gefunden habe war der Hinweis, das man seine Bibliotheken registrieren muss. Naja, aber das hilft wohl auch nicht wirklich weiter.

Ich arbeite übrigens mit der SolidWorks EE (Educational Edition). Das habe ich bis jetzt noch nicht erwähnt, da ja die VB 6.0 Projekt einwandfrei initialsiert werden konnten...

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

PASCAM
Mitglied
Diplom Informatiker


Sehen Sie sich das Profil von PASCAM an!   Senden Sie eine Private Message an PASCAM  Schreiben Sie einen Gästebucheintrag für PASCAM

Beiträge: 67
Registriert: 25.11.2002

erstellt am: 23. Jul. 2004 15:43    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Carlhainz 10 Unities + Antwort hilfreich

Hallo Carlhainz,

Also ich habe das alles bei mir nochmals ausprobiert und siehe da, es klappt (.NET 1.1, VS2003, SWX2004SP4.1 auf XPSP1a)

Die Meldung sieht so aus, als koennte die KLasse nicht initialisiert werden, weil irgendwelche Dll's fehlen. Ist das .NET korrekt initialisiert? Kannst Du aus VB6 die Klasse initialisieren? Kommst Du in die ConnectToSW-Methode? Hast Du die .Reg-Datei ausgeführt? Ist die Klasse in der Registry enthalten (IM RegEdit überprüfen!).
Template:
Hast Du das Orginal ausprobiert oder nur mal den Code so uebernommen?


------------------
PASCAM Ralph Müller
Softwareentwicklung

[Diese Nachricht wurde von PASCAM am 23. Jul. 2004 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Carlhainz
Mitglied
Student


Sehen Sie sich das Profil von Carlhainz an!   Senden Sie eine Private Message an Carlhainz  Schreiben Sie einen Gästebucheintrag für Carlhainz

Beiträge: 12
Registriert: 18.07.2004

erstellt am: 23. Jul. 2004 18:59    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Zitat:
Original erstellt von PASCAM:
Also ich habe das alles bei mir nochmals ausprobiert und siehe da, es klappt (.NET 1.1, VS2003, SWX2004SP4.1 auf XPSP1a)


Ich benutze auch VS2003, .NET Framework v1.1 SW EE (2003?, das weiß ich grad net so genau, da ich zu Hause bin, auf jeden Fall ist es eine Educational Edition) auf Win2000 (, wenn ich die letzte Angabe richtig verstanden habe)
Zitat:
Original erstellt von PASCAM:
Die Meldung sieht so aus, als koennte die KLasse nicht initialisiert werden, weil irgendwelche Dll's fehlen. Ist das .NET korrekt initialisiert?


Hmmm, diese Frage verstehe ich leider nicht richtig. Meinst Du damit, ob die Runtime-Umgebung korrekt läuft oder ob meine Klasse korrekt läuft?
Zitat:
Original erstellt von PASCAM:
Kannst Du aus VB6 die Klasse initialisieren?


Die VB 6.0 Klasse, bzw. Implementation der SwAddin-Schnittstelle konnte ich ohne Probleme initialsieren. Unter 6.0 konnte ich auch schon ein externes ActiveX-Steuerelement im Feature-Manager in einem neuen Tab anzeigen lassen
Zitat:
Original erstellt von PASCAM:
Kommst Du in die ConnectToSW-Methode?


Definitiv, nein, das habe ich schon mit einer
MsgBox "Hallo, hier bin ich"
getestet... ;-)
Zitat:
Original erstellt von PASCAM:
Hast Du die .Reg-Datei ausgeführt? Ist die Klasse in der Registry enthalten (IM RegEdit überprüfen!).


Ich habe die Klasse mit
regasm MyDll.dll \codebase
registriert, nachgeprüft hab ich es allerdings noch nicht.
Zitat:
Original erstellt von PASCAM:
Template:
Hast Du das Orginal ausprobiert oder nur mal den Code so uebernommen?


Ich habe die entsprechende Zeiel in der .vsz Datei geändert, ein neues Projekt erzeugt und kompiliert, angemeldet und es hat leider nicht funktioniert. Ich komm nur überhaupt nicht dahinter was falsch sein könnte. Bin Dir aber schon sehr dankbar für die Bemühungen.
Ich hoffe Du musst jetzt nicht mehr arbeiten und wünsch Dir einen schönes Wochenende

- Benjamin Petri
  IFW - Universität Stuttgart

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

PASCAM
Mitglied
Diplom Informatiker


Sehen Sie sich das Profil von PASCAM an!   Senden Sie eine Private Message an PASCAM  Schreiben Sie einen Gästebucheintrag für PASCAM

Beiträge: 67
Registriert: 25.11.2002

erstellt am: 24. Jul. 2004 13:44    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Carlhainz 10 Unities + Antwort hilfreich

Also Carlhainz,

die Sache gestaltet sich schwiereig.
Hast Du Dein Problem mal an dem APIProgrammier- und Anwendungsschnittstelle (Application Programming Interface)-Support von SWXSolidWorks berichtet?
Kannst Du das Projekt an mich senden?
Schau mal bitte mit RegEdit im Schlüssel HKEY_LOCAL_MACHINE\SOFTWARE\SolidWorks\AddIns nach. Da muesste Dein AddIn unter Deiner GUID vermerkt sein.
Probier bitte auch das im Thread vorhandene Beispiel direkt aus um auszuschliessen, dass irgendwelche Probleme mit .NET oder SWXSolidWorks gibt.

Ich habe gerade auch gesehn, dass es die volle .NET-Unterstuetzung erst mit 2004 gibt. Aber ich glaube, ich habe das alles auch schon unter 2004 am Laufen gehabt. Der APIProgrammier- und Anwendungsschnittstelle (Application Programming Interface)-Support kann Dir da aber nun am Besten weiterhelfen.

------------------
PASCAM Ralph Müller
Softwareentwicklung

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

stucki
Mitglied
Ingenieur


Sehen Sie sich das Profil von stucki an!   Senden Sie eine Private Message an stucki  Schreiben Sie einen Gästebucheintrag für stucki

Beiträge: 73
Registriert: 30.04.2004

erstellt am: 24. Jul. 2004 19:14    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für Carlhainz 10 Unities + Antwort hilfreich


Hallo alle zusammen,
also ich hab leider nicht die Zeit noch mal alle bisherigen Artikel genau zu studieren. Deshalb liege ich vielleicht mit diesem Arikel ein bisschen Quer. Wenn dem so ist dann entschuldigt bitte.

Also:
1. Wenn die Änderungen in der entsprechenden Datei(weiter oben beschrieben) gemacht wurde, dann lässt sich im VisualStudio.NET der AddIn-Wizzard korrekt benutzen. (Dies hat scheinbar geklappt)

2. Das Projekt muss kompiliert und gelinkt werden. (Dies hat scheinbar geklappt)

3.Registrierung des AddIns in SolidWorks:
Das funktioniert bei mir am einfachsten, wenn ich SolidWorks öffne und den Dateiexplorer öffne und die AddIn-dll per Drag&Drop auf vom Explorer in das SolidWorks ziehe.
Alternativ dazu kann auch in SW Datei->Öffnen gewählt und unter dem Dateityp die AddIn-dll gewählt und danach die dll auf diese Weise eingefügt werden. Die dll wird dabei registriert.

Ich benutze SolidWorks 2004. Da müsste das mindestens so funktionieren.

liebe Grüsse
tom

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2024 CAD.de | Impressum | Datenschutz