Windows/DLL,MFC
[DLL 만들기] 5. DLL을 load하여 동작 확인 해보기. (MFC 기준)
별빛의온기
2022. 10. 21. 15:42
반응형
이제 DLL을 로드하도록 하겠습니다.
1. 다이얼로그 소스 코드에서 TestAppDlg.cpp 상단에 아래와 같은 소스를 넣습니다.
//TestAppDlg.cpp
//아래 추가
#include "../DLLTest/test.h"
#ifdef _X86_
#pragma comment(lib, "../Debug/DLLTest.lib")
#else
#pragma comment(lib, "../Debug/DLLTest.lib")
#endif
위와 같이 소스 코드를 넣어도 되고 TestApp 프로젝트 속성에다가 입력을 해도 무관합니다.


2. 그리고 이전에 생성했던 버튼 이벤트 메소드에 다음과 같은 소스를 넣습니다.
//TestAppDlg.cpp
void CTestAppDlg::OnBnClickedBtnPrint()
{
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
TestPrint(); //실수다 ㅠㅠ
}
void CTestAppDlg::OnBnClickedBtnAdd()
{
// TODO: 여기에 컨트롤 알림 처리기 코드를 추가합니다.
CString text;
text.Format(_T("더한 결과 : %d"), Add(4, 10));
m_ststic_test.SetWindowText(text);
}
참고로 TestPrint() 함수는 동작하지 않습니다 ^^;; 쓸대없이 내부에서 print를 하게 만들었네요...
3. 그리고 컴파일을하여 실행합니다. 이후 더하기 결과를 클릭하면 다음과 같이 DLL 내부 함수를 호출하여 더하기 연산을 진행하였음을 확인 할 수 있습니다.

DLL을 생성하고 테스트 하는 방법은 이렇게 어렵지 않습니다.
__declspec(dllexport) 로 정의한 함수만 외부에서 호출 할 수 있다는점만 아시면 손쉽게 생성이 가능합니다.
감사합니다!
반응형