다음을 통해 공유


SymRegisterCallback 함수(dbghelp.h)

기호 처리기에서 사용할 콜백 함수를 등록합니다.

구문

BOOL IMAGEAPI SymRegisterCallback(
  [in] HANDLE                      hProcess,
  [in] PSYMBOL_REGISTERED_CALLBACK CallbackFunction,
  [in] PVOID                       UserContext
);

매개 변수

[in] hProcess

원래 SymInitialize 함수에 전달된 프로세스에 대한 핸들입니다.

[in] CallbackFunction

SymRegisterCallbackProc64 콜백 함수입니다.

[in] UserContext

사용자 정의 값 또는 NULL입니다. 이 값은 콜백 함수에 전달됩니다. 일반적으로 이 매개 변수는 애플리케이션에서 콜백 함수가 일부 컨텍스트를 설정할 수 있는 데이터 구조에 대한 포인터를 전달하는 데 사용됩니다.

반환 값

함수가 성공하면 반환 값은 TRUE입니다.

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

설명

SymRegisterCallback64 함수를 사용하면 애플리케이션이 기호 처리기에서 사용할 콜백 함수를 등록할 수 있습니다. 기호 처리기는 애플리케이션에 대한 상태 또는 진행률 정보가 있는 경우 등록된 콜백 함수를 호출합니다.

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

이 함수의 유니코드 버전을 호출하려면 DBGHELP_TRANSLATE_TCHAR 정의합니다. SymRegisterCallbackW64 는 Dbghelp.h에서 다음과 같이 정의됩니다.

BOOL
IMAGEAPI
SymRegisterCallbackW64(
    __in HANDLE hProcess,
    __in PSYMBOL_REGISTERED_CALLBACK64 CallbackFunction,
    __in ULONG64 UserContext
    );

#ifdef DBGHELP_TRANSLATE_TCHAR
#define SymRegisterCallback64   SymRegisterCallbackW64
#endif

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

#if !defined(_IMAGEHLP_SOURCE_) && defined(_IMAGEHLP64)
#define SymRegisterCallback SymRegisterCallback64
#else
BOOL
IMAGEAPI
SymRegisterCallback(
    __in HANDLE hProcess,
    __in PSYMBOL_REGISTERED_CALLBACK CallbackFunction,
    __in_opt PVOID UserContext
    );
#endif

보다 광범위한 예제는 알림 받기를 참조하세요.

요구 사항

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

추가 정보

DbgHelp 함수

알림 받기

SymInitialize

SymRegisterCallbackProc64