다음을 통해 공유


ICorDebugMetaDataLocator::GetMetaData 메서드

디버거에서 요청한 작업을 완료하는 데 필요한 메타데이터가 있는 모듈의 전체 경로를 반환하도록 디버거에 요청합니다.

HRESULT GetMetaData(
      [in] LPCWSTR wszImagePath,
      [in] DWORD   dwImageTimeStamp,
      [in] DWORD   dwImageSize,
      [in] ULONG32 cchPathBuffer,
      [out] ULONG32 * pcchPathBuffer,
      [out, size_is(cchPathBuffer), length_is(*pcchPathBuffer)]
               WCHAR wszPathBuffer[]
      );

매개 변수

  • wszImagePath
    [in] 파일의 전체 경로를 나타내는 null로 종결되는 문자열입니다. 전체 경로를 사용할 없는 경우에는 파일의 이름과 확장명(filename.extension)입니다.

  • dwImageTimeStamp
    [in] PE 파일 헤더에서 가져온 이미지의 타임 스탬프입니다. 이 매개 변수는 기호 서버(SymSrv) 조회에 사용될 수도 있습니다.

  • dwImageSize
    [in] PE 파일 헤더에서 가져온 이미지 크기입니다. 이 매개 변수는 SymSrv 조회에 사용될 수도 있습니다.

  • cchPathBuffer
    [in] wszPathBuffer의 문자 수입니다.

  • pcchPathBuffer
    [out] wszPathBuffer에 기록된 WCHAR 수입니다.

    이 메서드가 E_NOT_SUFFICIENT_BUFFER를 반환할 경우 경로를 저장하는 데 필요한 WCHAR의 수가 포함됩니다.

  • wszPathBuffer
    [out] 디버거에서 요청된 메타데이터가 들어 있는 파일의 전체 경로를 복사할 버퍼에 대한 포인터입니다.

    CorOpenFlags 열거형의 ofReadOnly 플래그는 이 파일의 메타데이터에 대한 읽기 전용 액세스 권한을 요청하는 데 사용됩니다.

반환 값

이 메서드는 메서드 오류를 나타내는 HRESULT 오류뿐만 아니라 다음과 같은 특정 HRESULT를 반환합니다. 다른 모든 HRESULT 오류는 이 파일을 검색할 수 없음을 나타냅니다.

HRESULT

설명

S_OK

메서드가 성공적으로 완료되었습니다. wszPathBuffer가 파일의 전체 경로를 포함하며 null로 종결됩니다.

E_NOT_SUFFICIENT_BUFFER

wszPathBuffer의 현재 크기가 작아 전체 경로를 포함할 수 없습니다. 이 경우 pcchPathBuffer에 null 종결 문자를 포함하여 필요한 수의 WCHAR이 포함되고 GetMetaData가 요청된 버퍼 크기로 다시 호출됩니다.

설명

wszImagePath에 덤프에서 가져온 모듈의 전체 경로가 포함되어 있으면 덤프가 수집된 컴퓨터의 경로도 지정됩니다. 이 위치에는 이 파일이 없을 수도 있고 이름이 같은 잘못된 파일이 저장될 수도 있습니다.

요구 사항

플랫폼: .NET Framework 시스템 요구 사항 참조

헤더: CorDebug.idl, CorDebug.h

라이브러리: CorGuids.lib

.NET Framework 버전: 4

참고 항목

참조

ICorDebugThread4 인터페이스

기타 리소스

디버깅 인터페이스

디버깅(관리되지 않는 API 참조)