내가 작성한 프로그램 (C#)은 C++/CLI 래퍼 라이브러리를 통해 액세스했습니다.이 라이브러리는 필자도 썼습니다.예기치 않게 동일한 응용 프로그램에서 Windows DLL이 두 번 이상로드됩니다.
네이티브 라이브러리의 DllMain 메서드가 두 번 이상 호출되었으며 디버거에서 여러 메모리 위치가 일부 라이브러리 호출에 연결되어 있다고 생각했습니다. 내가 본 것으로부터, 라이브러리는 두 번 이상 초기화 (그리고 메모리 할당)됩니다.
내 코드가 LoadLibrary와 같은 함수를 사용하지 않고 라이브러리의 .h 파일과 .lib를 포함하여 dll이 사용되는 경우 왜 두 번 이상 초기화되며이를 피하려면 어떻게해야합니까?
스택 추적을 게시하십시오. –