【问题标题】:Win2008 R2 WER ( error reporting ) LocalDumps blocked by what?Win2008 R2 WER(报错)LocalDumps被什么阻止了?
【发布时间】:2012-06-12 11:51:52
【问题描述】:

我只想恢复我自己的 32 位应用程序的故障转储。

我尝试了以下方法:

另外,我在 'system event viewer' 下有 WER 错误条目 "Windows Logs\Applications&Services\Microsoft\Windows\WER-Diagnostics\Operational" 显示消息“检测到可能的堆损坏(代码 3221225477)”

我不知道这条消息是否与我创建 NPE 的测试应用有关,或者这是否是 WER 本身有问题?

我就是无法让它工作:( 谁能给我一些线索?


更新: 对于另一台新的 2008R2 x64 机器,我刚刚做了

HKLM\Software\... Reporting\LocalDumps\DumpFolder = "c:\crashdumps"
HKLM\Software\... Reporting\LocalDumps\DumpType = 2   (REG_DWORD)
HKLM\Software\... Reporting\LocalDumps\DumpCount = 20 decimal (REG_DWORD)

并且运行 nulpointer-terster 按预期工作。

所以我认为这些其他机器中必须有一个设置禁止使用 LocalDumps,尽管 LocalDumps 注册表项在那里..

【问题讨论】:

  • MS 不会修复您的程序。他们会做的是从您的客户那里收集您可以注册接收的崩溃报告。
  • 好用吗?! :) 那么 localdumps 是为了好玩吗?
  • 您链接的 MSDN 文章的第一条评论提到您不应该在 WOW6432Node 中设置值。我会试试的。
  • 现在你提到它,我读到了?!后来当我绝望时,我一定忘记了 Not bit。
  • 不,从未真正发现问题所在

标签: windows-server-2008 windbg windows-server-2008-r2 crash-dumps windows-error-reporting


【解决方案1】:
  1. 创建密钥:HKLM\Software\Microsoft\Windows\Windows 错误报告\LocalDumps
  2. 创建 REG_DWORD 值:HKLM\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps as 2 (=full dump)。
  3. 创建 REG_EXPAND_SZ 值:HKLM\Software\Microsoft\Windows\Windows Error Reporting\LocalDumps 为 C:\Dumps 或您喜欢的位置。确保此文件夹确实存在。

【讨论】:

  • 我已经做到了。我什至把它放在 %LOCALAPPDATA%\Dumps 上,因为我不知道正在运行的用户是否允许写入 c:\。但这实际上是你所做的一切让它为你工作吗?
  • 是的,我已经在几十台开发和 QA 机器上完成了这项工作。如果没有失败,当一个进程崩溃时,会有一个很好的内存转储在那里等着我。不知道系统会不会在这里为你解析%LOCALAPPDATA%。首先尝试一个好的坚实路径。然后创建一个测试程序,简单地抛出一个未捕获的异常来测试它。此外,请确保整个路径存在。如有必要,创建文件夹。
  • 谢谢。我在 Msdn 上读到默认转到那个 %LOCALAPP.. 路径。我还尝试了不同驱动器上的可靠路径。我制作了一个 32 位应用程序,它创建了一个 Nulpointer 异常。但它没有被抓住。
  • 您的程序是 32 位还是 64 位?
  • 32 位和 64 位本机应用程序。但请注意,对于 .NET 应用程序,这似乎仅限于针对版本 4 及更高版本的应用程序。
【解决方案2】:

我认为您已经检查了大多数常见问题。还有 3 个:

要写入的文件夹的权限

查看文件夹C:\ProgramData\Microsoft\Windows\WER的权限

  • 读取和执行
  • 列出文件夹内容
  • 阅读

创建子文件夹LocalDumps 将继承权限。

因此,您应该修改该文件夹的权限或使用具有写入权限的其他文件夹。

注册表项的权限

如果权限不允许,Windows 可能无法读取注册表设置。例如。以下(非常愚蠢的)权限也将阻止 LocalDump:

LocalDumps 已禁用

确保HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\Windows Error Reporting\LocalDumps 中没有值为1 的DWORD Disabled

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-08
    • 1970-01-01
    • 2012-03-21
    • 1970-01-01
    • 2020-11-20
    • 2021-07-28
    • 2020-10-16
    • 1970-01-01
    相关资源
    最近更新 更多