1. DLL(Dynamic Link Library)이란?

정의
- djvm
공유 MFC DLL을 사용하는 기본 DLL (Using shared MFC DLL)
: 배포시 자신의 DLL과 MFC 공유 DLL을 같이 제공 -> 어플리케이션이 MFC이외의 경우에도 사용가능
  C언어 기반의 인터페이스제공 필요.

프로그램에 공유 DLL로 MFC 라이브러리를 연결하려면 이 옵션을 선택합니다. 이 옵션을 사용하면 DLL과 호출하는 응용 프로그램 간에 MFC 개체를 공유할 수 없습니다. 프로그램에서는 런타임에 MFC라이브러리를 호출합니다. 이 옵션을 선택하면 MFC 라이브러리를 사용하는 여러 개의 실행 파일로 구성된 프로그램에 대한 디스크 및 메모리 요구 사항이 줄어듭니다.
Win32 및 MFC 프로그램 모두 DLL에서 함수를 호출할 수 있습니다. 이러한 형식의 프로젝트로 MFC DLL을 다시 배포해야 합니다.


MFC를 정적으로 링크한 기본 DLL (Statically Linked MFC DLL)
: 배포시 자신의 DLL만 제공 가능

빌드할 때 프로그램을 MFC 라이브러리에 정적으로 연결하려면 이 옵션을 선택합니다. Win32 및 MFC 프로그램 모두
DLL에서 함수를 호출할 수 있습니다. 이 옵션을 사용하면 프로그램 크기가 커지지만 이러한 형식의 프로젝트로 MFC DLL을 다시 배포할 필요가 없습니다. DLL과 호출하는 응용 프로그램 간에 MFC 객체를 공유할 수 없습니다.


MFC 확장 DLL (Using Shared MFC DLL)
: MFC로 작성된 어플리케이션에서만 사용 가능

프로그램에서 런타임에 MFC 라이브러리를 호출하고 DLL과 호출하는 응용 프로그램 사이에 MFC 개체를 공유하도록 하려면 이 옵션을 선택합니다. 이 옵션을 사용하면 MFC 라이브러리를 사용하는 여러개의 실행 파일로 구성된 프로그램에 대한 디스크 및 메모리 요구 사항이 줄어듭니다. MFC 프로그램만 DLL에서 함수를 호출할 수 있습니다. 이러한 형식의 프로젝트로 MFC DLL을 다시 배포해야 합니다.




Posted by RoaZium