WerRegisterMemoryBlock 函数 (werapi.h)
注册Windows 错误报告 ( WER) 创建错误报告时要收集的内存块。
语法
HRESULT WerRegisterMemoryBlock(
[in] PVOID pvAddress,
[in] DWORD dwSize
);
参数
[in] pvAddress
内存块的起始地址。
[in] dwSize
内存块的大小(以字节为单位)。 此参数的最大值为 WER_MAX_MEM_BLOCK_SIZE 字节。
返回值
此函数在成功时返回 S_OK 或失败时返回错误代码,包括以下错误代码。
返回代码 | 说明 |
---|---|
WER_E_INVALID_STATE | 进程状态无效。 例如,进程处于应用程序恢复模式。 |
HRESULT_FROM_WIN32(ERROR_INSUFFICIENT_BUFFER) | 已注册的内存块和文件数超出了限制。 |
注解
使用此函数注册的内存仅添加到堆或更大的转储文件中。 此内存永远不会添加到小型转储或较小的转储文件中。
对于崩溃且无响应,操作系统会自动提供错误报告, (无需在应用程序) 提供任何错误报告代码。 如果使用此函数注册内存块,操作系统将在发生崩溃或无响应时将内存块信息添加到转储文件。 仅当服务器请求其他数据时,内存块才会添加到报表的转储文件中。
对于泛型事件报告,应用程序必须直接调用 WER 泛型事件报告函数。 若要将内存块添加到泛型报表,请调用 WerReportAddDump 函数,然后调用 WerReportSubmit 函数并指定WER_SUBMIT_ADD_REGISTERED_DATA标志。
若要从此列表中删除块,请调用 WerUnregisterMemoryBlock 函数。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | Windows Vista [桌面应用 | UWP 应用] |
最低受支持的服务器 | Windows Server 2008 [桌面应用 | UWP 应用] |
目标平台 | Windows |
标头 | werapi.h |
Library | Kernel32.lib |
DLL | Kernel32.dll |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈