Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  [API] OpenDoc6 macht Probleme

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
  
Zerspanungstreff mit SolidCAM bei der Hoffmann GmbH in Achim/Bremen
Autor Thema:  [API] OpenDoc6 macht Probleme (1401 mal gelesen)
gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Nov. 2008 16:34    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!

Wenn ich ein Document mit OpenDoc6 in Solidworks laden will funktioniert das nicht.
Der Pointer für die geladene Komponente belibt immer leer. Wenn ich mir den Errorcode anzeigen lasse, bekomme ich immer diese Nummer: 65536
Was heißt diese Error Nummer? Wo bekomme ich die information was die Errorcodes heißen?

So sieht mein Befehl für das öffnen der Komponente:

Code:
screws = swApp.OpenDoc6("I:\Konstruktion\Identnummernteile\SCE0xxZ_Scheibe-DIN125-TZN.SLDPRT",_
swDocumentTypes_e.swDocPART, swOpenDocOptions_e.swOpenDocOptions_Silent, _
"", Errors, Warnings)

!Achtung ich programmiere in vb.net, deswegen keine "SET" anweisung.

**Edit**

Könnte die Fehlernummer vielleicht heißen: Zu wenig Speicher

[Diese Nachricht wurde von gegy3 am 14. Nov. 2008 editiert.]

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Nov. 2008 17:00    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

Ok, was 65536 heißt, habe ich nun hier raußgefunden:

Klick mich!

Also wenn die Komponente bereits geöffnet ist, müsst sie doch mit AddComponent4 einfügen können, das funktioniert aber nicht.

[Diese Nachricht wurde von gegy3 am 14. Nov. 2008 editiert.]

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

tbd
Mitglied
Teamleiter


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

Beiträge: 825
Registriert: 26.01.2006

Dell Percision T5400
Intel(R) Xeon(R) CPU
X5460 @ 3.16GHz
3,25 GB RAM
Nvidia Quadro FX 4600
-----
Win XP Prof SP 3
SW 2008 SP 5.0
PARTsolutions 8.1.08
Cideon SAP PLM 5.103.5.17
Visual Studio 2008

erstellt am: 14. Nov. 2008 17: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 Nur für gegy3 10 Unities + Antwort hilfreich

Hallo gegy3,

bei der Rückgabe handelt es sich um ein Enumerator welcher als Bitfeld, d. h. als Gruppe von Flags behandelt wird.
Der Grund ist, das es ja mehrere Ursachen haben kann, warum du dein Dokument nicht öffnen kannst.

Es gibt zwei Möglichkeiten dieses Bitfeld aufzuschlüsseln.

Abfrage eines direkten Inhalts:

Code:
'Am Beispiel von swFileLoadWarning_AlreadyOpen
If(Errors And SwConst.swFileLoadWarning_e.swFileLoadWarning_AlreadyOpen) > 0 Then
    'Hinweis ...
End If

Oder wenn SolidWorks die Attribute richtig gesetzt hat (was ich allerdings nicht weis und auch jetzt nicht testen kann!):

Code:
For i as integer = 0 to 65536
    Console.WriteLine( "{0,3} - {1}", _
        i, CType(i , SwConst.swFileLoadWarning_e).ToString())
Next

Mehr Informationen gibt es hier

------------------
Mfg Daniel

www.MySldWorks.de - SolidWorks Api Snippets

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 14. Nov. 2008 17:35    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

Hey Danke Daniel, dein zweite Codeschnippsel sollte funktionieren.
Dann kann ich endlich auch die Fehler im TextFormat anzeigen lassen!

Werds testen.

Vielen Dank nochmal! 

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 17. Nov. 2008 20:17    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

So, nun habe ich denke ich rausgefunden, dass ich eine Komponente wenn sie bereist in solidworks geladen ist (in einer Baugruppe verbaut, wlche geöffnet ist) nicht mit AddComponent4 in eine baugruppe einfügen kann. Wenn ich z.b. diesen Code habe:

Code:
swComponent = swAssembly.AddComponent4("C:\Solidworks_Modele\screws\SCE0xxZ_Scheibe-DIN125-TZN_VBA.SLDPRT", _
                                              "SCE013Z", swCurveData(0), swCurveData(1), swCurveData(2))

dann bleibt die Variable swComponent immer leer, obwohl der Pfad stimmt.
Was mache ich da falsch?

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

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 18. Nov. 2008 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 gegy3 10 Unities + Antwort hilfreich

Nimm mal SP4.0 oder höher.
Da gab es einen Bug mit OpenDoc6() beim Öffnen von Baugruppen o.ä.

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

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 18. Nov. 2008 13: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 gegy3 10 Unities + Antwort hilfreich

ach - haste ja schon - hab ich mich versehen

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 18. Nov. 2008 14:42    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 hab inzwischen sogar schon SP5.
Ich müsste nur irgendwie die Komponente einfügen.
Kann es sein, dass ich sie nicht einfügen/öffnen kann, wenn sie zwar gleich heißt, aber nicht an dem Ort liegt, von dem sie mit dem Model geöffnet worden ist.

Beispiel:

Baugruppe A hat Teil B aus Ordner c:\teile  verbaut.
Nun will ich in Baugruppe A Teil B aus dem Ordner c:\andereteile einbauen.

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

mkkk
Mitglied



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

Beiträge: 105
Registriert: 04.03.2005

erstellt am: 19. Nov. 2008 08:39    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 gegy3 10 Unities + Antwort hilfreich

Nein das geht nicht.
SWXSolidWorks klammert sich nur am Dateinamen.
Ist der gleich, aber kommt aus einem anderen Ordner, so funktioniert das nicht bzw. SWXSolidWorks nimmt dann das schon verbaute Teil aus dem ersten Ordner.
Will heißen: Ein Dokument mit selbem Namen aus verschiedenen Ordnern in eine Baugruppe einfügen - das geht in SWXSolidWorks nicht.

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

gegy3
Mitglied



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

Beiträge: 300
Registriert: 26.04.2006

SolidWorks 2012 SP 5.0

erstellt am: 19. Nov. 2008 08:58    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

Wie kann ich dann ein so bereits geöffnetes Teil in eine Baugruppe einfügen?
Für AddComponent4 geht das ja nur mit dem vollem DateiPfad, ich weiß aber ja nicht aus welchem Ordner das Teil geöffnet wurde. Kann ich das bereits geöffnete Teil nicht einfügen?

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