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 strMaterial As String = ""
Dim strMessage As String
Dim listOfLibraries As Object = Nothing
Dim numMaterials As Long
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()
strMaterial = "Steel"
' Get material list
objMatTable.GetMaterialLibraryFileList(listOfLibraries, numMaterials)
strLibrary = listOfLibraries(2)
strMessage = String.Format("Number oF Material Libraries = {0}", numMaterials)
MsgBox(strMessage)
objMatTable.CreateNewMaterialLibrary("")
' Get material list
listOfLibraries = Nothing
numMaterials = 0
objMatTable.GetMaterialLibraryFileList(listOfLibraries, numMaterials)
strLibrary = listOfLibraries(2)
strMessage = String.Format("Number oF Material Libraries = {0}", numMaterials)
MsgBox(strMessage)
strMessage = String.Format("2nd Library is = {0}", 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";
string strMaterial = "";
string strMessage = null;
object listOfLibraries = null;
long numMaterials = 0;
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();
strMaterial = "Steel";
// Get material list
objMatTable.GetMaterialLibraryFileList(listOfLibraries, numMaterials);
strLibrary = listOfLibraries(2);
strMessage = string.Format("Number oF Material Libraries = {0}", numMaterials);
MessageBox.Show(strMessage);
objMatTable.CreateNewMaterialLibrary("");
// Get material list
listOfLibraries = null;
numMaterials = 0;
objMatTable.GetMaterialLibraryFileList(listOfLibraries, numMaterials);
strLibrary = listOfLibraries(2);
strMessage = string.Format("Number oF Material Libraries = {0}", numMaterials);
MessageBox.Show(strMessage);
strMessage = string.Format("2nd Library is = {0}", 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;
}
}