Imports System.IO
Imports System.Runtime.InteropServices
Module Example
<STAThread()> _
Sub Main()
Dim objApplication As SolidEdgeFramework.Application = Nothing
Dim objAssemblyDocument As SolidEdgeAssembly.AssemblyDocument = Nothing
Dim objAssemblyCopies As SolidEdgeAssembly.AssemblyCopies = Nothing
Dim objAssemblyCopy As SolidEdgeAssembly.AssemblyCopy = Nothing
Dim objSourceAssemblyDocument As SolidEdgeAssembly.AssemblyDocument
Dim objSourceSolidEdgeDocument As SolidEdgeFramework.SolidEdgeDocument
Try
OleMessageFilter.Register()
objApplication = Marshal.GetActiveObject("SolidEdge.Application")
objAssemblyDocument = objApplication.ActiveDocument
objAssemblyCopies = objAssemblyDocument.AssemblyCopies
objAssemblyCopy = objAssemblyCopies.Item("Assembly Copy_1")
If Not (objAssemblyCopy.AssemblyCopyType = SolidEdgeAssembly.AssemblyCopyTypeConstants.seAssemblyCopyTypeMultiBodyPart) Then
objSourceAssemblyDocument = objAssemblyCopy.SourceDocument
Console.WriteLine(objSourceAssemblyDocument.DisplayName)
Else
objSourceSolidEdgeDocument = objAssemblyCopy.SourceDocument
Console.WriteLine(objSourceSolidEdgeDocument.FullName)
End If
Catch ex As Exception
Console.WriteLine(ex.Message)
Finally
OleMessageFilter.Revoke()
End Try
End Sub
End Module