다음을 통해 공유


ICorDebugModule3::CreateReaderForInMemorySymbols 메서드

동적 모듈에 대한 디버그 기호 판독기를 만듭니다.

구문

HRESULT CreateReaderForInMemorySymbols (
      [in] REFIID riid,
      [out][iid_is(riid)] void **    ppObj

매개 변수

riid [in] 반환할 COM 인터페이스의 IID입니다. 일반적으로 ISymUnmanagedReader 인터페이스입니다.

ppObj [out] 반환된 인터페이스에 대한 포인터에 대한 포인터입니다.

Return Value

S_OK 판독기를 만들었습니다.

CORDBG_E_MODULE_LOADED_FROM_DISK 모듈이 메모리 내 또는 동적 모듈이 아닙니다.

CORDBG_E_SYMBOLS_NOT_AVAILABLE 기호는 애플리케이션에서 제공되지 않았거나 아직 사용할 수 없습니다.

E_FAIL(또는 다른 E_ 반환 코드) 판독기를 만들 수 없습니다.

설명

이 메서드는 메모리 내(동적이 아닌) 모듈에 대한 기호 판독기 개체를 만드는 데 사용할 수도 있지만, 기호가 처음 제공된 후에만 사용할 수 있습니다(UpdateModuleSymbols 메서드 콜백에 의해 표시됨).

이 메서드는 호출될 때마다 새 판독기 인스턴스를 반환합니다(예: CComPtrBase::CoCreateInstance). 따라서 디버거는 결과를 캐시하고 기본 데이터가 변경되었을 수 있는 경우(즉, LoadClass 메서드 콜백이 수신된 경우)에만 새 인스턴스를 요청해야 합니다.

동적 모듈에는 첫 번째 형식이 로드될 때까지 사용할 수 있는 기호가 없습니다(LoadClass 메서드 콜백에 의해 표시됨).

요구 사항

플랫폼:시스템 요구 사항을 참조하세요.

헤더: CorDebug.idl, CorDebug.h

라이브러리: CorGuids.lib

.NET Framework 버전: 4.5, 4, 3.5 SP1

참고 항목