Метод ISymUnmanagedWriter::GetDebugInfo
Возвращает сведения, необходимые компилятору для записи записи в каталог отладки в заголовке переносимого исполняемого (PE) файла. Модуль записи символов заполняет все поля, TimeDateStamp
кроме и PointerToRawData
. (Компилятор отвечает за установку этих двух полей соответствующим образом.)
Компилятор должен вызвать этот метод, отправить большой двоичный объект данных в PE-файл, задать PointerToRawData
поле в IMAGE_DEBUG_DIRECTORY, чтобы указать на созданные данные, и записать IMAGE_DEBUG_DIRECTORY в PE-файл. Компилятор также должен задать TimeDateStamp
для поля значение , равное TimeDateStamp
создаваемому PE-файлу.
Синтаксис
HRESULT GetDebugInfo(
[in, out] IMAGE_DEBUG_DIRECTORY *pIDD,
[in] DWORD cData,
[out] DWORD *pcData,
[out, size_is(cData),
length_is(*pcData)] BYTE data[]);
Параметры
pIDD
[вход, выход] Указатель на IMAGE_DEBUG_DIRECTORY, который будет заполнять модуль записи символов.
cData
[in] Объект DWORD
, содержащий размер отладочных данных.
pcData
[out] Указатель на DWORD
объект , который получает размер буфера, необходимый для хранения отладочных данных.
data
[out] Указатель на буфер, который достаточно велик для хранения отладочных данных для хранилища символов.
Возвращаемое значение
S_OK, если метод выполнен успешно; в противном случае E_FAIL или другой код ошибки.
Требования
Заголовка: CorSym.idl, CorSym.h