Git   发布时间:2022-04-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了应用程序忙,但没有响应:如何检查它在做什么?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

我们有一个.NET应用程序。 在某些特定的机器上,应用程序不再响应。 但是,在任务pipe理器中,应用程序被列为“活动”(而不是“无响应”)。 我们还可以在任务pipe理器中看到该进程继续使用处理器的10%。 我们不知道它在做什么?

有没有一种方法可以看到什么代码调用,或者进程正在做什么(调用堆栈?)

编辑:显然我们不能使用远程debugging器,因为机器没有通过networking连接,不支持通过互联网debugging。 cpu的analyzer.exe程序似乎很好,但我们不能得到它的工作? 我们已经创build了一个转储@L_696_8@,并用windb进行分析,这是输出

.................................................WARNING: rSAEnh overlaps cryptsp

。警告:RpcRtRemote重叠rSAEnh ……警告:WindowsCodecs重叠System_Drawing_ni …….. …….警告:msdart重叠shfolder …警告:comsvc​​s重叠oledb32 ….. ……….警告:dhcpcsvc6重叠dhcpcsvc …………….警告:appHelp重叠GdiPlus ………警告:winhttp重叠Faultrep .WARNING:webio overlaps comctl32_71bf0000 …………. …… wow64win!NtUserPeekmessage + 0xa:00000000`732efdea c3 ret 0:000>!analyze -v

InvokeHelper()抛出Access被拒绝exception

如何在.NET中更改XBox控制器的分配?

什么是Windows或.Net的DVD刻录组件?

如何使用C#设置窗口的高度?

我如何以编程方式确定哪个应用程序正在locking@L_696_8@?

*

exception分析*

*


警告:无法validationAppName.exe的校验和错误:模块加载完成,但符号无法加载AppName.exe 警告:符号时间戳错误0x4ce7c496 0x4f9235ab GdiPlus.dll *警告:符号时间戳错误0x4a5bdf81 0x4a5bda2e comsvc​​s。 DLL

FAULTinG_IP:+ a7d01d0 00000000`00000000 ?? ???

EXCEPTION_RECORD:ffffffffffffffffexception地址:0000000000000000exception码:

FAULTinG_THREAD:0000000000001678

PROCESS_NAME:AppName.exe

OVERLAPPED_MODULE:“msdart”和“shfolder”重叠的地址区域

ERROR_CODE:(NTSTATUS)0x80000003 – {EXCEPTION}断点已经达到断点。

EXCEPTION_CODE:(HRESULT)0x80000003(2147483651) – 一个或多个参数无效

@H_993_0@mOD_LIST:

NTGLOBALFLAG:0

APPLICATION_VERIFIER_FLAGS:0

@H_993_0@mANAGED_STACK:!dumpstack -EE找不到导出的dumpstack

ADDITIONAL_DEBUG_TEXT:基于属性[Is_ChosenCrashFollowupThread]从线程[0]上的后续设置:[PSEUDO_THREAD]

LAST_CONTROL_TRANSFER:从00000000732cadb3到00000000732efdea

BUGchecK_STR:APPLICATION_FAULT_STACKIMMUNE_NOSOS

PRIMary_PROBLEM_CLASS:STACKIMMUNE

DEFAULT_BUCKET_ID:STACKIMMUNE

STACK_TEXT:


00000000 00000000 00000000 00000000 unkNown!AppName.exe + 0x0

SymBOL_NAME:未知!AppName.exe

FOLLOWUP_NAME:Machineowner

@H_993_0@mODULE_NAME:未知

IMAGE_NAME:未知

DEBUG_FLR_IMAGE_timestAMP:0

STACK_COMMAND:**伪上下文**; KB

FAILURE_BUCKET_ID:STACKIMMUNE_80000003_unkNown!已卸载

BUCKET_ID:X64_APPLICATION_FAULT_STACKIMMUNE_NOSOS_unkNown!AppName.exe

@H_404_91@ 跟进:Machineowner

这可能是罪魁祸首:“msdart”和“shfolder”的地址区域重叠?

确定系统架构

如何在勾选列表框中灰显项目

哪个DVCS适合一个人的.NET商店?

GUI故障:checkBox文本在Windows 8中显示不完整

自我安装的WInservice

使用Visual studio或WinDbg连接到此进程以查看调用堆栈和调试,和/或在应用程序中包含日志记录。 这样你可以写一个日志@L_696_8@你的应用程序正在做什么。

这听起来像你阻止你的GUI,但后台线程仍然工作。

在主机上安装Visual studio远程调试器正在运行应用程序,然后附加到正在运行的进程。 您将需要具有相同的pdb@L_696_8@和源代码,以便插入断点和调试。

检查这个链接

http://msdn.microsoft.com/en-us/library/vstudio/bt727f1t.aspx

您也可以将调试配置为在其他机器上远程启动应用程序,而不是连接到正在运行的进程。

你可以捕获一个转储并打开windbg,输入!analyze -v让windbg为你做分析。 对于挂起/无响应的问题, !analyze -v不如崩溃。 我通常用~*kb200来列出所有线程的堆栈跟踪信息,这对于初步了解线程正在做什么非常有帮助,然后, !locks可以告诉我是否有任何关键的部分问题,有时我会检查是否有任何例外出现在堆栈上

问题是一个多线程的死锁。 在我们的主窗口下面显示一个错误。 因为我们无法点击确定的错误,我们的主窗口正在等待错误窗口被关闭,@R_780_9616@程序挂起…

我们通过屏幕录制确定了实际的错误,同时我们用任务管理器关闭了应用程序。 在不到一秒的时间内,我们可以看到错误窗口,通过播放录音,我们可以看到错误是什么,并修复错误

大佬总结

以上是大佬教程为你收集整理的应用程序忙,但没有响应:如何检查它在做什么?全部内容,希望文章能够帮你解决应用程序忙,但没有响应:如何检查它在做什么?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: