ISymUnmanagedWriter::GetDebugInfo 方法

向编译器返回必要信息,以便在可移植可执行 (PE) 文件的文件头中写入调试目录条目。 符号编写器填充除 TimeDateStampPointerToRawData 之外的所有字段。 (编译器负责正确设置这两个字段。)

编译器应调用此方法,将数据 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

请参阅