다음을 통해 공유


IMAGE_DEBUG_INFORMATION 구조체(dbghelp.h)

디버깅 정보를 포함합니다.

참고 이 구조체는 이전 버전과의 호환성을 위해서만 제공되는 MapDebugInformationUnmapDebugInformation 함수에서 사용됩니다.
 

구문

typedef struct _IMAGE_DEBUG_INFORMATION {
  LIST_ENTRY                 List;
  DWORD                      ReservedSize;
  PVOID                      ReservedMappedBase;
  USHORT                     ReservedMachine;
  USHORT                     ReservedCharacteristics;
  DWORD                      ReservedCheckSum;
  DWORD                      ImageBase;
  DWORD                      SizeOfImage;
  DWORD                      ReservedNumberOfSections;
  PIMAGE_SECTION_HEADER      ReservedSections;
  DWORD                      ReservedExportedNamesSize;
  PSTR                       ReservedExportedNames;
  DWORD                      ReservedNumberOfFunctionTableEntries;
  PIMAGE_FUNCTION_ENTRY      ReservedFunctionTableEntries;
  DWORD                      ReservedLowestFunctionStartingAddress;
  DWORD                      ReservedHighestFunctionEndingAddress;
  DWORD                      ReservedNumberOfFpoTableEntries;
  PFPO_DATA                  ReservedFpoTableEntries;
  DWORD                      SizeOfCoffSymbols;
  PIMAGE_COFF_SYMBOLS_HEADER CoffSymbols;
  DWORD                      ReservedSizeOfCodeViewSymbols;
  PVOID                      ReservedCodeViewSymbols;
  PSTR                       ImageFilePath;
  PSTR                       ImageFileName;
  PSTR                       ReservedDebugFilePath;
  DWORD                      ReservedTimeDateStamp;
  BOOL                       ReservedRomImage;
  PIMAGE_DEBUG_DIRECTORY     ReservedDebugDirectory;
  DWORD                      ReservedNumberOfDebugDirectories;
  DWORD                      ReservedOriginalFunctionTableBaseAddress;
  DWORD                      Reserved[2];
} IMAGE_DEBUG_INFORMATION, *PIMAGE_DEBUG_INFORMATION;

멤버

List

LIST_ENTRY 구조체의 연결된 목록입니다.

ReservedSize

IMAGE_DEBUG_INFORMATION 구조체 및 모든 디버깅 정보에 할당된 메모리의 크기(바이트)입니다.

ReservedMappedBase

이미지의 기본 주소입니다.

ReservedMachine

컴퓨터 유형입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
IMAGE_FILE_MACHINE_I386
0x014c
Intel(32비트)
IMAGE_FILE_MACHINE_IA64
0x0200
Intel Itanium
IMAGE_FILE_MACHINE_AMD64
0x8664
x64(AMD64 또는 EM64T)

ReservedCharacteristics

이미지의 특성입니다. 이 멤버는 다음 값 중 하나일 수 있습니다.

의미
IMAGE_FILE_RELOCS_STRIPPED
0x0001
재배치 정보가 파일에서 제거됩니다.
IMAGE_FILE_EXECUTABLE_IMAGE
0x0002
파일은 실행 파일입니다(해결되지 않은 외부 참조가 없음).
IMAGE_FILE_LINE_NUMS_STRIPPED
0x0004
줄 번호가 파일에서 제거됩니다.
IMAGE_FILE_LOCAL_SYMS_STRIPPED
0x0008
로컬 기호가 파일에서 제거됩니다.
IMAGE_FILE_AGGRESIVE_WS_TRIM
0x0010
작업 집합을 적극적으로 트리밍합니다.
IMAGE_FILE_LARGE_ADDRESS_AWARE
0x0020
애플리케이션은 2GB보다 큰 주소를 처리할 수 있습니다.
IMAGE_FILE_BYTES_REVERSED_LO
0x0080
단어의 바이트가 반전됩니다.
IMAGE_FILE_32BIT_MACHINE
0x0100
컴퓨터는 32비트 단어를 지원합니다.
IMAGE_FILE_DEBUG_STRIPPED
0x0200
디버깅 정보는 .dbg 파일에 별도로 저장됩니다.
IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP
0x0400
이미지가 이동식 미디어에 있는 경우 교환 파일에서 복사하여 실행합니다.
IMAGE_FILE_NET_RUN_FROM_SWAP
0x0800
이미지가 네트워크에 있는 경우 교환 파일에서 복사하여 실행합니다.
IMAGE_FILE_SYSTEM
0x1000
시스템 파일입니다.
IMAGE_FILE_DLL
0x2000
DLL 파일.
IMAGE_FILE_UP_SYSTEM_ONLY
0x4000
파일은 유니프로세서 컴퓨터에서만 실행되어야 합니다.
IMAGE_FILE_BYTES_REVERSED_HI
0x8000
단어의 바이트가 반전됩니다.

ReservedCheckSum

이미지의 체크섬입니다.

ImageBase

이미지의 요청된 기본 주소입니다.

SizeOfImage

이미지의 크기(바이트)입니다.

ReservedNumberOfSections

COFF 섹션 헤더의 수입니다.

ReservedSections

첫 번째 COFF 섹션 헤더에 대한 포인터입니다. 자세한 내용은 IMAGE_SECTION_HEADER 참조하세요.

ReservedExportedNamesSize

ExportedNames 멤버의 크기(바이트)입니다.

ReservedExportedNames

이미지에서 내보낸 모든 함수의 이름을 지정하는 일련의 null로 끝나는 문자열에 대한 포인터입니다.

ReservedNumberOfFunctionTableEntries

FunctionTableEntries 멤버에 포함된 항목 수입니다.

ReservedFunctionTableEntries

첫 번째 함수 테이블 항목에 대한 포인터입니다. 자세한 내용은 IMAGE_FUNCTION_ENTRY.

ReservedLowestFunctionStartingAddress

가장 낮은 함수 테이블 시작 주소입니다.

ReservedHighestFunctionEndingAddress

가장 높은 함수 테이블 끝 주소입니다.

ReservedNumberOfFpoTableEntries

FpoTableEntries 멤버에 포함된 항목 수입니다.

ReservedFpoTableEntries

첫 번째 FPO 항목에 대한 포인터입니다. 자세한 내용은 FPO_DATA.

SizeOfCoffSymbols

COFF 기호 테이블의 크기(바이트)입니다.

CoffSymbols

COFF 기호 테이블에 대한 포인터입니다.

ReservedSizeOfCodeViewSymbols

CodeView 기호 테이블의 크기(바이트)입니다.

ReservedCodeViewSymbols

CodeView 기호 테이블의 시작 부분에 대한 포인터입니다.

ImageFilePath

이미지 파일 이름의 상대 경로입니다.

ImageFileName

이미지 파일 이름입니다.

ReservedDebugFilePath

기호 파일의 전체 경로입니다.

ReservedTimeDateStamp

이미지의 타임스탬프입니다. 링커에서 이미지를 만든 날짜와 시간을 나타냅니다.

ReservedRomImage

이미지가 ROM 이미지인 경우 이 값은 TRUE 입니다.

ReservedDebugDirectory

첫 번째 디버그 디렉터리에 대한 포인터입니다. 자세한 내용은 IMAGE_DEBUG_DIRECTORY.

ReservedNumberOfDebugDirectories

DebugDirectory 멤버에 포함된 항목 수입니다.

ReservedOriginalFunctionTableBaseAddress

원래 함수 테이블 기본 주소입니다.

Reserved[2]

이 멤버는 운영 체제에서 사용하도록 예약되어 있습니다.

설명

LIST_ENTRY 구조체는 다음과 같이 정의됩니다.

typedef struct _LIST_ENTRY {
   struct _LIST_ENTRY *Flink;
   struct _LIST_ENTRY *Blink;
} LIST_ENTRY, *PLIST_ENTRY, *RESTRICTED_POINTER PRLIST_ENTRY;

요구 사항

요구 사항
헤더 dbghelp.h
재배포 가능 파일 DbgHelp.dll 5.1 이상

추가 정보

FPO_DATA

IMAGE_COFF_SYMBOLS_HEADER

IMAGE_DEBUG_DIRECTORY

IMAGE_FUNCTION_ENTRY

IMAGE_SECTION_HEADER

MapDebugInformation

UnmapDebugInformation