我正在使用.childdbg1在WinDbg中调试脚本。(脚本在无限循环中运行软件的各种测试用例。这样我就可以捕捉到罕见的崩溃。)我不需要附加到特定的子进程(出于性能原因并且因为它们是第三方的并且经常崩溃)。如果我可以通过进程名称指定它们,那将解决我的问题。如果您能提出其他可以满足我需要的调试器,我将不胜感激。注意:将调试器配置为通过GFlags附加到特定进程并不是这种特定情况下的解决方案。 最佳答案 如果你激活了.childdbg1,你可以使用sxecpr。使用-c开关,您可以执行命令。像.if(yourcondition){.d
当使用windbg调试托管进程时,如何查看Int64的值?例如,我有以下构造函数,它的第一个参数是Int64。ItemQuotequote=newItemQuote(1234567890987654L,"5mmSuperWidgets",1000,12999,true,false);我使用windbg调试器在上述构造函数中设置断点以检查其参数。反汇编结果如下。ChildSPIPCallSite0042f05c0043025aEncodingInformation.ItemQuote..ctor(Int64,System.String,Int32,Int32,Boolean,Boolea
在Microsoft,我可以下载theWindowsSymbolPackagesforXP,Vista,Server,evenWindows7.我的问题是:如何在VisualStudio中使用这些符号?我可以在VS2008的哪个位置添加下载和提取的符号,以便我可以调试到Windows本身?我想实现的:我想调试_beginthreadex/endthreadex,看why/wheresomecodeislosinghandles.我知道我可以setvisualstudio2008todownloadsourcefiles,但看起来这仅适用于.net框架源? 最
我今天处理了一个错误,它只在我启动计算机后立即运行我的程序时出现。冷启动暴露了触发该错误的竞争条件。我设法修复了它,但是花了很长时间,因为我不得不多次重启我的机器才能弄清楚发生了什么。任何人都可以建议将来更好的调试此类问题的方法吗?我能否以某种方式快速将计算机置于“刚刚启动”状态?在WindowsXP上运行Python2.6。 最佳答案 在虚拟机中运行它。 关于python-处理仅在启动后立即出现的错误,我们在StackOverflow上找到一个类似的问题:
到目前为止,我一直在项目中使用Debug模式二进制文件。因此,使用保留的符号文件很容易分析故障转储。现在我必须在Release模式下发布二进制文件。我们如何分析由Release模式二进制文件生成的转储文件。这有可能吗?我如何识别Release模式下的功能?(不需要生成和保存map文件) 最佳答案 您需要与可执行文件相对应的.pdb文件。这会给你符号。调试发布版本有几个棘手的部分:由于优化,操作顺序可能会发生变化整个函数/变量/等等。可能会被优化掉特别是,传递给函数的参数可能不存在(例如,“this”可能是一个寄存器,而不是内存中的一
这不是一个真正的问题,而是一个希望对其他人有所帮助的答案。那些以前编写过Windows服务的人都知道找到其中的错误是一项多么艰巨的任务,尤其是当它只发生在实时环境中时。在我的例子中,我有一个平稳运行几个小时的服务,然后由于堆栈溢出错误而崩溃。没有堆栈跟踪。祝您大海捞针。该服务确实生成了一个日志文件,代码中充斥着日志条目,但尽管如此详细,它还是生成了500MB的日志文件!你几乎无法打开文件,更不用说分析它了。但是你如何解决这个问题呢?您可以尝试生成包含较少信息的日志文件,或者在写入新日志条目时自动删除旧日志条目的日志文件,但这样您就失去了错误的重要上下文。解决方案是一个日志文件,它会跟踪
今天我在工作中调试一个应用程序。我继续在我的一个catchblock中设置一个断点,以便更详细地检查异常。ViewDetail模态窗口正常打开,但它没有向我显示异常的详细信息,而是抛出一个奇怪的错误,我从未遇到过这个错误,我也不知道它是什么意思:错误说:Thename'$exception'doesnotexistinthecurrentcontext这很令人沮丧,因为我在catchblock范围内,所以我应该能够看到我的异常。重新启动我的应用程序后,我成功地对其进行了调试。这是我唯一一次(到目前为止)遇到此错误。有谁知道这是什么意思,我该如何修复它(无需重新启动应用程序)?注意:我使
问题:每当我尝试在调试器中中断或设置跟踪点时,我们的应用程序和visualstudio都会完全卡住。分离调试器后,应用程序继续。这个问题可能与WPF有关。我们已将WinForm应用程序迁移到WPF。此后出现此问题。但是我找不到导致问题的代码的特定部分。我已经回滚了数百次提交但没有成功。它也可能与UI线程有关。如果断点设置在远离UI逻辑的某处,应用程序将不会卡住,或者不会像在UI线程中的某处那样经常卡住。[编辑:]我使用Windows7。64位和VisualStudio2010[更新:]当VisualStudio挂起时,我尝试在显示断点之前分离,消息“无法从一个或多个进程分离。所有未完成
我在VS2013中调试一些C#代码时观察到一些奇怪的行为。当我将鼠标悬停在当前方法范围内的任何变量上时,我可以看到变量的信息。在下面的屏幕截图中,您可以看到ivSimulation已固定并显示信息。但是,即使您看不出来,我将鼠标悬停在this._simulator上,也没有显示任何内容。QuickWatch也不显示任何内容。另一位同事也遇到了同样的问题。我们已经尝试清除我们的文件夹并再次获取最新的。我们还尝试将VS中的设置(工具->选项->调试->常规->使用托管兼容模式)更改为选中状态,但这也没有用。显然这对其他人有用。这在VS2012中工作得很好。有什么想法吗?如何让类级变量显示在
所以,这个有趣的问题在过去的几个小时里一直困扰着我。VisualStudio2010Ultimate不再附加调试器并让我调试我的代码。如果我使用内置的开发服务器,那么一切正常。如果我切换到使用本地IISWeb服务器(http://localhost/),那么它所做的一切都会附加到w3wp.exe,但不会为任何内容加载DLL或PDB。我可以转到“调试”>“Windows”>“模块”,实际上该窗口中没有加载任何内容。相反,当使用内置开发服务器时,“模块”窗口会显示所有DLL并显示我的DLL的符号已加载。显然有些不对劲。VS安装完全是骨头。在IIS中,我的网站配置了ASP.NET2.0(因为