C#中加载dll并调用其函数的实现方法
作者:jingxian 时间:2022-06-27 17:14:08
C#编程中,调用封装dll中的函数是高频使用的。那么,如何在程序中加载dll并调用其中的函数呢?更进一步的,如何在主程序中对自己封装的dll中的函数进行调试呢?
加载dll-添加引用
添加引用的意思是让程序生成时根据配置的路径去加载相应的dll。其引用的步骤如下图所示:
解决方案->引用-> 添加引用-> 浏览-> 选择dll所在的路径->确定
导入命名空间、实例化对象、调用函数
只有导入该dll的命名空间,才能使用该空间下的类。因此,在引用了dll之后的第一步是导入命名空间;第二步才是实例化该类对象;最后才是使用类对象来调用其成员函数。下面所示的代码是调用封装好的DMC3000.dll中的初始化函数。
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using nsLTDMC;
//(1)引入命名空间
using nsDMC3000;
namespace DalsaConfig
{
public partial class Form1 : Form
{
//(2)声明类对象
DMC3000 m_f1DMC3000;
public Form1()
{
//(3)实例化类对象
m_f1DMC3000 = new DMC3000();
InitializeComponent();
//(4)调用dll中的函数
bool bIniResult = m_f1DMC3000.Init();
if (true == bIniResult)
{
MessageBox.Show("Init OK");
}
else
{
MessageBox.Show("Init Failed!");
}
}
}
}
调试dll函数的步骤
前面2个基本步骤是如何调用dll中的函数,而本步骤是调试自己封装的dll的步骤。
添加现有项目
添加现有项目是指将封装好的dll项目加载到主程序中,这样,才能在调试时单步进入dll调用的函数。
设置依赖关系
依赖关系是指,规定主程序为启动项目,dll程序为依赖项目。
标签:C#,加载dll,调用,函数
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
辨析Java中的String与StringBuffer及StringBuilder字符串类
2023-08-21 19:59:50
Android一行代码实现圆形头像
2022-02-23 02:00:25
![](https://img.aspxhome.com/file/2023/7/92577_0s.jpg)
浅析Java中线程的创建和启动
2022-12-29 17:37:41
![](https://img.aspxhome.com/file/2023/1/89871_0s.jpg)
Java Resource路径整理总结
2021-11-24 06:52:31
C# 字符串的连接(实例讲解)
2021-11-28 13:57:14
![](https://img.aspxhome.com/file/2023/0/104210_0s.png)
springboot项目打成war包部署到tomcat遇到的一些问题
2023-10-12 12:46:46
Java之NIO基本简介
2021-12-20 22:15:44
![](https://img.aspxhome.com/file/2023/5/82335_0s.png)
Jenkins初级应用之Invoke Phing targets插件配置
2023-10-14 03:55:56
![](https://img.aspxhome.com/file/2023/9/64049_0s.png)
通过springboot+mybatis+druid配置动态数据源
2023-06-20 16:48:30
![](https://img.aspxhome.com/file/2023/8/77438_0s.jpg)
C#中实现判断某个类是否实现了某个接口
2022-12-31 19:39:45
c# 遍历获取所有文件的示例代码
2022-11-21 20:01:43
Java单例模式分析
2023-11-16 03:17:06
详解SpringCloud微服务之Rest
2023-10-20 00:49:36
Java异步调用转同步方法实例详解
2023-11-01 20:38:25
C#直线的最小二乘法线性回归运算实例
2022-05-03 11:19:33
![](https://img.aspxhome.com/file/2023/8/104348_0s.png)
常用Maven库,镜像库及maven/gradle配置(小结)
2023-11-20 23:44:00
java 汉诺塔Hanoi递归、非递归(仿系统递归)和非递归规律 实现代码
2023-09-13 11:29:31
关于maven使用过程中无法导入依赖的一些总结
2021-12-16 01:51:20
Java GC 机制与内存分配策略详解
2022-06-12 05:36:44
![](https://img.aspxhome.com/file/2023/6/74926_0s.png)
JAVA Spring中让人头痛的JAVA大事务问题要如何解决你知道吗
2023-01-14 04:58:04
![](https://img.aspxhome.com/file/2023/8/67948_0s.jpg)