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에서 실행 시 아래처럼 나옵니다.
MFC SDI 프로젝트 생성하기 (0) | 2021.09.23 |
---|---|
MFC 확장 DLL에 포함된 다이얼로그를 생성할때 Create() 에서 실패하는 경우에 참고할 점 (0) | 2021.09.23 |
MFC - SendMessage & PostMessage 의 차이점 (0) | 2018.12.03 |
댓글 영역