在Windows 7上禁用应用程序故障转储

时间:2011-05-17 18:02:38

标签: windows-7 crash-dumps

愚蠢的问题:如何阻止Windows 7存储崩溃的应用程序的内存转储?

我正在试验C ++应用程序中的堆栈分配,因此玩具程序崩溃了很多。对于每次崩溃,Windows都会将内存转储到%USER%/ AppData / Local / CrashDumps。每个约150MB。如何禁用此功能?我在网上搜索得越来越广。我在Windows 7上唯一能找到的是系统→高级→启动和恢复→系统故障崩溃转储,我已经禁用了这些。

这不是什么大不了的事,只是因为它位于我的用户档案中而烦人。

3 个答案:

答案 0 :(得分:6)

我认为负责在系统上创建所有转储文件的机制是WER(Windows错误报告)。您可以在那里阅读如何禁用它:http://www.techrena.net/windows/disable-windows-7-error-reporting/

  1. Win + R 打开Windows运行命令。在运行命令栏中键入“services.msc”,然后单击“确定”。
  2. 这将打开“服务”窗口,您可以在其中查看Windows上当前可用的所有服务的列表。
  3. 右键单击 Windows错误报告服务并选择“属性”。启动类型默认为“自动”或“手动”。要完全禁用该服务,请选择“已禁用”然后按“确定”。

答案 1 :(得分:1)

为了禁用内存转储文件的创建或创建方式,请打开regedit并导航至以下注册表项:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\CrashControl

找到该密钥后,请单击它并根据以下选项更改“ CrashDumpEnabled”的值:

0 = None
1 = Complete memory dump
2 = Kernel memory dump
3 = Small memory dump (64KB)

然后重新启动计算机以使其生效。

答案 2 :(得分:0)

HKEY_CURRENT_USER\Software\Microsoft\Windows\Windows Error Reporting下,将Disabled设置为REG_DWORD等于1

Source: MSDN