职业IT人-IT人生活圈

 找回密码
 成为会员
搜索
查看: 1898|回复: 0

c#创建Dll动态链接库、C#使用动态链接库

[复制链接]
郁闷小男人 发表于 2011-9-27 09:09 | 显示全部楼层 |阅读模式
内容简介介绍如何是使用C#来完成动态链接库的创建和使用、动态链接库对代码有很好的封装、能很好的保护源代码。使用图例完整的演示。
使用软件vs2005以及以上版本均可

步骤和方法新建一个类库。

a84052080730bcc20a7b82ab.jpg
编写一个简单的类库实例,例如:DllTest
在默认名为:calss1.cs里编写代码
一下是一个简单的:在控制台显示 “你以成功调用了动态连接!”
sing System;
using System.Collections.Generic;
using System.Text;
namespace DllTest
      {
          public class Class1
            {
               public void ShowMessage()
                 {
                     Console.WriteLine("你以成功调用了动态连接!");
                     Console.ReadLine();
                 }
             }
}
配置输出,在解决方案上右击——属性,在应用程序选卡中需要注意一下三个内容。
1.程序集名称2.默认命名空间3.输出类型
1.DllTest       2.DllTest          3.类库
这些对我调用来说很有用! a8362712e0641106f919b87c.jpg 生成dll,在菜单栏在生成里点击“生成dlltest”,或者按shfit+F6
生成成功,在目录下能看到生成的Dll: 58af236d2a4213ac42169436.jpg c8ab0bce956c746eb700c83c.jpg 调用该dll,新建一个控制台应用程序,来实现该dll的调用。
新建一个DLLExample。 caae6809f4f10df82fddd404.jpg 在新建的项目内添加引用,引用该dll。
72ccb7776bc3124cb151b90e.jpg


在“查找范围里找到,我们生成的dll,点击确定。在解决方案中显示如下内容,说明你添加成功! 43e6c733fc467014ac4b5f0f.jpg
7aad4ae7fd0a8e79b8382010.jpg
这时我就可以在程序中调用了。
在program.cs中添加 d048adde6d6f700fcdbf1ae2.jpg
如下代码:
using System;
using System.Collections.Generic;
using System.Text;
//必须添加
using System.Runtime.InteropServices;
using DllTest;
namespace DllExample
{
       class Program
         {
           //DllTest,我们的动态链接库
          [DllImport("DllTest.dll")]
          //
         public static extern void ShowMessage();
         static void Main(string[] args)
           {
           //实例化
             DllTest.Class1 i = new Class1();
            //调用动态链接库的方法
            i.ShowMessage();
            }
       }
}
运行结果: 6c63514aa3b0e47409f7efc9.jpg


注意事项其他应用程序可使用同样的方法调用!
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

QQ|手机版|小黑屋|网站帮助|职业IT人-IT人生活圈 ( 粤ICP备12053935号-1 )|网站地图
本站文章版权归原发布者及原出处所有。内容为作者个人观点,并不代表本站赞同其观点和对其真实性负责,本站只提供参考并不构成任何投资及应用建议。本站是信息平台,网站上部分文章为转载,并不用于任何商业目的,我们已经尽可能的对作者和来源进行了通告,但是能力有限或疏忽造成漏登,请及时联系我们,我们将根据著作权人的要求立即更正或者删除有关内容。

GMT+8, 2024-3-29 21:45 , Processed in 0.129408 second(s), 27 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表