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 之后可用