다음을 통해 공유


SymLoadModule 함수(dbghelp.h)

기호 테이블을 로드합니다.

이 함수는 SymLoadModuleEx 함수로 대체되었습니다.

구문

DWORD IMAGEAPI SymLoadModule(
  [in]           HANDLE hProcess,
  [in, optional] HANDLE hFile,
  [in, optional] PCSTR  ImageName,
  [in, optional] PCSTR  ModuleName,
  [in]           DWORD  BaseOfDll,
  [in]           DWORD  SizeOfDll
);

매개 변수

[in] hProcess

프로세스에 대한 핸들입니다. 이 핸들은 이전에 SymInitialize 함수에 전달되어야 합니다.

[in, optional] hFile

실행 파일 이미지에 대한 파일에 대한 핸들입니다. 이 인수는 디버거가 디버깅 이벤트에서 가져온 파일 핸들을 전달하는 디버거에서 주로 사용됩니다. NULL 값은 hFile이 사용되지 않음을 나타냅니다.

[in, optional] ImageName

실행 파일 이미지의 이름입니다. 이 이름에는 부분 경로, 전체 경로 또는 경로가 전혀 포함될 수 없습니다. 제공된 이름으로 파일을 찾을 수 없는 경우 기호 검색 경로가 사용됩니다.

[in, optional] ModuleName

모듈의 바로 가기 이름입니다. 포인터 값이 NULL이면 라이브러리는 기호 파일의 기본 이름을 사용하여 이름을 만듭니다.

[in] BaseOfDll

모듈의 로드 주소입니다. 값이 0이면 라이브러리는 기호 파일에서 부하 주소를 가져옵니다. 기호 파일에 포함된 로드 주소가 반드시 실제 부하 주소가 아닐 수도 있습니다. 디버거 및 실제 부하 주소가 있는 다른 애플리케이션은 이 함수를 호출할 때 실제 부하 주소를 사용해야 합니다.

이미지가 .pdb 파일인 경우 이 매개 변수는 0일 수 없습니다.

[in] SizeOfDll

모듈의 크기(바이트)입니다. 값이 0이면 라이브러리는 기호 파일에서 크기를 가져옵니다. 기호 파일에 포함된 크기가 반드시 실제 크기일 필요는 없습니다. 디버거 및 실제 크기가 있는 다른 애플리케이션은 이 함수를 호출할 때 실제 크기를 사용해야 합니다.

이미지가 .pdb 파일인 경우 이 매개 변수는 0일 수 없습니다.

반환 값

함수가 성공하면 반환 값은 로드된 모듈의 기본 주소입니다.

함수가 실패하면 반환 값은 0입니다. 확장된 오류 정보를 검색하려면 GetLastError를 호출합니다.

모듈이 이미 로드된 경우 반환 값은 0이고 GetLastErrorERROR_SUCCESS 반환합니다.

설명

기호 처리기는 모듈에 대한 항목을 만들고 지연된 기호 로드 옵션이 꺼져 있으면 기호를 로드하려고 시도합니다. 지연된 기호 로드를 사용하도록 설정하면 모듈이 지연된 것으로 표시되고 모듈의 기호에 대한 참조가 생성될 때까지 기호가 로드되지 않습니다.

기호 테이블을 언로드하려면 SymUnloadModule64 함수를 사용합니다.

이 함수와 같은 모든 DbgHelp 함수는 단일 스레드입니다. 따라서 둘 이상의 스레드에서 이 함수로 호출하면 예기치 않은 동작이나 메모리 손상이 발생할 수 있습니다. 이를 방지하려면 둘 이상의 스레드에서 이 함수로의 모든 동시 호출을 동기화해야 합니다.

이 함수는 SymLoadModule 함수를 대체합니다. 자세한 내용은 업데이트된 플랫폼 지원을 참조하세요. SymLoadModule 은 DbgHelp.h에서 다음과 같이 정의됩니다.

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymLoadModule SymLoadModule64
#else
DWORD
IMAGEAPI
SymLoadModule(
    __in HANDLE hProcess,
    __in_opt HANDLE hFile,
    __in_opt PCSTR ImageName,
    __in_opt PCSTR ModuleName,
    __in DWORD BaseOfDll,
    __in DWORD SizeOfDll
    );
#endif

요구 사항

   
대상 플랫폼 Windows
헤더 dbghelp.h
라이브러리 Dbghelp.lib
DLL Dbghelp.dll
재배포 가능 파일 DbgHelp.dll 5.1 이상

추가 정보

DbgHelp 함수

SymInitialize

SymUnloadModule64