반응형
진행하기전에..
사실 DLL 만드는법에 대한 설명은 아래 MS 사이트 링크에 자세하게 설명이 되어 있습니다.
https://learn.microsoft.com/ko-kr/cpp/build/dlls-in-visual-cpp?view=msvc-170
그래서 위 링크를 보고 하셔도 크게 지장이 없습니다.
여튼간에.. 간단한 DLL 프로그램을 만들어 보도록 하겠습니다.
1. 소스파일과 헤더파일을 생성합니다.
2. 그리고 test.cpp와 test.h에 다음과 같은 코드를 추가합니다.
//test.h
#pragma once
#ifdef TEST_LIB_EXPORTS
#define TEST_API __declspec(dllexport)
#else
#define TEST_API __declspec(dllimport)
#endif
TEST_API void __stdcall TestPrint(); //단순 출력 함수
TEST_API int __stdcall Add(int x, int y); //정수 더하기 함수
//test.cpp
#include "pch.h"
#include <stdio.h>
#define TEST_LIB_EXPORTS
#include "test.h"
TEST_API void __stdcall TestPrint()
{
printf("Test!!");
}
TEST_API int __stdcall Add(int x, int y)
{
return x + y;
}
이때 #define TEST_LIB_EXPORTS를 소스코드에 쓰기 번거롭다 생각이 든다면 프로젝트 속성에서 전처리로 정의를 해도 됩니다.
3. 컴파일을 해보면 아래와 같이 창이 뜹니다.
4. 위 창은 DLL이 응용프로그램이 아니기 때문에 뜨는 창입니다. 정상적으로 출력이 되었다는것을 프로젝트 폴더의 출력 폴더에서 확인 할 수 있습니다. 출력 폴더는 프로젝트 속성의 출력 디렉터리를 어떻게 설정했느냐에 따라 다르다는점 참고 바랍니다.
5. DLL을 생성하였으면 이 DLL을 사용하는 방법에 대해서도 알아야겠죠? 다음 회차에서 부터 DLL을 사용하고 테스트 하기위한 방법에 대해 진행하도록 하겠습니다.
반응형
'Windows > DLL,MFC' 카테고리의 다른 글
[Windows DLL] 참고1. Test 프로그램과 DLL을 동시에 컴파일 하기. (0) | 2022.10.21 |
---|---|
[DLL 만들기] 5. DLL을 load하여 동작 확인 해보기. (MFC 기준) (0) | 2022.10.21 |
[DLL 만들기] 4. 생성한 DLL 동작 확인을 위한 프로젝트 생성하기. (MFC 기준) (0) | 2022.10.21 |
[DLL 만들기] 2. 프로젝트 생성 및 구조 설명. (0) | 2022.10.12 |
[DLL 만들기] 1. DLL이란 (0) | 2022.10.12 |