Imports System.IO
Imports System.Runtime.InteropServices
Module Example
<STAThread()> _
Sub Main()
Dim objApplication As SolidEdgeFramework.Application
Dim objAssemblyDocument As SolidEdgeAssembly.AssemblyDocument
Dim objRelations3d As SolidEdgeAssembly.Relations3d
Dim objRigidSetRelation3d As SolidEdgeAssembly.RigidSetRelation3d
Dim objRelation As Object
Try
OleMessageFilter.Register()
objApplication = Marshal.GetActiveObject("SolidEdge.Application")
objAssemblyDocument = objApplication.ActiveDocument
objRelations3d = objAssemblyDocument.Relations3d
For i = 1 To objRelations3d.Count
objRelation = objRelations3d.Item(i)
If objRelation.Type = SolidEdgeFramework.ObjectType.igRigidSetRelation3d Then
objRigidSetRelation3d = objRelation
End If
Next
Catch ex As Exception
Console.WriteLine(ex.Message)
Finally
OleMessageFilter.Revoke()
End Try
End Sub
End Module
using System.IO;
using System.Runtime.InteropServices;
internal static class Example
{
[STAThread()]
public static void Main()
{
SolidEdgeFramework.Application objApplication = null;
SolidEdgeAssembly.AssemblyDocument objAssemblyDocument = null;
SolidEdgeAssembly.Relations3d objRelations3d = null;
SolidEdgeAssembly.RigidSetRelation3d objRigidSetRelation3d = null;
dynamic objRelation = null;
try
{
OleMessageFilter.Register();
objApplication = (SolidEdgeFramework.Application)Marshal.GetActiveObject("SolidEdge.Application");
objAssemblyDocument = objApplication.ActiveDocument;
objRelations3d = objAssemblyDocument.Relations3d;
for (var i = 1; i <= objRelations3d.Count; i++)
{
objRelation = objRelations3d.Item(i);
if (objRelation.Type == SolidEdgeFramework.ObjectType.igRigidSetRelation3d)
{
objRigidSetRelation3d = (SolidEdgeAssembly.RigidSetRelation3d)objRelation;
}
}
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
finally
{
OleMessageFilter.Revoke();
}
}
}