티스토리 뷰
반응형
제가 만들어 사용중인 템플릿입니다.
SolidEdge C#
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
// Import
using SolidEdgeFramework;
using SolidEdgeFrameworkSupport;
using SolidEdgeCommunity;
using SolidEdgeConstants;
// Documents
using SolidEdgeAssembly;
using SolidEdgePart;
using SolidEdgeDraft;
// etc
using System.Diagnostics; // 프로그램 실행중인지 체크
using System.Threading; // Time for wait
using System.IO;
namespace Edge_Template
{
class Program
{
// Edge 실행 체크
static bool IsEdgeStart()
{
Process[] processList = Process.GetProcessesByName("Edge");
if (processList.Length > 0)
return true;
return false;
}
[STAThread]
static void Main(string[] args)
{
#region 변수선언
SolidEdgeFramework.Application EdApp = null;
SolidEdgePart.PartDocument EdPart = null;
SolidEdgeAssembly.AssemblyDocument EdAssy = null;
SolidEdgeDraft.DraftDocument EdDft = null;
#endregion
try
{
OleMessageFilter.Register();
#region Edge 연결
if (IsEdgeStart())
{
EdApp = SolidEdgeCommunity.SolidEdgeUtils.Connect(true);
// EdApp.DisplayFullScreen = true;
}
else
{
throw new Exception("SolidEdge 프로그램이 실행되어있지 않습니다.");
}
#endregion
EdApp.DoIdle();
EdApp.ScreenUpdating = false;
#region Edge 파일 형식 확인
switch (EdApp.ActiveEnvironment)
{
case "Part":
EdPart = (PartDocument)EdApp.ActiveDocument;
break;
case "Assembly":
EdAssy = (AssemblyDocument)EdApp.ActiveDocument;
break;
case "Detail":
EdDft = (DraftDocument)EdApp.ActiveDocument;
break;
case "DMPart":
EdPart = (PartDocument)EdApp.ActiveDocument;
break;
default:
throw new Exception("지원되지 않는 문서입니다.");
}
#endregion
// 코드작성부
}
catch (Exception e)
{
MessageBox.Show(e.Message, "프로그램 종료");
}
finally
{
OleMessageFilter.Unregister();
#region 해제
if (EdApp != null)
{
EdApp.ScreenUpdating = true;
EdApp.DoIdle();
}
EdPart = null;
EdDft = null;
EdAssy = null;
EdApp = null;
#endregion
}
}
}
}
반응형
'프로그래밍 > SolidEdge' 카테고리의 다른 글
SolidEdge API 오류 (0) | 2018.03.20 |
---|---|
좌표계 생성 매크로 (2) | 2018.02.26 |
Edge VBA 시작 (0) | 2018.02.07 |
Solid Edge 매크로 (0) | 2018.02.06 |
댓글