njsgcs 2024-06-06 17:53 采纳率: 100%
浏览 8
已结题

c# 我要window应用程序 打开我的类库插件方法,能调用,调试和得到返回值

c# 我要window应用程序 打开我的类库插件方法,能调用,调试和得到返回值
怎么在window应用代码里获得运行插件dll的返回值



```c#
        public bool ConnectToSW(object ThisSW, int Cookie)
        {
            iSwApp = (ISldWorks)ThisSW;
            addinCookieID = Cookie;
            //Debug.WriteLine("Cookie=" + Convert.ToString( Cookie));
            iSwApp.SetAddinCallbackInfo(0, this, addinCookieID);
            iCmdMgr = iSwApp.GetCommandManager(addinCookieID);

            //主窗口 = new 主窗口();
           // 主窗口.SwApp2 = iSwApp;
           // 主窗口.Show();
            //AddCommandMgr();
            var SwEventPtr = (SolidWorks.Interop.sldworks.SldWorks)iSwApp;

            SwEventPtr.FileOpenNotify2 += new DSldWorksEvents_FileOpenNotify2EventHandler(swApp_FileOpenNotify2);


            return true;
        }
     else if (输入内容=="sld")
     {
      SldWorks sldWorks = new SldWorks();
       sldWorks.Visible = true;///这里打开的solidworks打开后,调试关了,solidworks还在后台
         AddinStudy addinStudy = new AddinStudy();
       addinStudy.ConnectToSW();


     }
        public static void Main()
        {
            
            主窗口 主窗口 = new 主窗口();
           
            Application.Run(主窗口);



        }

  • 写回答

20条回答 默认 最新

  • CyMylive. Python领域新星创作者 2024-06-07 16:17
    关注

    结合GPT给出回答如下请题主参考
    要在C#的Windows应用程序中打开一个类库插件,并调用其方法进行调试和获取返回值,以下是一个详细的示例代码:

    首先,创建一个新的Windows应用程序项目,然后右键点击项目,选择“添加” -> “引用”,并选择你要使用的类库插件。

    接下来,在你的主窗体(Form)的代码文件中添加以下代码:

    using System;
    using System.Windows.Forms;
    using YourPluginNamespace; // 替换为你的插件命名空间
    
    namespace YourWindowsAppNamespace
    {
        public partial class MainForm : Form
        {
            private YourPluginClass plugin; // 替换为你的插件类
    
            public MainForm()
            {
                InitializeComponent();
                
                // 创建插件实例
                plugin = new YourPluginClass();
            }
    
            private void btnCallPluginMethod_Click(object sender, EventArgs e)
            {
                // 调用插件方法并获取返回值
                string result = plugin.YourPluginMethod();
                
                // 显示返回值
                MessageBox.Show(result);
            }
        }
    }
    

    上述代码中,YourPluginNamespace应替换为你的插件命名空间,YourWindowsAppNamespace应替换为你的Windows应用程序的命名空间,YourPluginClass应替换为你的插件类的名称。

    在你的主窗体设计视图中,添加一个按钮控件(Button),并将其命名为btnCallPluginMethod,然后将按钮的Click事件绑定到btnCallPluginMethod_Click方法。

    这样,当用户点击按钮时,将会调用插件方法并获取返回值,然后将返回值显示在一个消息框中。

    请确保你的插件类的方法是公共的,并且返回类型是你所期望的类型。

    以上就是一个简单的示例代码,你可以根据你的具体需求进行修改和扩展。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(19条)

报告相同问题?

问题事件

  • 系统已结题 6月15日
  • 已采纳回答 6月7日
  • 创建了问题 6月6日