상세 컨텐츠

본문 제목

MFC 확장 DLL 프로젝트 생성하기

컴퓨터 언어/MFC

by cepiloth 2021. 9. 23. 18:29

본문

728x90
반응형

1. MFC 확장 DLL에 포함된 다이얼로그를 생성할때 Create() 에서 실패하는 경우에 참고할 점

2. [컴퓨터 언어/MFC] - MFC SDI 프로젝트 생성하기

 

새 프로젝트 추가 - 동적 연결 라이브러리 선택합니다.

 

DLL 형식을 MFC 확장 DLL로 선택합니다. 

 MFC 공유 DLL, 정적 DLL 등 여러 선택 방식이 있는데 크게는 컴퓨터 내에 있는 DLL을 사용 여부이다. 만약 사용자의 컴퓨터에 DLL 이 없다면 사용자가 따로 설치해야 한다. 정적 DLL 은 컴파일 타임에 모든 DLL을 포함해서 EXE 만든다. 이것 때문에 배포 시 용량이 커진다. 자세한 사항은 https://izen8.tistory.com/360 블로그를 참고 바란다.

 

생성이 완료되면 아래처럼 파일을 추가한다.

프로젝트 생성후 Header 파일을 임의의 이름으로 만든다.

 

헤더 파일에 아래 함수를 추가한다.

#pragma once

#ifdef DLL_BITCOIN 
#define DLL_BITCOIN _declspec(dllexport) 
#else 
#define DLL_BITCOIN __declspec(dllimport) 
#endif 

DLL_BITCOIN int Gazya( int iX, int iY );

 

그리고 dllmain.cpp 맨 아래 아래와 같이 입력합니다.(입력 부분 잘 보고 입력하세요.)

 

이제 ApplicationView.cpp로 가서 BitCoinFunction.h를 include 합니다.(입력 부분 잘보고 입력하세요.)

 

 이 상태로 빌드(F7) 해도 빌드가 되지 않습니다. 프로젝트 우클릭 -> 속성에서 구성 속성 -> 링커 -> 일반에 있는 추가 라이브러리 디렉터리에다가 아래와 같이 입력합니다.

 

ApplicationView에서 메시지 처리기를 등록합니다. View 객체를 클릭했을 때 동작하도록 OnLButtonDown 이벤트를 등록하였습니다.

 

DLL에 있는 함수를 사용하기 위해서 아래처럼 테스트 코드를 작성합니다.

 

Application에서 실행 시 아래처럼 나옵니다.

Reference

https://social.msdn.microsoft.com/Forums/ko-KR/ba6bfe1c-8f80-45ea-809b-ec543dd6dc31/4427750976-dll5064049436-mfc-4932450857-vs-5122151201?forum=asppnetko 

https://3001ssw.tistory.com/24

728x90
반응형

관련글 더보기

댓글 영역