개요

 

 DLL 의 Implicit Linking 시 Delay Load 되게 하는 설정.

 설명.

 Application에서 Immplicit Linking 방식으로 DLL 로딩하게되면 , Application 구동초기 해당 DLL로딩처리가 이뤄진다.

 Implicit Linking 에 부가하여 Delay Loading 방식 적용하면 DLL 의 함수가 첫 호출되는 시점에 로딩처리 이뤄진다.

 

 관련.

 Implicit Linking  방식 DLL로딩 : http://igotit.tistory.com/471


 

 


 

Delay Loading DLL

 


통상 Implicit Linking 으로 DLL로딩시키는 아래 구문에서 파랑색 부분 추가하면 됨.

 

#pragma comment(lib, "delayimp.lib")  // delayimp.lib  implicit linking 설정. 

#pragma comment(linker, "/DELAYLOAD:user32.dll")  // user32.dll 을 지연로딩한다는 설정.


#pragma comment(lib, "user32")  


 Visual Studio 프로젝트 설정에서 Linker 옵션에서 주는 방식도 있으나, 상기 방식으로 설정하는 것과 동일한 작용임.
 
 상세.
 MSDN 관련 설명들.
 1. 링커의 지연 로드된 DLL 지원 https://msdn.microsoft.com/ko-kr/library/151kt790.aspx

 


 


///1258.


Posted by 리치굿맨

댓글을 달아 주세요