Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Ansprchen von nicht geöffneten Dateien

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 Autodesk Produkte
Autor Thema:  Ansprchen von nicht geöffneten Dateien (1795 mal gelesen)
BernhardU
Mitglied
Techniker / Konstrukteur / Student


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

Beiträge: 328
Registriert: 17.08.2005

Windows XP SP3
IV Prof 2012
VS 2010

erstellt am: 05. Okt. 2005 15: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 zusammen!
Ich wollte Fragen ob mir von euch jemand helfen kann!

Ich möchte gerne wissen, ob es möglich ist ein Dokument, das nicht geöffnet ist zu definieren, um z.b. nur die IPorperties anzusprechen!
denn normalerweise muss man doch immer sagen

ActiveDocument

Doch ich will das Dokument nicht öffnen um die IProperties zu ändern!!
Weis von euch wer einen weg, wie das mit vba möglich ist!!

Vielen Dank im Voraus!!

mfg Bernhard

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

startrek
Mitglied
Architekt


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

Beiträge: 1361
Registriert: 13.02.2003

Veni, Vidi, VW ...
I came, I saw, I drove around in a little car.

erstellt am: 05. Okt. 2005 18: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 Nur für BernhardU 10 Unities + Antwort hilfreich

Hi Bernhard,

never say never ... - ich als nicht IV'ler behaupte aber mal einfach niente. Wobei eure DIVA allerdings immer für Überraschungen zu haben ist 

Weiss nicht ob binär was ginge, könnte mir aber vorstellen,
dass wird - wenn denn überhaupt machbar - bissel dark & kultig;-)

Gruss Nancy 

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

lbcad
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Maschinenbau und CAD-Trainer



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

Beiträge: 3794
Registriert: 15.02.2001

erstellt am: 06. Okt. 2005 08:27    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 BernhardU 10 Unities + Antwort hilfreich

Ohne es jetzt genau zu wissen:

"activeDocument" spricht ja ein Dokument an, das gerade im IV geöffnet ist. Dann macht man mit den Objekten innerhalb des Dokuentes etwas.

Normalerweise kann man dann auch ein beliebiges Dokument auf der Platte ansprechen und mit dessen Objekten das gleiche anstellen. Nur normalerweise muß man es dann eben doch öffnen - aber eben möglicherweise im Hintergrund - und dann wieder weglegen. Die Referenz zu  dieser Datei wird ja beim öffnen erzeugt - und die muß man dann wohl anstelle von "activeDocument" angeben.


So stelle ich mit das jedenfalls vor  .

------------------
Gruß Lothar

---------------------------------------------------

Während man es aufschiebt, verrinnt das Leben.
—Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.)

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

NL-AC
Mitglied
Ingenieur


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

Beiträge: 86
Registriert: 26.08.2005

erstellt am: 06. Okt. 2005 12:50    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 BernhardU 10 Unities + Antwort hilfreich

Hallo Bernhard,

warum willst Du das Dokument nicht öffnen? Reicht Dir nicht der Zugriff über den Apprentice-Server?

Gruß
Norbert

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

VOSTA1
Mitglied
techn. Angestellter


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

Beiträge: 108
Registriert: 23.12.2002

erstellt am: 06. Okt. 2005 14:04    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 BernhardU 10 Unities + Antwort hilfreich

Hallo, es ist möglich!
hier ein Vorschlag

'Daten ansprechen bei nicht geöffneter Datei

++++++++++++++++++++++++++++++++++++++
Sub Daten_ansprechen()

Dim Datei As String

Datei = "C:\test.ipt"

Dim oApp As Inventor.Application
Set oApp = GetObject(, "Inventor.Application")
   
Dim opartDoc As partDocument
Set opartDoc = oApp.Documents.Open(Datei, False)

Dim test_prop As String

test_prop = opartDoc.PropertySets("{F29F85E0-4FF9-1068-AB91-08002B27B3D9}").Item("Title").Value

'Benutzer Eigenschaft  "Abmessung" muß erst  erzeugt werden
'Dim test_benutz_prop As String
'test_benutz_prop = oDoc.PropertySets("{D5CDD505-2E9C-101B-9397-08002B2CF9AE}").Item("Abmessung").Value

MsgBox test_prop

opartDoc.Close  ' wichtig wieder schliessen

End Sub

++++++++++++++++++++++++++++++++++++++++

[Diese Nachricht wurde von VOSTA1 am 06. Okt. 2005 editiert.]

[Diese Nachricht wurde von VOSTA1 am 06. Okt. 2005 editiert.]

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

lbcad
Ehrenmitglied V.I.P. h.c.
Dipl.-Ing. Maschinenbau und CAD-Trainer



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

Beiträge: 3794
Registriert: 15.02.2001

DELL Precision 7520 Win10Pro-64
Inventor mit Vault Professional 2022
---------------------
Während man es aufschiebt,
verrinnt das Leben.
Lucius Annaeus Seneca
(ca. 4 v. Chr - 65 n. Chr.)

erstellt am: 07. Okt. 2005 08: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 BernhardU 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von BernhardU:
...
Doch ich will das Dokument nicht öffnen um die IProperties zu ändern!!
...

Hallo Bernhard,

das mit dem "nicht öffnen" ist so eine Sache wie im richtigen Leben:

Wenn Du das Päckchen nicht öffnest, kannst Du nicht sehen was drin ist.

------------------
Gruß Lothar

---------------------------------------------------

Während man es aufschiebt, verrinnt das Leben.
—Lucius Annaeus Seneca (ca. 4 v. Chr - 65 n. Chr.)

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

charly019
Mitglied
Konstrukteur


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

Beiträge: 17
Registriert: 31.05.2005

P4 2,6GHz, 1GB Ram
AIP 10

erstellt am: 07. Okt. 2005 10:30    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 BernhardU 10 Unities + Antwort hilfreich

Weiß jemand vielleicht ob das zum Kopieren von Skizzierten Symbolen Funktioniert.

------------------
mfg
Thomas

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

BernhardU
Mitglied
Techniker / Konstrukteur / Student


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

Beiträge: 328
Registriert: 17.08.2005

Windows XP SP3
IV Prof 2012
VS 2010

erstellt am: 10. Okt. 2005 20:40    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!

Also wie ich es vermutet habe ist es nicht möglich die I-Propeties
bei geschlossenen Dateien zu bearbeiten!

muss ich einfach visible auf false setzten bei öffnen

Ich dachte eigentlich nur darein, weil es im Windows Explorer auch möglich ist bei den normalen Dateiegenschaften auf die I-Properties zuzugreifen!

Nochmals vielen Dank!

möglicherweise fällt noch wem was ein!!

mfg Bernhard

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

PaulSchuepbach
Moderator
Programmierer




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

Beiträge: 1005
Registriert: 01.10.2003

erstellt am: 11. Okt. 2005 08: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 Nur für BernhardU 10 Unities + Antwort hilfreich



Ingenieur (m/w/d) Value Engineering

Unter der Devise ?Taking action for future generations? haben wir bei Big Dutchman seit über 80 Jahren unsere Ideen in mehr als 100 Länder transportiert ? denn die Ernährung der Welt ist unsere Profession. Unsere Hightech-Lösungen für Proteine und Pflanzen machen unsere Kunden erfolgreich und befähigen Landwirte auf der ganzen Welt zu nach­halti­gerem Handeln. Kein Wunder, denn egal, ob an unserem Hauptsitz in Vechta (Niedersachsen) oder den Niederlassungen auf fünf Kontinenten: Über 3....

Anzeige ansehenMaschinenbau
BernhardU
Mitglied
Techniker / Konstrukteur / Student


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

Beiträge: 328
Registriert: 17.08.2005

Windows XP SP3
IV Prof 2012
VS 2010

erstellt am: 12. Okt. 2005 16: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

Hallo Zusammen!
Habe in der Zwischenzeit einen guten Ansatz gefunden!!

Schaut mal!
Dazu benötigt man den Verweis:

C:\Programme\Autodesk\Inventor\Bin\RxApprentice.tlb

= Autodesk Inventor's Apprentice Object Library

' AttValues_CADNames = eine Collection mit den Propertynames
  ' AttValues_CADValues = eine Collection mit den zugewiesenen Values und AttValues_CADNames als Key-Names

  Dim oApprentice As New ApprenticeServerComponent
  ' Open a document.
  Dim oDoc As ApprenticeServerDocument
  Set oDoc = oApprentice.Open(CommandCadFileName)
  ' Attribute füllen
  Dim PropertySet As PropertySet
 
  For x = 1 To oDoc.PropertySets.Count
  Set PropertySet = oDoc.PropertySets.Item(x)
  For y = 1 To PropertySet.Count
  AttCount = 0
    For z = 1 To AttValues_CADNames.Count
    If UCase(AttValues_CADNames.Item(z)) = UCase(PropertySet.Item(y).Name) Then
      PropertySet.Item(y).Value = AttValues_CADValues.Item(AttValues_CADNames.Item(z))
    End If
    Next z
  Next y
  Next x
  ' dokument speichern und schließen
  Dim oFileSaveAs As FileSaveAs
  Set oFileSaveAs = oApprentice.FileSaveAs
  ' Save the assembly.
  Call oFileSaveAs.AddFileToSave(oDoc, oDoc.FullFileName)
  Call oFileSaveAs.ExecuteSave
  Set oDoc = Nothing


Ist zwar noch nicht perfekt, da durch das speichern wieder der Ordner "OldVersion" erzeugt wird (Nicht wenn man die iProperties im explorer mit der Hand ändert) doch es geht absolut in die richtige Richtung!!

Ich hoffe ich kann euch mit dem Fund auch  weiterhelfen!!

Noch einen schönen Tag!!

mfg Bernhard

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)2023 CAD.de | Impressum | Datenschutz