```c#
public bool ConnectToSW(object ThisSW, int Cookie)
{
iSwApp = (ISldWorks)ThisSW;
addinCookieID = Cookie;
//iSwApp.SendMsgToUser(Convert.ToString( Cookie));
iSwApp.SetAddinCallbackInfo(0, this, addinCookieID);
iCmdMgr = iSwApp.GetCommandManager(addinCookieID);
主窗口 = new 主窗口(SwApp);
主窗口.Show();
//AddCommandMgr();
var SwEventPtr = (SolidWorks.Interop.sldworks.SldWorks)iSwApp;
SwEventPtr.FileOpenNotify2 += new DSldWorksEvents_FileOpenNotify2EventHandler( swApp_FileOpenNotify2);
return true;
}
private int swApp_FileOpenNotify2(string name)
{
ModelDoc2 swModel = (ModelDoc2)iSwApp.ActiveDoc;
string 零件名= Path.GetFileNameWithoutExtension(name);
if (主窗口.属性实例!=null&& 主窗口.属性实例.prtname无后缀!= 零件名
|| 主窗口.属性实例 == null || 主窗口.属性实例 == default)
{
主窗口.聊天记录 = "";
主窗口.创建基本实例();
}
if (swModel.GetType() == (int)swDocumentTypes_e.swDocPART)
{
主窗口.过零件图();
}
else if (swModel.GetType() == (int)swDocumentTypes_e.swDocDRAWING)
{
主窗口.过工程图();
}
else if (swModel.GetType() == (int)swDocumentTypes_e.swDocASSEMBLY) {
主窗口.属性实例.装配图=true;
}
return 0; // 返回 0 表示成功
}
public void 创建基本实例() {
属性实例 = new 从3d得到属性实例();
属性实例.sldWorks = SwApp2;
string 项目地址;
if (!保存地址.得到项目地址(out 项目地址)) { return; }
this.属性实例.项目地址 = 项目地址;
属性实例.地址读取();
}
public 主窗口(ISldWorks SwApp)
{
聊天记录 = "";
SwApp2 = SwApp;
InitializeComponent();
输入窗口 输入窗口 = new 输入窗口();
输入窗口.InputValueEntered += (sender, e2) =>//////////我要用exe winform替代这个窗口
{
输入内容 = e2.Value;
读取信息();
输入窗口.textBox1.Text = "";
};
输入窗口.Show();
this.StartPosition = FormStartPosition.Manual;
int screenWidth = Screen.PrimaryScreen.WorkingArea.Width;
int screenHeight = Screen.PrimaryScreen.WorkingArea.Height;
this.Location = new Point(screenWidth - this.Width, 0);
int extendedStyle = (int)GetWindowLong(this.Handle, GWL_EXSTYLE);
SetWindowLong(this.Handle, GWL_EXSTYLE, (uint)extendedStyle | WS_EX_LAYERED | WS_EX_TRANSPARENT);
}
private void 读取信息()///////我要用exe winform调用插件的这个这个方法
{ else if (输入内容 == "1*2")
{
属性实例.聊天记录 = "";
this.从3d实例生成dxf(); ///////此处或者别的命令需要调用当前属性实例的内容 而属性实例是在打开文件的时候插件自动产生的
聊天记录 = 聊天记录 + "1*2 生成dxf" + "\n" + 属性实例.聊天记录;
}
}
```