C, C++/잡기장 | Notebook

[C/C++] 동적라이브러리(DLL) 만들기 & 사용하기 - (2)

SEO HOB 2017. 1. 19. 16:47

서론


지난번에 동일한 솔루션내에 라이브러리 프로젝트를 추가하여 dll을 만들고, 사용해보는 과정을 정리 했었습니다.

 

(※ 참고링크 :  http://poik.tistory.com/8 <동적라이브러리(DLL) 만들기 & 사용하기 - (1)>)

 

이번에는 동일한 솔루션이 아닌 외부 프로젝트에서 DLL을 만들고, 만든 DLL을 자신이 사용하고자 하는 메인 프로젝트에 추가하여

 

사용하는 과정을 정리하였습니다.

 

 

본론


■ 동적라이브러리(DLL) 만들기

 

1. 프로젝트 생성

 

1-1. Visual Studio 2013 → New Project → Win32 Project → Project, Solution name : EXTLibrary → OK

 

1-2. Application type : DLL → Additional options : Check the Empty project → Finish

2. 소스 및 헤더 파일 생성

 

2-1. Source Files : EXTLibrary.cpp, Header Files : EXTLibrary.h

 

3. 헤더파일(EXTLibrary.h)에 함수 원형 작성

 

4. 소스파일(EXTLibrary.cpp)에 함수 내용 작성

 

5. Build 및 생성된 .dll 파일 확인

 

5-1. Build 이후 생성된 dll경로 확인 (Build option : Debug, Win32 / ※개인이 원하는 옵션에 따라 빌드하시길 바람)

 

5-2. 출력된 경로를 따라서 생성된 .dll 및 .lib 파일 확인

(※ 참고 : C:\Users\NAMENODE\Documents\Visual Studio 2013\Projects\EXTLibrary\Debug)

 

■ 동적라이브러리(DLL) 사용하기

 

1. 프로젝트 생성

 

1-1. Visual Studio 2013 → New Project → Win32 Console Application → Project, Solution name : UseEXTLibrary → OK

 

1-2. Application type : Console application → Additional options : Check the Empty project → Finish

 

2. 소스 파일 생성

 

2-1. Source Files : UseEXTLibrary.cpp

 

3. 소스파일(UseEXTLibrary.cpp)에 내용 작성

 

4. 프로젝트 속성 변경

 

4-1. Project Tab → 'Project name' Properties (Alt + F7)

 

4-2. Configuration Properties → VC++ Directories → Include Directories → Click '<Edit...>'

4-3. Click a 'New Line' button → Click '...'

4-4. 'C:\Users\NAMENODE\Documents\Visual Studio 2013\Projects\EXTLibrary' 경로 추가

(※ DLL에 정의된 함수 사용을 위한 헤더파일 추가 작업)

 

4-5. Configuration Properties → VC++ Directories → Library Directories → Click '<Edit...>'

4-6. Click a 'New Line' button → Click '...'

 

4-7. 'C:\Users\NAMENODE\Documents\Visual Studio 2013\Projects\EXTLibrary\Debug' 경로 추가

 

4-8. Configuration Properties → Linker → Input → Additional Dependencies → Click the '<edit...>'

4-9. C:\Users\NAMENODE\Documents\Visual Studio 2013\Projects\EXTLibrary\Debug'에 있는 '.lib' 추가

(※ 4-9 과정은 '#pragma comment(lib, "EXTLibrary.lib")'와 같은 효능을 가짐)

5. .dll 파일 추가

 

5-1. C:\Users\NAMENODE\Documents\Visual Studio 2013\Projects\EXTLibrary\Debug'에 있는 'EXTLibrary.dll' 파일 '복사(Ctrl + C)'

 

5-2. 자신이 만든 프로젝트 경로에 '붙여넣기(Ctrl + V)'
(※ 필자의 프로젝트 경로는 'C:\Users\NAMENODE\Documents\Visual Studio 2013\Projects\UseEXTLibrary')

■ 소스 파일에 코드 작성 및 실행

 

1. 소스 코드 작성 및 실행

 

1-1. 'main,cpp'에 코드 작성

 

1-2. 'Solution platform' 확인

 

1-3. Build(F7) → Run(Ctrl + F5)

 

 

결론


이번에는 동일한 솔루션이 아닌 외부 프로젝트에서 DLL을 만들고, 만든 DLL을 자신이 사용하고자 하는 메인 프로젝트에 추가하여

 

사용하는 과정을 진행하였습니다.

 

감사합니다.