如何利用C#创建和调用DLL
日期:2008年6月15日 作者: 查看:[大字体 中字体 小字体]-
一、写在前面 C# 语言是一种简单但功能强大的编程语言,用于编写企业应用程序。C# 语言从C和 C++语言演化而来,在语句、表达式和运算符方面使用了许多 C++ 功能。
C# 语言在类型安全性、版本转换、事件和垃圾回收等方面进行了相当大的改进和创新。
C# 语言提供对常用 API 样式(如 .NET 框架、COM、自动化和 C 样式 API 等)的访问。
什么是动态链接库?DLL三个字母对于你来说一定很熟悉吧,它是Dynamic Link Library 的缩写形式,动态链接库 (DLL) 是作为共享函数库的可执行文件。动态链接提供了一种方法,使进程可以调用不属于其可执行代码的函数。函数的可执行代码位于一个 DLL 中,该 DLL 包含一个或多个已被编译、链接并与使用它们的进程分开存储的函数。DLL 还有助于共享数据和资源。多个应用程序可同时访问内存中单个 DLL 副本的内容。
和大多数程序员一样,你一定很使用过DLL吧。也曾感受到它的带给你程序设计和编码上的好错吧今天我想和大家探讨一个主题:如何在C#创建和调用DLL(动态链接库), 其实在很大意义上而讲,DLL让我更灵活的组织编写我们的应用程序,作为软件设计者,可一个根据它来达到很高的代码重用效果。下面我来介绍一下在C#中如何创建和调用DLL。
二、准备工作
我们需要对我们接下来要做的事情做个简单的介绍,在本文我们将利用C#语言创建一个名为 MyDLL.DLL的动态链接库,在这个动态链接库文件中我们将提供两个功能一个是对两个参数交换他们的值,另一个功能是求两个参数的最大公约数。然后创建一个应用程序使用这个DLL。运行并输出结果。
三、创建DLL
让我们创建以下三个C#代码文件:
1、 MySwap.cs
using System;
namespace MyMethods
{
public class SwapClass
{
public static bool Swap(ref long i,ref long j)
{
i = i+j;
j = i-j;
i = i-j;
return true;
}
}
}
2、 MyMaxCD.cs
using System;
namespace MyMethods
{
public class MaxCDClass
{
public static long MaxCD(long i, long j)
{
long a,b,temp;
if(i>j)
{
a = i;
b = j;
}
else
{
b = i;
a = j;
}
temp = a % b;
while(temp!=0)
{
a = b;
b = temp;
temp = a % b;
}
return b;
}
}
}
}需要注意的是:我们在制作这两个文件的时候可以用Visual Studio.NET或者其他的文本编辑器,就算是记事本也可以。这两个文件虽然不在同一个文件里面,但是他们是属于同一个namespace(名称空间)这对以后我们使用这两个方法提供了方便。当然他们也可以属于不同的名称空间,这是完全可以的,但只是在我们应用他们的时候就需要引用两个不同的名称空间,所以作者建议还是写在一个名称空间下面比较好。
- [1] [2] [3] 下一页
-
- 如何利用C#创建和调用DLL 相关文章:
- ·gdiplus - gdiplus.dll - DLL文件信息
- ·rmoc3260 - rmoc3260.dll - Process Information
- ·tabctl32 - tabctl32.ocx - DLL文件信息
- ·windows 无法加载 internet 配置信息库(icfgnt.dll)。发生以下错误:找不到指定的模块
- ·进行DLL注入的三种方法
- ·eusexe.exe无法找到入口.无法定位程序输入点k32thk1632prolog于动态连接库KERNEL32.dll上
- ·修改dll文件工具和说明
- ·如何利用C#创建和调用DLL
- ·mfc71 - mfc71.dll - Process Information
- ·什么是动态链接库(DLL)以及常见问题
- 如何利用C#创建和调用DLL 相关软件
- ·DLL备份恢复工具(DllcacheManager) V1.6
- ·DLL Export Viewer V1.10 汉化版
- ·ZIP.DLL解压缩(动态库) V1.0.2.2
- ·月影短信--免费编程接口(DLL) V1.0
- ·KPSD.DLL软件保护库 V3.1
- ·DLL Show V4.7 汉化版
- ·InjectedDLL V1.00 汉化版
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
精品推荐
热点TOP10
- ·通常C#面试题
- ·用C#写计算器程序
- ·C#编写的windows计算器-源代码
- ·ASP.NET:根据IP获取当地天气预报的实现
- ·ASP.NET上传大文件控件
- ·C#中使用进度条
- ·Asp.net(c#)数据库操作类
- ·C#導出Excel源碼
- ·C#算术表达式求值
- ·C#获取本地计算机名IP,Mac地址
- ·使用 ADO.NET 访问 Oracle 9i 存储过程
- ·ASP.NET购物车的实现及结算处理
- ·ado.net 如何读取 excel
- ·AspNetPager分页控件--使用方法
- ·ASP.NET SESSION的使用及原理
- ·ASP.NET中水晶报表的使用
- ·在Visual C# 2.0中创建优雅代码
- ·asp.net(C#)海量数据表高效率分页算法(易懂,不使用存储过程)
- ·.net 2.0(c#)下简单的FTP应用程序
- ·ASP.NET程序中常用的三十三种代码
特别推荐
- ·ASP.NET 2.0角色及成员管理
- ·如何利用C#创建和调用DLL
- ·ASP.NET的几个特点
- ·实例分享:自己开发的自定义分页控件
- ·ASP.NET之上传文件管理策略
- ·ASP.NET程序中常用的三十三种代码
- ·ASP.Net中保护自定义的服务器控件
- ·C#设计的一个向导程序(Wizard)框架
- ·.net中即时消息发送的实现……
- ·ASP.NET动态创建控件之绝境求生
- ·.NET调用Oracle存储过程,使用数组类型的参数(如ArrayList)
- ·C#中水晶按钮的程序生成
- ·日历函数单元
- ·图片保存到数据库和从数据库读取图片并显示(c#)
- ·ASP.NET2.0下含有DropDownList的GridView编辑、删除的完整例子!
- ·C#中四种进程或线程同步互斥的控制方法
- ·[C#]解决读写包含汉字的txt文件时乱码的问题
- ·AspNetPager分页控件--使用方法
- ·六步使用ICallbackEventHandler实现无刷新回调
- ·从 ASP.NET 服务器控件插入客户端脚本
