标签: windows-error-reporting

如何在Windows Vista上禁用"调试/关闭应用程序"对话框?

当应用程序在Windows上崩溃并且安装了Visual Studio等调试程序时,将显示以下模式对话框:

[标题:Microsoft Windows]

X已停止工作

一个问题导致程序停止正常工作.Windows将关闭程序并在解决方案可用时通知您.

[调试] [关闭申请]

有没有办法禁用此对话框?也就是说,让程序崩溃并无声地刻录?

我的情况是我想运行几个自动化测试,其中一些将因测试中的应用程序中的错误而崩溃.我不希望这些对话框停止自动化运行.

搜索我认为我已经找到了在Windows XP上禁用此功能的解决方案,这是修改此注册表项:

HKLM\Software\Microsoft\Windows NT\CurrentVersion\AeDebug\Debugger

但是,这在Windows Vista上不起作用.

windows testing crash-reports windows-vista windows-error-reporting

83
推荐指数
6
解决办法
8万
查看次数

如何分析Windows Crash Reporter生成的WERInternalMetadata.xml文件?

.Net 4.0应用程序不断为用户崩溃,但仅仅对他而言,我无法重现该错误.他附加了WERInternalMetadata.xmlWindows崩溃报告器生成的文件.通过打开它,我发现它System.IO.FileNotFoundException崩溃了软件,然而,在该函数中没有调用会抛出这种异常的函数,所以这是其他地方或更深层次的问题.

这是文件中"最有趣"的部分.它包含(十六进制)数字,但我无法找出它们的含义.

<ProblemSignatures>
    <EventType>CLR20r3</EventType>
    <Parameter0>rstvshowtracker.exe</Parameter0>
    <Parameter1>1.0.3842.33258</Parameter1>
    <Parameter2>4c374e79</Parameter2>
    <Parameter3>mscorlib</Parameter3>
    <Parameter4>4.0.0.0</Parameter4>
    <Parameter5>4ba1da6f</Parameter5>
    <Parameter6>1620</Parameter6>
    <Parameter7>14</Parameter7>
    <Parameter8>System.IO.FileNotFoundException</Parameter8>
</ProblemSignatures>
Run Code Online (Sandbox Code Playgroud)

有没有办法找出导致异常的代码,或者至少找出比其他更多的细节FileNotFoundException

.net c# crash windows-error-reporting

13
推荐指数
1
解决办法
2万
查看次数

使用RegisterApplicationRestart重新启动崩溃的程序,无需用户提示

我正在使用Windows错误报告API调用RegisterApplicationRestart来注册应用程序,当应用程序崩溃或重新启动PC时,WER会自动重新启动该应用程序.

但是,当应用程序崩溃时,会弹出默认的WER对话框("xyz已停止响应"/"您是否要发送有关该问题的更多信息"),并且只有在关闭此对话框后,程序才会重新启动.

有没有办法压制这个对话框?

如果我调用SetErrorMode(SEM_NOGPFAULTERRORBOX),则会按预期禁止该对话框,但重启本身也会停止工作.

如果我通过更改注册表项全局禁用该对话框HKEY_CURRENT_USER\Software\ Microsoft\Windows\Windows Error Reporting\DontShowUI,我得到相同的结果:对话框被禁止,但应用程序也不会重新启动.

我知道像第二个看门狗程序那样的解决方法,但我真的希望使用Windows错误报告API的工具尽可能简单地解决这个问题.

c# windows crash restart windows-error-reporting

13
推荐指数
1
解决办法
2756
查看次数

是否存在用于Windows错误报告的.Net API

是否有.Net API可以将Windows错误报告集成到我的应用程序中?

即使我的应用程序中发生非灾难性错误,我也最感兴趣的是启动错误报告,而我所能找到的只是WIN32 API.

.net windows windows-error-reporting

10
推荐指数
1
解决办法
2278
查看次数

"Windows错误报告"可以用于非致命的Java问题吗?

我想知道是否有办法从Java内部"内部"使用Windows错误报告?

换句话说,使用该机制将异常报告回中央位置而不会导致实际的JVM崩溃(据我所知,这首先触发了这一点).

这里的想法是更容易从Windows用户收集错误报告.


如果它可以成为受控关机的一部分,我也想听听.即不是JVM崩溃,而是从Java程序正常,受控制的退出.


仔细想想之后,我认为为我们的目的创建一组文本文件(或者只是在单个文本流中管道)到位于我们文件系统内部的小型Windows应用程序就足够了.然后,所述Windows应用程序突然崩溃并导致发送报告,包括我们提供的文本.那会有用吗?

java windows-error-reporting

10
推荐指数
3
解决办法
525
查看次数

WinQual已移至sysdev.microsoft.com

我有几个在WinQual注册的程序,并且已成功跟踪通过WER发送的崩溃报告.微软更新到WinQual后,我在新网站上找不到任何我的程序.

  • 如果我选择Bug管理.它说访问被拒绝你的公司没有权限.
  • 如果我选择管理员.我被列为管理员,我的公司已列出.
  • 如果我选择报告.我的节目或活动都没有列出
  • 如果我选择报告 - >软件响应.我看到一个特定崩溃注册的响应.

那么我的问题是什么?我在新网站上找不到任何可以发送电子邮件支持的网站.在微软"更新"WinQual之后,也许其他人有过相同的经历并且知道如何恢复或查看已注册的程序?

非常沮丧,不能与微软联系.

windows-error-reporting

9
推荐指数
2
解决办法
5637
查看次数

如何在没有获得WER对话框的情况下在Windows-7上崩溃进程?

是否可以在Windows-7上崩溃常规用户模式进程而无需获取Windows错误报告(WER)对话框?(当WER正常启用且未应用特定标志时.)

注意:我对禁用WER 感兴趣,我对WER未启动的崩溃场景感兴趣,尽管它应该和Windows"默默地"终止应用程序.

在Windows XP上,编写一个C或C++应用程序(在用户模式下)是非常简单的,它会以这样的方式混淆自己的地址空间,当最终引发访问冲突(或其他未处理的Win32异常)时,Windows XP将会只是默默地终止进程而不通知用户:

...
void stackbreaker() {
    printf("%s\n", __FUNCTION__);
    // global/static buffer
    static char buf[128] = "In a hole in the ground there lived a hobbit. And it burrowed through your stack. It even built a round door into you function.";
    // Get address on the stack
    char local;
    char* stack = &local;
    // nuke the stack:
    memcpy(stack - 64, buf, sizeof(buf));
    // Kaboom. No user defined unhandled exception filter will …
Run Code Online (Sandbox Code Playgroud)

winapi unhandled-exception visual-c++ windows-7 windows-error-reporting

9
推荐指数
1
解决办法
2023
查看次数

如何调试"ngen"ed图像的WER minidump

当在安装时在.NET托管应用程序上执行ngen,并从应用程序的Windows错误报告中检索崩溃转储时,如何使用它来查看堆栈跟踪,变量等?

以下是与该问题相关的一些背景知识:我们有一个.NET应用程序,可以在安装时使用.当由于未处理的.NET异常而崩溃时,崩溃将在Windows错误报告中进行存储,从中我可以从winqual.microsoft.com下载minidump.mdmp文件.

我将minidump.mdmp放在一个包含.dbg文件的文件夹中,用于构建崩溃的应用程序,然后双击minidump.mdmp在VS2008 SP1的新实例中打开它.我的堆栈跟踪如下所示:

kernel32.dll!RaiseException()+ 0x3d bytes
mscorwks.dll!RaiseTheExceptionInternalOnly()+ 0x295 bytes
mscorwks.dll!JIT_Throw()+ 0x130 bytes
MyApp.ni.exe!000007feee74c84c()
[下面的框架可能不正确和/或缺失,没有为MyApp.ni.exe加载的符号]
0000000070000d5e()
MyApp.ni.exe!000007feee611000()
000000000300bf78()
000000000300bf60()

模块窗口指示为OS和.NET DLL加载符号,但对于应用程序模块,我得到:

MyApp.exe - >符号文件中没有本机符号.
MyApp.ni.exe - >找不到匹配的二进制文件.
MyAppsLibrary.ni.dll - >找不到匹配的二进制文件.

minidump ngen postmortem-debugging windows-error-reporting

8
推荐指数
1
解决办法
2987
查看次数

Win2008 R2 WER(错误报告)LocalDumps阻塞了什么?

我只想恢复我自己的32位应用程序的崩溃转储.

我尝试了以下方法:

此外,我在 显示消息"检测到可能的堆损坏(代码3221225477)"下 的"系统事件查看器"中有WER错误条目"Windows Logs\Applications&Services\Microsoft\Windows\WER-Diagnostics\Operational"

我不知道这条消息是否与我的测试应用程序创建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)
Run Code Online (Sandbox Code Playgroud)

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

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

windbg crash-dumps windows-server-2008 windows-server-2008-r2 windows-error-reporting

7
推荐指数
1
解决办法
9205
查看次数

APPCRASH消息的细节是什么意思?

我正在体验来自我的C#应用​​程序的APPCRASH.运行时给出错误消息"此应用程序已请求运行时以不寻常的方式终止它".然后,当我点击好的时候,我得到一个"MyApplication已经停止工作"的消息,通常是"在线检查解决方案","关闭程序"和"调试程序"选项.当我点击"其他详细信息"时,我会收到APPCRASH签名,其中包含许多其他信息.其中一些是人类可读的,有些只是十六进制数字."例外代码"是40000015.还有"附加信息"行.我的问题是:宇宙中的任何人都知道APPCRASH消息中的信息意味着什么吗?

这个消息似乎是由能够从中汲取原因的人阅读的.在搜索答案时,我发现很多人发布的格式完全相同.不幸的是,我没有找到这些信息含义的解释.

此外,我已经尝试了"调试程序"选项,但它没有用.它只是让我进入系统dll,我的代码在调用堆栈的任何地方都没有.我已经调查过了,这个系统代码中没有出现错误.

APPCRASH消息将另一个dll命名为"故障模块"(此代码使用了大量外部dll),并且可能发生致命错误.但是这些信息不是很有用,因为我需要在我的代码中找到对外部dll进行错误调用(或将其置于错误状态)的位置.可悲的是,当我说"我的代码"时,我只是指我正在使用的代码.这是几十年来由几十个人编写的巨大代码库,因此我不能仅仅猜测可能会致命致电的地方.这就是我希望从APPCRASH消息中获取更多信息的原因.这也是我对细节非常吝啬的原因.整个事情都是非常专有的,有很多繁文缛节.这也是我没有发布APPCRASH消息内容的原因.

要清楚,我不是要求你为我调试我的问题.我没办法给你一个可重复的错误案例,我不是要求任何人在我的具体情况下告诉我错误的原因.我只是想知道如何解释那些十六进制数字,我找不到任何文档.

c# crash crash-reports event-log windows-error-reporting

7
推荐指数
2
解决办法
2875
查看次数