Hot News:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  API: Zugriff auf Dateien im Konstruktionsordner

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
  
Dassault Systèmes auf der Hannover Messe 2024 (kostenlose Tickets verfügbar)
Autor Thema:  API: Zugriff auf Dateien im Konstruktionsordner (1410 mal gelesen)
MartinKirchmayer
Mitglied



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

Beiträge: 79
Registriert: 14.05.2002

erstellt am: 26. Okt. 2009 15:46    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 SWXSolidWorks-API-Gurus,
gibt es eine Möglichkeit per API auf die Dateien im Konstruktionsordner zuzugreifen?

Gruß,
Martin

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: 26. Okt. 2009 16:09    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 MartinKirchmayer 10 Unities + Antwort hilfreich

Hallo Martin,

wie ist deine Frage geneimt?
Ist Konstruktionsordner für dich die Konstruktionsbibliothek?
Willst du wissen welches Verzeichnis hinter der Konstruktionsbibliothek steckt?
Die kanst du mit Hilfe der SolidWorks Systemoption swUserPreferenceStringValue_e.swFileLocationsDesignLibrary und der API-Methode SldWorks.GetUserPreferenceStringValue ermitteln.

Mehr Informationen findest du in der API Hilfe unter dem Stichwort UserPreferenceStringValue oder hier.

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

www.MySldWorks.de - SolidWorks API Snippets

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

MartinKirchmayer
Mitglied



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

Beiträge: 79
Registriert: 14.05.2002

erstellt am: 26. Okt. 2009 16:32    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 meinte die Dateien, die ich in dem Featurebaum-Knoten "Konstruktionsordner" (engl. "Design Binder") ablegen kann.

Gruß,
Martin

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: 26. Okt. 2009 16:36    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 MartinKirchmayer 10 Unities + Antwort hilfreich

Hallo Martin,

da habe ich wohl die komplett falsche Richtung vermutet.
Leider kann ich dir da nicht weiter helfen. Der Konstruktionsordner wird bei uns nicht verwendet, deshalb hatte ich an diesen auch nicht gedacht. Die Funktionalität des Konstruktionsordners ist mir manuell und somit auch über die API nicht bekannt.

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

www.MySldWorks.de - SolidWorks API Snippets

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: 27. Okt. 2009 09:57    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 MartinKirchmayer 10 Unities + Antwort hilfreich

Hallo Martin,

da gibt es ein paar API in der ModelDocExtension für:

ModelDocExtension.InsertAttachment - anhängen ind en Konstruktionsordner
ModelDocExtension.DeleteAttachment - wieder aus dem Konstruktionsordner löschen
ModelDocExtension.GetAttachmentCount - Anzahl Dokumente (Anhänge) im Konstruktionsordner
ModelDocExtension.GetAttachments - Arrays mit dem angehängten Dokumenten

Dummerweise zeichnet der Makrorekorder nichts dazu auf, in der AP Hilfe steht nichts zum Stichwort "Design binder", und auf "Attachments" muss man erst mal kommen 

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de
Stefans SolidWorks Blog

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

MartinKirchmayer
Mitglied



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

Beiträge: 79
Registriert: 14.05.2002

erstellt am: 27. Okt. 2009 10:02    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

Danke schon mal Stefan.
Nun noch eine Frage:
ModelDocExtension::GetAttachments liefert (in der OLE Automation) ein "VARIANT of type SafeArray of the attachments for this document" zurück.
Was steht denn genau in dem Array drin? Kann ich denn damit dann noch weitere Operationen auf diesen Dateien machen? Also z.B. öffnen, separat rausspeichern...

Gruß,
Martin

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: 27. Okt. 2009 11: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 MartinKirchmayer 10 Unities + Antwort hilfreich

Hallo MArtin,

Zitat:
Original erstellt von MartinKirchmayer:
Was steht denn genau in dem Array drin? Kann ich denn damit dann noch weitere Operationen auf diesen Dateien machen? Also z.B. öffnen, separat rausspeichern...

Probieren geht über studieren ;)
Code:
Sub main()
   
    Dim swApp As SldWorks.SldWorks
    Dim swModel As ModelDoc2
    Dim swExt As ModelDocExtension
   
    Dim bRes As Boolean
    Dim AttachmentsCount As Long
    Dim AttachmentsLinked As Variant
    Dim AttachmentsList As Variant
   
    Dim i As Long

    ' an SolidWorks anhängen
    Set swApp = Application.SldWorks
    ' aktives ModelDoc holen
    Set swModel = swApp.ActiveDoc
    ' die ModelDocExtension greifen
    Set swExt = swModel.Extension
   
    ' BEISPIEL: vorhandenes File in den Konstruktionsordner einhöngen
    bRes = swExt.InsertAttachment("I:\test.txt", False)
   
    ' BEISPIEL: Anzahl Anhänge holen
    AttachmentsCount = swExt.GetAttachmentCount
   
    ' BEISPIEL: vorhandene Anhänge (Attachments) auflisten
    If AttachmentsCount > 0 Then
        AttachmentsList = swExt.GetAttachments(AttachmentsLinked)
       
        For i = 0 To AttachmentsCount - 1
            Debug.Print AttachmentsList(i), AttachmentsLinked(i)
        Next i
       
    End If

End Sub


In dem Array bekommst du eine Liste mit den (wohl ursprünglichen) Dateinamen inkl. Pfad, von wo aus es eingefügt wurde. Wie man die Dateien weiter nutzen kann hab ich noch nie nach gesucht, von der Interaktion aus würde ich vermuten das hinter der Funktion "Öffnen" ein ShellExecute steckt, aber versucht hab ich es nicht. Irgendwie müssen die internen Daten ja auch erst mal dem anderen Programm übergeben werden ...

Speichern oder so geht vermutlich nicht, da auch interaktiv nicht möglich. Vielleicht fragst du mal einfach beim API Support nach, wie man denn so ein internes Attachment ansprechen, z.B. öffnen kann. Es wäre nett, wenn du deine Ergebnisse dann hier eben posten würdest.

Ciao,
Stefan

------------------
Inoffizielle deutsche SolidWorks Hilfeseite    http://solidworks.cad.de
Stefans SolidWorks Blog

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