C#에서 DLL만들고 사용하기

개발환경은 Visual C# 2010 Express에서의 예제이다.
이 내용은 Visual Studio 2010에서 해도 문제가 없다.

메뉴 표시는 대신 한글이여서 조금은 이해하기 편할 것 같다.


먼저 DLL을 사용할 프로젝트를 만든다.
먼저 File > New Project를 선택한다.

Console Application을 선택하고 적당한 이름을 입력한 후 OK를 누른다.
여기서 입력한 이름으로 프로젝트가 만들어지고 이 이름의 네임스페이스가 생긴다.

그러면 아래와 같이 자동으로 소스가 조금 만들어진다.


사용할 DLL 프로젝트 만들기

솔루션에서 왼쪽 클릭을 하고 Add > New Project를 선택한다.



Class Library를 선택하고 DLL의 이름을 적고 OK를 누른다.


DLL에 대한 내용을 적어둔다.



using System;

namespace MyCompo
{
    public class Calcurate
    {
        public int Add(int a, int b)
        {
            return (a + b);
        }
    }
}


DLL을 Build한다.


작성된 DLL을 참조하기 위해서는 DLL을 사용하려는 프로젝트의 References(참조)에서 오른쪽 클릭을 하여 Add Reference를 선택한다.


그리고 Projects 탭을 선택하면 지금 작성한 DLL의 프로젝트를 선택하고 OK를 누른다.

정상적으로 Dll이 참조되면 References 밑에 추가한 DLL의 이름이 표시된다.

그리고 아래와 같이 코드를 작성한다.


using System;
// DLL Namespace 추가
using MyCompo;

namespace UseDll
{
    class Program
    {
        static void Main(string[] args)
        {
            int a = 10;
            int b = 20;
            int c = 0;

            // DLL에 정의된 클래스로 객체 정의하기
            Calcurate cal = new Calcurate();

            // DLL의 메서드 사용하기
            c = cal.Add(a,b);

            Console.WriteLine("{0} + {1} = {2}", a, b, c);
            Console.ReadLine(); 
        }
    }
}

그리고 실행하면 아래와 같은 결과가 표시된다.




Posted by 떡잎

C#으로 ASP.NET 웹 응용 프로그램을 만들기

파일 > 새로 만들기 > 프로젝트 를 선택한다.

아래의 그림에서 ASP.NET 웹 응용 프로그램을 선택하고 이름에 적당한 이름을 넣고 확인 버튼을 누른다.

그러면 아래와 같은 화면이 표시된다.

Default.aspx에서 오른쪽 클릭을 하고 디자이너 보기를 선택한다.


그러면 웹 디자인 화면이 아래와 같이 표시된다.
그리고 Default.aspx에서 오른쪽 클릭을 하고 브라우저에서 보기를 선택한다.

그러면 아래와 같이 브라우저에 내용이 표시된다.


어느 버전부터는 잘 모르겠지만 IIS가 설치되어있지 않아도 바로 브라우저에서 볼 수 있다.
아래와 같이 개발 서버가 탑재되었다.






Posted by 떡잎

C#으로 WPF 응용 프로그램을 만들기

파일 > 새로 만들기 > 프로젝트 를 선택한다.

아래의 그림에서 WPF 응용 프로그램을 선택하고 이름에 적당한 이름을 넣고 확인 버튼을 누른다.

그러면 아래와 같은 화면이 표시된다.
WPF는 화면이 XAML로 되어있어 기존 폼 처럼 컨트롤을 가져다 놓을 수도 그리고 XAML 파일을 직접 변경해서도 작업할 수 있다.

도구 상자에서 버튼을 선택하여 폼에 버튼을 그려 넣는다.

라벨도 추가한다.
그러면 XAML에도 버튼과 라벨이 추가된다.

버튼을 더블 클릭하면 아래와 같이 버튼 클릭 이벤트에 대한 소스가 자동으로 만들어진다.

label1.Content = "Hello";

위 소스를 추가한다.
WPF에서는 윈도우 폼의 Text 속성이 Content로 바뀌였다.

실행 버튼을 누르면 아래의 화면이 표시된다.


버튼을 누르면 라벨에 Hello가 표시된다.




Posted by 떡잎

C#으로 윈도우 폼 응용 프로그램을 만들기

파일 > 새로 만들기 > 프로젝트 를 선택한다.

아래의 그림에서 Windows Forms 응용 프로그램을 선택하고 이름에 적당한 이름을 넣고 확인 버튼을 누른다.

그러면 아래와 같이 폼이 표시된다.


도구상자가 오른쪽에 접혀져 있다.
도구상자를 클릭하면 아래의 화면처럼 도구상자가 표시된다.
개인적으로는 VB에서 쓰던 버릇이 있어서 도구상자를 왼쪽에 표시하는 것이 편하다. 
도구상자의 위치는 드래그 앤 드랍으로 쉽게 위치를 바꿀 수 있다.

도구상자에서 버튼을 더블클릭하면 자동으로 화면에 버튼이 생긴다.
아니면 도구상자에서 버튼을 선택해서 폼에 버튼을 그려 넣어도 된다.

버튼과 같은 방법으로 라벨도 하나 추가한다.


처음 C#을 실행시키면 기본적으로 속성창이 표시되지 않는 것같다.
그럴 때에는 보기 > 다른 창 > 속성 창 을 선택한다.

버튼을 선택하고 속성에서 Text에 속성을 "눌러줘"로 입력하면 버튼의 표시된 글자가 변경된다.

버튼을 더블클릭하면 아래와 같이 버튼 클릭 이벤트에 대한 코드가 자동으로 생성된다.

아래와 같이 label1.Text = "Hello";


이렇게 하고 프로그램을 실행하고 버튼을 클릭하면 라벨에 "Hello"가 표시됩니다.




Posted by 떡잎

C#을 전혀 해보지 않은 상황에서 콘솔 응용 프로그램 만들어보기

이 예제는 윈도우즈 XP에서 Visual Studio 2010 Professional을 사용했다.

먼저 C#을 실행시킨다.


파일 > 새로 만들기 > 프로젝트 를 선택한다.


Visual C#을 선택하고 콘솔 응용 프로그램을 선택한 후에 적당한 이름을 넣고 확인 버튼을 누른다.

그러면 아래와 같이 소스가 자동으로 만들어진다.

C#에서는 아래와 같이 Con만 입력하더라도 아래의 그림과 같이 자동입력 기능이 지원되어 리스트에서 선택한 것이 자동으로 입력된다.

아래의 그림과 같이 Console.WriteLine("Hello"); 를 입력한다.
Console.WriteLine는 콘솔에 지정한 라인을 출력하는 함수이다.

빌드 > 솔루션 빌드 를 선택하여 빌드를 한다.

그러면 아래 그림과 같이 그림 아래의 출력창에 빌드에 대한 결과가 나온다.

그리고 실행 버튼 [] 을 클릭하면 프로그램이 실행된다.

이 프로그램을 실행하면 그냥 사라져 버린다.

이 것을 사라지지않고 콘솔에서 출력된 상태를 보려면 Console.WriteLine 줄 밑에 Console.ReadLine();을 추가하면 입력을 대기하기 때문에 출력 결과를 볼 수 있다.

그리고 아무 키를 입력하면 콘솔창이 사라진다.


using System;

namespace Hello
{
class Program
{
        static void Main(string[] args)
           {
        Console.WriteLine("Hello");
        }
}
}
 

위의 소스처엄 using을 사용하는 방법과 밑의 소스처럼 using을 사용하지 않고 직접 기술하는 방법도 있다.


//using System;

namespace Hello
{
class Program
{
        static void Main(string[] args)
        {
      System.Console.WriteLine("Hello");
        }
}
}







Posted by 떡잎
BLOG main image
프로그래밍 공부하면서 써가는 개인 노트 (따라서 여기에 씌여있는 소스의 신빙성을 보장 못함 -.-;;) 이 블로그 보면서 틀린 점이 있으면 꼬옥 알려주세요. by 띠리

공지사항

카테고리

분류 전체보기 (323)
Win32 SDK 초보 (27)
통신관련 (11)
MFC TIP (20)
C/C++ TIP (10)
개발기타 (10)
링크 (2)
견물생심 (24)
이것저것 (8)
용어메모 (3)
데이터베이스 (32)
비주얼 베이직 (10)
하드웨어 (3)
C# (42)
Xcode (3)
델파이 (82)
홈페이지 (5)
MindStorm (0)
낙서 (5)
스크래치 (0)
기타 (6)
아두이노 (1)
라즈베리파이 (2)
안드로이드 (6)
파이썬 (0)
WEB (2)
Total : 944,292
Today : 19 Yesterday : 397