ISymUnmanagedWriter::GetDebugInfo 方法
向编译器返回必要信息,以便在可移植可执行 (PE) 文件的文件头中写入调试目录条目。 符号编写器填充除 TimeDateStamp
和 PointerToRawData
之外的所有字段。 (编译器负责正确设置这两个字段。)
编译器应调用此方法,将数据 blob 发出到 PE 文件,将 IMAGE_DEBUG_DIRECTORY 中的 PointerToRawData
字段设置为指向发出的数据,并将 IMAGE_DEBUG_DIRECTORY 写入 PE 文件。 编译器还应将 TimeDateStamp
字段设置为等同于正在生成的 PE 文件的 TimeDateStamp
。
语法
HRESULT GetDebugInfo(
[in, out] IMAGE_DEBUG_DIRECTORY *pIDD,
[in] DWORD cData,
[out] DWORD *pcData,
[out, size_is(cData),
length_is(*pcData)] BYTE data[]);
参数
pIDD
[in, out] 指向符号编写器将填充的 IMAGE_DEBUG_DIRECTORY 的指针。
cData
[in] 一个包含调试数据的大小的 DWORD
。
pcData
[out] 指向 DWORD
的指针,它接收包含调试数据所需的缓冲区大小。
data
[out] 指向缓冲区的指针,该缓冲区足够大,可为符号存储保存调试数据。
返回值
如果该方法成功,则返回 S_OK;否则返回 E_FAIL 或某种其他错误代码。
要求
标头:CorSym.idl、CorSym.h