디버그 DLL
DLL에서 인터페이스 함수 정의하기
Prexport int __stdcall sort(int i,int j);
에 있습니다.DEF 파일의 인터페이스 함수 선언
LIBRARY "func"
EXPORTS
sort
1 Dll에서 디버깅 수행
디버깅을 위해 DLL 설계
필요
【프로젝트】->【속성】->【속성 설정】->【디버깅】
[명령] 옵션에서 디버깅을 위해 이 DLL을 호출하는 EXE 실행 프로그램을 선택합니다.
2 EXE 실행 프로그램에서 DLL 디버깅
HINSTANCE hInst;
hInst=LoadLibrary(L"funk.dll");
typedef int (__stdcall *LPADDPROC)(int i,int j);
LPADDPROC pSort=(LPADDPROC)GetProcAddress(hInst,"sort");
if (pSort)
sort(3,5);
FreeLibrary(hInst);
1) 먼저 DLL 프로젝트를 EXE 프로젝트와 동일한 솔루션에 추가해야 함
2) 동일한 솔루션에 추가한 후 EXE가 올바른 DLL을 호출하도록 각각 재생성
3) 디버깅 중에 DLL이 수정된 경우 DLL을 재생성한 후 다시 디버깅해야 합니다. 그렇지 않으면 이전 버전의 오래된 DLL을 사용해야 합니다.
참고: DLL 디버그에서 DLL 수정 사항이 재생성되면 EXE에서 호출한 DLL을 동기화해야 합니다. 그렇지 않으면 EXE는 원래 업데이트되지 않은 DLL을 호출합니다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
LoadLibrary에서 126 오류가 발생하면 원인이되는 파일 이름을 찾는 방법Loadlibrary에서 DLL을 동적으로 로드할 때 로드 실패입니다. 실패한 파일 이름은 알려주지 않습니다. 로드하고자 하는 DLL 자체를 로드할 수 없다면 이야기는 간단하지만, 대상 DLL이 다른 DLL을 로드하...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.