| |
| Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte |
Autor
|
Thema: Auf Speicherort zugreifen (1485 mal gelesen)
|
Tschack Mitglied
Beiträge: 186 Registriert: 29.11.2002 P4 3GHz 1GB nvidia Geforce 6200+ IV 9 SP1/IV 10/IV 11 SP1
|
erstellt am: 30. Aug. 2005 08:23 <-- editieren / zitieren --> Unities abgeben:
Hallo, nachdem man mich vom Inventor-Forum hierher verwiesen hat, stelle ich meine Frage mit der Hoffnung, daß jemand einen Tip abgeben kann. Im 10er Inventor generiert man bei Erstellung eines Projektes nicht automatisch einen Arbeitsbereich. Es gibt zwar immer einen Speicherort, der muß aber (mit dem Doppelpfeil) aktiviert werden, um zum Arbeitsbereich zu werden. Mein Problem: Ich kann mit dem Konstrukt Dim oFileLocations As FileLocations Set oFileLocations = oApp.FileLocations ChDir oFileLocations.Workspace auf den Arbeitsbereich zugreifen, weiß jedoch nicht, wie man(wenn kein AB festgelegt ist) auf den Speicherort zugreifen kann. Kann mir jemand einen Tip geben? mfg - Hans
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JSCH Mitglied
Beiträge: 8 Registriert: 01.07.2005 Win200 SP4 IV10 SP1
|
erstellt am: 31. Aug. 2005 17:00 <-- editieren / zitieren --> Unities abgeben: Nur für Tschack
Public Sub WP() Dim oFileLocations As FileLocations Set oFileLocations = ThisApplication.FileLocations Debug.Print "Workspace: " & oFileLocations.Workspace ChDir oFileLocations.Workspace End Sub
------------------ Grüße JSCH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tschack Mitglied
Beiträge: 186 Registriert: 29.11.2002 P4 3GHz 1GB nvidia Geforce 6200+ IV 9 SP1/IV 10/IV 11 SP1
|
erstellt am: 01. Sep. 2005 09:24 <-- editieren / zitieren --> Unities abgeben:
Hallo JSCH, danke für deine Antwort, sie hilft mir jedoch nicht weiter, da hier wieder nur auf den Arbeitsbereich zugegriffen wird. Ich brauche aber den Speicherort eben für den Fall, daß kein Arbeitsbereich festgelegt ist. mfg - Hans
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JSCH Mitglied
Beiträge: 8 Registriert: 01.07.2005 Win200 SP4 IV10 SP1
|
erstellt am: 01. Sep. 2005 15:08 <-- editieren / zitieren --> Unities abgeben: Nur für Tschack
Hallo Tschack, Macht es Sinn keinen Arbeitsbereich zu definieren? Jede APP merkt sich den zuletzt benutzten Speicherpfad über die REG. in Abhängigkeit zu der EXT. Public Sub WP() Dim Path As String
Debug.Print CurDir() Path = CurDir() End Sub ------------------ Grüße JSCH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tschack Mitglied
Beiträge: 186 Registriert: 29.11.2002 P4 3GHz 1GB nvidia Geforce 6200+ IV 9 SP1/IV 10/IV 11 SP1
|
erstellt am: 01. Sep. 2005 16:10 <-- editieren / zitieren --> Unities abgeben:
Hallo JSCH, die Frage nach dem Sinn ist irrelevant. Ich muß bei nicht vorhandenem Arbeitsbereich auf den Speicherort zugreifen können. Dein Vorschlag CurDir() gibt das Verzeichnis an, aus dem die Applikation gestartet wurde und hat mit dem Speicherort des Projektes nichts zu tun. Leider. mfg - Hans
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JSCH Mitglied
Beiträge: 8 Registriert: 01.07.2005 Win200 SP4 IV10 SP1
|
erstellt am: 02. Sep. 2005 09:00 <-- editieren / zitieren --> Unities abgeben: Nur für Tschack
Hallo Hans, damit wir jetzt vom gleichen sprechen. CurDir wird hier beschrieben: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vbenlr98/html/vafctCurDir.asp Es gibt den letzten Pfad zurück aus: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\ComDlg32\OpenSaveMRU Inventor VBA geöffnet. Im Direktfenster gibt mir CurDir das Installation LW zurück. Wenn ich jetzt eine Zeichung öffne erhalte ich den Pfad der Datei als Rückgabewert. Gleiches gilt auch für eine neue Datei sinngemäß. Der Pfad wird dann aus dem aufgerufenen Fenster "Speichern unter" ermittelt unabhängig davon ob die Datei tatsächlich gespeichert wurde. ------------------ Grüße JSCH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tschack Mitglied
Beiträge: 186 Registriert: 29.11.2002 P4 3GHz 1GB nvidia Geforce 6200+ IV 9 SP1/IV 10/IV 11 SP1
|
erstellt am: 02. Sep. 2005 10:28 <-- editieren / zitieren --> Unities abgeben:
Hallo JSCH, vielen Dank, daß du dich hier so reinhängst! Allerdings hilft mir auch dieser Beitrag nicht weiter. Diese MRU-Listen geben nur den Pfad der zuletzt bearbeiteten Teile(ipt) oder Baugruppen(iam) wieder. Stell dir vor ich habe IV gestartet und ein beliebiges Projekt gewählt(das keinen Arbeitsbereich enthält). Nun startet meine Applikation und will ein erzeugtes Teil im Speicherort ablegen(da kein Arbeitsbereich festgelegt wurde). Also dann wohin mit dem Teil? ? Workspace? - gibt es nicht! ? CurDir? - hat mit dem Speicherort des Projekts nichts zu tun! ? Speicherort des Projekts? - JA, aber wie heißt DU??? perhaps you now know what I mean. mfg - Hans
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
JSCH Mitglied
Beiträge: 8 Registriert: 01.07.2005 Win200 SP4 IV10 SP1
|
erstellt am: 02. Sep. 2005 12:05 <-- editieren / zitieren --> Unities abgeben: Nur für Tschack
Hallo Hans, ? Speicherort des Projekts? - JA, aber wie heißt DU??? Jetzt mal auf die schnelle. Wenn ich es jetzt verstanden habe soll das File im gleichem Ordner wie die Projektdatei gespeichert werden oder? Dim oFileLocations As FileLocations Set oFileLocations = ThisApplication.FileLocations Debug.Print "Speicherort : " & oFileLocations.FileLocationsFile Damit bekommt man den Namen und den Pfad der aktiven Projektdatei zurück. ------------------ Grüße JSCH Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Tschack Mitglied
Beiträge: 186 Registriert: 29.11.2002 P4 3GHz 1GB nvidia Geforce 6200+ IV 9 SP1/IV 10/IV 11 SP1
|
erstellt am: 02. Sep. 2005 13:37 <-- editieren / zitieren --> Unities abgeben:
|
eugen1111 Mitglied Konstrukteur
Beiträge: 36 Registriert: 18.01.2005 AIS9; XPSP2 P4-3800, 4 GB Quadro FX3400
|
erstellt am: 24. Okt. 2008 14:50 <-- editieren / zitieren --> Unities abgeben: Nur für Tschack
Hallo Ihr Zwei, genau das habe ich gesucht nur ich möchte den Projektpfad nicht im VBA auslesen sondern über die API in VB2005 mir fehlt praktisch nur diese Zeile: Set oFileLocations = ThisApplication.FileLocations oder könnt Ihr mir sagen, wie ich den Projektpfad der aktiven Projektdatei herausbekomme? Vielen Dank MfG Frank
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
| Entwicklungsingenieur (m/w/d) Schwerpunkt New Business | Die igus GmbH ist ein inhabergeführtes Unternehmen mit Hauptsitz im Großraum Köln. Als ?Hidden Champion? sind wir ein internationaler agierender Hersteller von technischen Produkten aus Hochleistungskunststoffen. Unsere Produkte sind vielseitig und lassen sich in über 50 verschiedenen Branchen wiederfinden, darunter in der Automobilindustrie, der Raumfahrt oder im 3D-Druck. Die Kommunikation zwischen unseren weltweit über 4.... | Anzeige ansehen | Entwicklung |
|
eugen1111 Mitglied Konstrukteur
Beiträge: 36 Registriert: 18.01.2005 AIS9; XPSP2 P4-3800, 4 GB Quadro FX3400
|
erstellt am: 27. Okt. 2008 12:17 <-- editieren / zitieren --> Unities abgeben: Nur für Tschack
|