ICLRDataTarget3::GetExceptionRecord 方法

由公共语言运行时 (CLR) 数据访问服务调用,以检索与目标进程关联的异常记录。 例如,对于转储目标,这等同于异常记录通过 ExceptionParam 参数传递到 Windows 调试帮助库 (DbgHelp) 中的 MiniDumpWriteDump 函数。

语法

HRESULT GetExceptionRecord(  
    [in] ULONG32 bufferSize,  
    [out] ULONG32* bufferUsed,  
    [out, size_is(bufferSize] BYTE* buffer  
);  

参数

bufferSize
[in] 输入缓冲区大小(以字节为单位)。 该值必须等同于 sizeof(MINIDUMP_EXCEPTION)

bufferUsed
[out] 指向接收实际写入缓冲区的字节数的 ULONG32 类型的指针。

buffer
[out] 指向接收异常记录副本的内存缓冲区的指针。 异常记录以 MINIDUMP_EXCEPTION 类型返回

返回值

如果成功,则返回值是 S_OK;如果失败,则返回失败 HRESULT 代码。 HRESULT 代码可以包括但不限于以下代码:

返回代码 说明
S_OK 方法成功。 已将异常记录复制到输出缓冲区。
HRESULT_FROM_WIN32(ERROR_NOT_FOUND) 没有与目标关联的异常记录。
HRESULT_FROM_WIN32(ERROR_BAD_LENGTH) 输入缓冲区大小不等于 sizeof(MINIDUMP_EXCEPTION)

备注

MINIDUMP_EXCEPTION 是在 Windows SDK 的 dbghelp.h 和 imagehlp.h 中定义的结构。

此方法由调试应用程序的编写器实现。

要求

平台:请参阅系统要求

标头:ClrData.idl、ClrData.h

库:CorGuids.lib

.NET Framework 版本:自 2013 年 11 月更新至 4.5.1 之后可用

请参阅