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 objStructuralFrames As SolidEdgeAssembly.StructuralFrames = Nothing
Dim objStructuralFrame As SolidEdgeAssembly.StructuralFrame = Nothing
Dim objOccurrences As SolidEdgeAssembly.Occurrences = Nothing
Dim objOccurrence As SolidEdgeAssembly.Occurrence = Nothing
Dim aSections As Array = Array.CreateInstance(GetType(Int32), 1)
Dim numSections As Integer
Dim occurrenceId As Integer
Dim i As Integer
Try
OleMessageFilter.Register()
objApplication = Marshal.GetActiveObject("SolidEdge.Application")
objAssemblyDocument = objApplication.ActiveDocument
objStructuralFrames = objAssemblyDocument.StructuralFrames
objoccurrences = objAssemblyDocument.Occurrences
objOccurrence = objoccurrences.Item(1)
' Loop through all of the structural frames.
For Each objStructuralFrame In objStructuralFrames
numSections = 0
aSections = Array.CreateInstance(GetType(Int32), 1)
objStructuralFrame.GetSections(numSections, aSections)
For i = 0 To numSections - 1
occurrenceId = 0
' Get the occurrence for this section
objStructuralFrame.ReturnOccurrenceForGivenSectionID(aSections(i), occurrenceId, objOccurrence)
Next
Next
Catch ex As Exception
Console.WriteLine(ex.Message)
Finally
OleMessageFilter.Revoke()
End Try
End Sub
End Module