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条回答 默认 最新

  • CrMylive. 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日

悬赏问题

  • ¥20 关于游戏c++语言代码问题
  • ¥15 如何制作永久二维码,最好是微信也可以扫开的。(相关搜索:管理系统)
  • ¥15 delphi indy cookie 有效期
  • ¥15 labelme打不开怎么办
  • ¥35 按照图片上的两个任务要求,用keil5写出运行代码,并在proteus上仿真成功,🙏
  • ¥15 免费的电脑视频剪辑类软件如何盈利
  • ¥30 MPI读入tif文件并将文件路径分配给各进程时遇到问题
  • ¥15 pycharm中导入模块出错
  • ¥20 Ros2 moveit2 Windows环境配置,有偿,价格可商议。
  • ¥15 有关“完美的代价”问题的代码漏洞