지크님의 블로그 | 지크
http://blog.naver.com/kji780929/110010052760
오후 1:05 2001-12-13
조경민 MFC DLL Debug/Release 구분해서 하기
============================================================
Test.DLL 프로젝트를 만들면
Test.def라는 파일이 있다.
디버그 버전을 위해
이를 Testd.def로 바꾸고 내부에
Debug/Test.dll을
Debug/Testd.dll로 바꾼다.
그리고 아래 def 연결을
/def:test.def를
/def:testd.def로 바꿔준다.
batch Build All을 해서
클라이언트는 위의 파일들을 받아서 프로젝트 폴더에 놓기만 하면된다.
클라이언트에서 쓸 수 있게 배포용 헤더파일(h)에
http://blog.naver.com/kji780929/110010052760
MFC dll 보시면 MFC42.dll과 MFC42D.dll이 있죠? D가 붙은건 DEBUG 버전의 DLL이예요.
아래는 이렇게 만드는걸 쉽게 하는 방법을 적은것입니다.
오후 1:05 2001-12-13
조경민 MFC DLL Debug/Release 구분해서 하기
============================================================
Test.DLL 프로젝트를 만들면
Test.def라는 파일이 있다.
디버그 버전을 위해
이를 Testd.def로 바꾸고 내부에
; Test.def : Declares the module parameters for the DLL.
LIBRARY "Testd" <- d를 붙여준다.
DESCRIPTION 'Testd Windows Dynamic Link Library' <- d를 붙여준다.
EXPORTS
; Explicit exports can go here
그리고 Project/Setting에서 Debug에 대해 Link탭에서Debug/Test.dll을
Debug/Testd.dll로 바꾼다.
그리고 아래 def 연결을
/def:test.def를
/def:testd.def로 바꿔준다.
batch Build All을 해서
-
Debug/testd.lib
Debug/testd.dll
Release/test.lib
Release/test.dll
클라이언트는 위의 파일들을 받아서 프로젝트 폴더에 놓기만 하면된다.
클라이언트에서 쓸 수 있게 배포용 헤더파일(h)에
#ifndef _BRO_FSMONITOR_DEVELOP
// test 클라이언트에서 쓰는 모드
#ifdef _DEBUG
#pragma comment(lib,"Testd")
#else
#pragma comment(lib,"Test")
#endif
#endif
를 넣어주면 클라이언트는 그냥 헤더파일만 가져다 쓰면 클라이언트가 debug이면 testd.lib와 testd.dll이 로드되게된다.
댓글
댓글 쓰기