我正在试图弄清楚Windows错误报告的保存位置;我今天早些时候点击了发送,但我忘记了我想“查看详细信息”,以便我可以检查内存小型转储。
但我无法找到它们的存储位置(谷歌不知道)。
所以我想写一个会崩溃的虚拟应用程序,显示WER对话框,让我点击“查看详细信息”,这样我就可以到达保存转储的文件夹。
我如何在Windows上崩溃?
编辑:我问的原因是因为我尝试过堆栈,浮点除以零。 Stack Overflow使应用程序消失,但没有弹出WER对话框。浮点除以零导致+ INF,但没有异常,也没有崩溃。
答案 0 :(得分:4)
你们都这么啰嗦! : - )
这是一种紧凑的方式:
*((int*)0)=0;
答案 1 :(得分:2)
应该是一个好的开始:
int main(int argc, char* argv[])
{
char *pointer = NULL;
printf("crash please %s", *pointer);
return 0;
}
答案 2 :(得分:1)
您假设内存转储仍然存在。一旦发送,AFAIK将从机器中删除转储。
转储本身应位于%TEMP%某处。
就崩溃而言,这并不困难,只需做一些导致段错误的事情。
答案 3 :(得分:0)
不确定这是否会触发错误报告对话框,但您可以尝试除以零。
答案 4 :(得分:0)
void crash(void)
{
char* a = 0;
*a = 0;
}
答案 5 :(得分:0)
可以在此处找到官方支持的故意触发崩溃的方法:
http://msdn.microsoft.com/en-us/library/ff545484(v=VS.85).aspx
基本上:
使用USB键盘,您必须启用 键盘发起的崩溃 注册表中。在注册表项中 HKEY_LOCAL_MACHINE \系统\ CurrentControlSet \服务\ kbdhid \参数, 创建一个名为的值 CrashOnCtrlScroll,并将其设置为等于 REG_DWORD值为0x01。
然后:
您必须重新启动系统 设置生效。
完成后,键盘 崩溃可以通过使用 按照热键顺序:按住 最右边的CTRL键,然后按 滚动锁定键两次。
无需编程;)此处无轮改造:)
答案 6 :(得分:0)
有兴趣知道如何崩溃Windows。但为什么不看看
%allusersprofile%\Application Data\Microsoft\Dr Watson\
第一?请注意特定应用程序特定的crashdata文件夹,我发现例如
...\FirefoxPortable\Data\profile\minidumps\
和
...\OpenOfficePortable\Data\settings\user\crashdata\.