Imports System.Runtime.InteropServices
Public Class Form1
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim objApp As SolidEdgeFramework.Application = Nothing
Dim objType As Type = Nothing
Dim objMatTable As SolidEdgeFramework.MatTable = Nothing
Dim strLibrary As String = "Materials"
Dim objDocument As SolidEdgePart.PartDocument = Nothing
Dim strMaterial As String = ""
Dim varGetPropVal As Object = Nothing
Dim listOfMaterials As Object = Nothing
Dim listOfLibraries As Object = Nothing
Dim numMaterials As Long
Dim strMessage As String
Try
' Get SE handle
objApp = Marshal.GetActiveObject("SolidEdge.Application")
If objApp Is Nothing Then
' Get the type from the Solid Edge ProgID
objType = Type.GetTypeFromProgID("SolidEdge.Application")
' Start Solid Edge
objApp = Activator.CreateInstance(objType)
' Make Solid Edge visible
objApp.Visible = True
End If
' Get material table object handle
objMatTable = objApp.GetMaterialTable()
' Get material list
objMatTable.GetFavoriteMaterialList(listOfMaterials, listOfLibraries, numMaterials)
strMaterial = listOfMaterials(5)
strLibrary = listOfLibraries(5)
strMessage = String.Format("Number of FAVORITE materials = {0}", numMaterials)
MsgBox(strMessage)
strMessage = String.Format("6h FAVORITE Material is = {0} and its library is = {1}", strMaterial, strLibrary)
MsgBox(strMessage)
Catch ex As Exception
MsgBox(ex.ToString)
End Try
End Sub
End Class
using System.Windows.Forms;
using System.Runtime.InteropServices;
public class Form1
{
private void Button1_Click(object sender, EventArgs e)
{
SolidEdgeFramework.Application objApp = null;
Type objType = null;
SolidEdgeFramework.MatTable objMatTable = null;
string strLibrary = "Materials";
SolidEdgePart.PartDocument objDocument = null;
string strMaterial = "";
object varGetPropVal = null;
object listOfMaterials = null;
object listOfLibraries = null;
long numMaterials = 0;
string strMessage = null;
try
{
// Get SE handle
objApp = (SolidEdgeFramework.Application)Marshal.GetActiveObject("SolidEdge.Application");
if (objApp == null)
{
// Get the type from the Solid Edge ProgID
objType = Type.GetTypeFromProgID("SolidEdge.Application");
// Start Solid Edge
objApp = Activator.CreateInstance(objType);
// Make Solid Edge visible
objApp.Visible = true;
}
// Get material table object handle
objMatTable = objApp.GetMaterialTable();
// Get material list
objMatTable.GetFavoriteMaterialList(listOfMaterials, listOfLibraries, numMaterials);
strMaterial = listOfMaterials(5);
strLibrary = listOfLibraries(5);
strMessage = string.Format("Number of FAVORITE materials = {0}", numMaterials);
MessageBox.Show(strMessage);
strMessage = string.Format("6h FAVORITE Material is = {0} and its library is = {1}", strMaterial, strLibrary);
MessageBox.Show(strMessage);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
public Form1()
{
SubscribeToEvents();
}
private bool EventsSubscribed = false;
private void SubscribeToEvents()
{
if (EventsSubscribed)
return;
else
EventsSubscribed = true;
Button1.Click += Button1_Click;
}
}