C#,Delphi,Oracle,MSSQL 개발자블로그

C# DLL 만드는 법 / DLL 사용하는 법 본문

Programming/C#

C# DLL 만드는 법 / DLL 사용하는 법

19760323 2017. 6. 15. 16:13

● DLL 만들기

 

DLL을 만들기위해선 프로젝트 생성시, Windows Forms 응용 프로그램이 아닌, 클래스 라이브러리로 만들어야한다.

 

클래스 이름을 바꿔주고, int형 변수 두개를 받아서 더해준 값을 리턴해주는 함수를 만든다.

 

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Test_CreateDLL
{
    public class dllTest
    {
        public int fn_Add(int a, int b)
        {
            return a + b;
        }
    }
}

 

DLL 내에서 사용하는 함수나 클래스등은 모두 외부에서 사용할 수 있어야 하므로, 한정자는 반드시 public으로 지정하여야 한다.

그 후, 솔루션 빌드를 하면 DLL이 생성된다.

 

 

DLL의 생성 위치는, 솔루션이 빌드되는 위치(startuppath라고도 함)이다.

솔루션이 빌드되는 위치는, 프로젝트에서 우클릭하여 빌드탭을 보면 알 수 있다.

별도의 설정을 하지 않는다면, 해당 프로젝트가 있는 폴더 하위의 bin폴더 안의 debug폴더 안에 빌드가 된다.

 

 

 

● DLL 사용하기

 

사용할 프로젝트에서 참조를 걸고, DLL이 저장된 경로를 찾아 사용할 DLL을 참조 걸어준다.

 

 

 

테스트용 간단한 소스를 작성해준다.

아래의 소스는 DLL 내의 fn_ADD 함수를 이용하여, 받은 2개의 값을 더해서 메세지박스에 출력하는 소스이다.

DLL의 네임스페이스인 Test_CreateDLL을 사용할 곳에서 using으로 걸어주고, DLL 내의 클래스객체를 var_dll 변수로 선언하여,

그것을 통해 fn_ADD함수를 호출한다.

 

 

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 Test_CreateDLL;

namespace Test_UseDLL
{
    public partial class Form1 : Form
    {
        dllTest var_dll = new dllTest();
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            MessageBox.Show(var_dll.fn_Add(5, 10).ToString());
        }
    }
}

 

[실행결과]

 

 

Test_CreateDLL.zip

Test_UseDLL.zip

 

 

 

 

 

 

Comments