Das Stichwort ist hier Assembly -> Component -> Part
Dim theSession As Session
theSession = Session.GetSession()
Dim ufs As UFSession
ufs = UFSession.GetUFSession()
Dim DisplayPart As part
DisplayPart = theSession.Parts.Display
Dim CompRoot As Component
CompRoot = DisplayPart.ComponentAssembly.RootComponent
Dim CompImmediate() As Component
Dim CompQty As Integer
CompImmediate = CompRoot.GetChildren()
CompQty = Ubound(CompImmediate)
Dim CompTmp As Component
Dim CompMasterPart as Part
For Each CompTmp In CompImmediate
CompMasterPart = CompMasterObject.Prototype
Next
Achtung die Prototype Eigenschaft verursacht einen Fehler bei nicht geladenen Komponenten. Hier ist evtl. mit einer Try Catch Funktion ein Fehler abzufangen. Außerdem muss darauf geachtet werden, dass GetChildren() auch Refernce Komponenten ausspuckt. Diese kann man aber durch die entsprechenden Text - Attribute erkennen.
Gruß
Matthias
Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP