导航

亲手做的C# 生成dll文件,网上资源,本人整合,调试

Posted on 2011-04-03 22:46  beeone  阅读(647)  评论(0编辑  收藏  举报

亲手做的C# 生成dll文件,网上资源,本人整合,调试;

动态链接库 (DLL) 在运行时链接到程序。为说明如何生成和使用 DLL,请看以下方案:

MyDll.DLL:为库文件,其中包含运行时要调用的方法。此例中,DLL 包含两个方法:Add 和 Multiply。

AddClass.cs:为源文件,其中包含 Add(long i, long j) 方法。该方法返回参数之和。包含 Add 方法的 AddClass 类是命名空间 UtilityMethods 的成员。

MultiplyClass.cs:为源文件,其中包含 Multiply(long x, long y) 方法。该方法返回参数之积。包含 Multiply 方法的 MultiplyClass 类也是命名空间 UtilityMethods 的成员。

Form1.cs:包含 Main 方法的文件。它使用 DLL 文件中的方法来计算运行时参数的和与积。

//AddClass.cs

using System;
using System.Collections.Generic;
using System.Text;

namespace UtilityMethods
{
    public class AddClass
    {
        public static long Add( long i , long j )
        {
            return ( i + j );
        }

    }
}

//MultiplyClass.cs

using System;
using System.Collections.Generic;
using System.Text;

namespace UtilityMethods
{
 
   public class  MultiplyClass
    {
        public static long Multiply( long x , long y )
        {
            return ( x * y );
        }
    }

}


/* 建立Window 应用程序 :
 * 功能:MyDll.dll测试类;
 * 编者:beeone
 * 日期:2011-04-03 ,星期日,晚;
 *
 */
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using UtilityMethods;
namespace TestCode
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            textBoxX1.Text = Convert.ToString(AddClass.Add(12,12));
        }
    }
}

生成Dll文件:
1.运行->cmd->找到“D:\WINDOWS\Microsoft.NET\Framework\v2.0.50727”目录 ->如果有这个目录->就把AddClass.cs
 和 MultiplyClass.cs 放到“v2.0.50727”目录”下
2.回到控制台-> cd D:\WINDOWS\Microsoft.NET\Framework\v2.0.50727-> 跳到“D:\WINDOWS\Microsoft.NET\Framework\v2.0.50727”下;
3.csc /target:library /out:MyDLL.DLL AddClass.cs MultiplyClass.cs->生成Dll文件成功
说明:完成后可在本目录下面找到我们刚才生成的MyDLL.DLL文件
 /target:library 编译器选项通知编译器输出 DLL 文件而不是 EXE 文件。后跟文件名的
 /out 编译器选项用于指定 DLL 文件名。如果/out后面不跟文件名,编译器使用第一个文件
 (AddClass.cs) 作为 DLL 文件名。生成的文件为AddClass.DLL文件。