Logo

Logo

C# 反射调用DLL里面方法并执行实例

Pastore Antonio
Pastore Antonio 2020年07月03日
535 阅读 0 评论 约 1257 字 阅读约 3 分钟

以下DLL文件里面的内容生成的程序集名为ClassLibrary1.dll

namespace ClassLibrary1
{
    public class Class2
    {
        public string Show_Str(string str)
        {
            if (string.IsNullOrEmpty(str))
                return "你没有传参数进来";
            else
                return "有参数,参数是:" + str;
        }
    }
}

以下是反射调用DLL里面方法
注意:把ClassLibrary1.dll考到调用的根目录下

private void button2_Click(object sender, EventArgs e)
{
    //加载程序集(dll文件地址),使用Assembly类   
    Assembly assembly = Assembly.LoadFile(AppDomain.CurrentDomain.BaseDirectory + "ClassLibrary1.dll");
 
    //获取类型,参数(名称空间+类)   
    Type type = assembly.GetType("ClassLibrary1.Class2");
    //创建该对象的实例,object类型,参数(名称空间+类)   
    object instance = assembly.CreateInstance("ClassLibrary1.Class2");
 
    //设置ClassLibrary1.dll中Show_Str方法中的参数类型,Type[]类型;如有多个参数可以追加多个   
    Type[] params_type = new Type[1];
    params_type[0] = Type.GetType("System.String");//System.Int32是整型
    //设置ClassLibrary1.dll中Show_Str方法中的参数值;如有多个参数可以追加多个   
    Object[] params_obj = new Object[1];
    params_obj[0] = "lqwvje-Dll里面方法参数";
 
    //执行Show_Str方法   params_type方法的参数类型   instance对象实例 params_obj参数值
    object value = type.GetMethod("Show_Str", params_type).Invoke(instance, params_obj);
}
查看完整代码

橙子主题打折出售

其实我不卖,主要是这里是放广告的,所以就放了一个
毕竟主题都没做完,卖了也是坑.

购买它
部分文章可能存在转载,如果涉及到侵权,请联系删除文章。

留言板

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

8 - 4 = ?

探索AIGC相关的精彩内容,共 15 篇文章

Azure AI 服务之语音识别

简介 Azure AI 服务中的语音识别 API 是微软提供的一项先进技术,旨在帮助开发者轻松实现语 ... C# 反射调用DLL里面方法并执行实例

2026-02-17 · Xzavier Aaron
MCP | 一文详解什么是 MCP以及 MCP 可以做什么

一、什么是 MCP MCP(Model Context Protocol)是一个专为大型语言模型(L ... C# 反射调用DLL里面方法并执行实例

2026-02-14 · Shen, Luke
你的工作流程,值得一个“全自动数字分身”:录制、截图、成文,一气呵成

一、一句话认识 TestFlow Recorder 在数字化工作环境中,如何准确记录操作步骤并生成清 ... C# 反射调用DLL里面方法并执行实例

2026-02-14 · Xzavier Aaron
Flowise 前端框架配置指南

用户需求 问题:有没有适合配置 Flowise 的前端框架? 目标:寻找类似 Open WebUI ... C# 反射调用DLL里面方法并执行实例

2026-02-14 · Xzavier Aaron