SymGetSymFromAddr 함수(dbghelp.h)
지정된 주소의 기호를 찾습니다.
구문
BOOL IMAGEAPI SymGetSymFromAddr(
[in] HANDLE hProcess,
[in] DWORD dwAddr,
[out, optional] PDWORD pdwDisplacement,
[in, out] PIMAGEHLP_SYMBOL Symbol
);
매개 변수
[in] hProcess
원래 SymInitialize 함수에 전달된 프로세스에 대한 핸들입니다.
[in] dwAddr
기호를 배치할 주소입니다. 주소가 기호 경계에 있을 필요는 없습니다. 주소가 기호의 시작 뒤와 기호의 끝(기호의 시작과 기호 크기) 앞에 오는 경우 기호가 발견됩니다.
[out, optional] pdwDisplacement
기호의 시작 부분에서의 변위 또는 0입니다.
[in, out] Symbol
IMAGEHLP_SYMBOL64 구조체에 대한 포인터입니다.
반환 값
함수가 성공하면 반환 값은 TRUE입니다.
함수가 실패하면 반환 값은 FALSE입니다. 확장된 오류 정보를 검색하려면 GetLastError를 호출합니다.
설명
SymGetSymFromAddr64 함수는 지정된 주소의 기호를 찾습니다. 모듈은 주소가 속한 모듈을 검색합니다. 모듈이 발견되면 해당 기호 테이블이 일치 항목을 검색합니다. 기호가 발견되면 기호 정보가 호출자가 제공하는 기호 버퍼에 복사됩니다. 호출자는 SymGetSymFromAddr64를 호출하기 전에 기호 버퍼를 올바르게 할당하고 IMAGEHLP_SYMBOL64 구조에서 필요한 매개 변수를 입력해야 합니다.
이 함수와 같은 모든 DbgHelp 함수는 단일 스레드입니다. 따라서 둘 이상의 스레드에서 이 함수로 호출하면 예기치 않은 동작이나 메모리 손상이 발생할 수 있습니다. 이를 방지하려면 둘 이상의 스레드에서 이 함수로의 모든 동시 호출을 동기화해야 합니다.
이 함수는 SymGetSymFromAddr 함수를 대체합니다. 자세한 내용은 업데이트된 플랫폼 지원을 참조하세요. SymGetSymFromAddr 은 Dbghelp.h에서 다음과 같이 정의됩니다.
#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymGetSymFromAddr SymGetSymFromAddr64
#else
BOOL
IMAGEAPI
SymGetSymFromAddr(
__in HANDLE hProcess,
__in DWORD dwAddr,
__out_opt PDWORD pdwDisplacement,
__inout PIMAGEHLP_SYMBOL Symbol
);
#endif
요구 사항
요구 사항 | 값 |
---|---|
대상 플랫폼 | Windows |
헤더 | dbghelp.h |
라이브러리 | Dbghelp.lib |
DLL | Dbghelp.dll |
재배포 가능 파일 | DbgHelp.dll 5.1 이상 |