草庐IT

DEBUGGING

全部标签

c++ - 如何找出我的 .exe 的入口函数?

我觉得问这个问题很愚蠢,但请耐心等待并在评论“它是main(),duh”之前阅读症状。我正在VisualStudioExpress2012中开发一个项目。迄今为止,我们只为Win32(x86)平台构建,但我正在将.exe构建转换为64位。我现在有一个完全链接的.exe,但在此过程中发生了一件有趣的事情:不再调用入口点。(C++,控制台)程序的入口点是在文件范围内声明的C++函数,具有以下签名:intmain(intargc,char*argv[])。这个函数从第一天开始就在x86可执行文件中愉快地工作。它没有在x64上被调用:链接器不会提示找不到入口点。加载器不会提示找不到入口点。当我

windows - 从 Windows 用户模式转储文件中识别主机

是否有一种简单的方法可以找出通过WinDbg生成用户模式转储文件的机器的主机名?或者至少是任何一段识别信息,以尝试确认两个转储文件来自同一系统。 最佳答案 您可以通过使用WinDbg分析用户转储文件来做到这一点。运行!peb命令并在其输出中查找COMPUTERNAME的值。 关于windows-从Windows用户模式转储文件中识别主机,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/question

c++ - Visual Studio 调试器在内联代码中变慢

自从我从vs2005升级到VisualStudio2008后,我在调试大型项目时发现了一个非常烦人的行为。如果我尝试进入内联代码,调试器似乎会锁定数十秒。每次我进入这样的函数时,都会有类似的停顿。有没有人遇到过这种情况,有人知道解决方法吗?后记:在了解到MS有vs2008的服务包并且由于其他编译问题需要获取它之后,我在调试器中遇到的问题得到了解决。 最佳答案 我曾经得到这个-我认为这是“Autos”调试窗口的错误:http://social.msdn.microsoft.com/Forums/en-US/vsdebug/thread

windows - windbg !heap 输出中的 'size' 数字是什么意思?

我在我的DMP文件中看到这样的输出:HeapentriesforSegment00inHeap0015000000150640:00640.00040[01]-busy(40)00150680:00040.01808[01]-busy(1800)00151e88:01808.00210[01]-busy(208)00152098:00210.00228[00]001522c0:00228.00030[01]-busy(22)001522f0:00030.00018[01]-busy(10)00152308:00018.00048[01]-busy(3c)WinDbg文档是这样说的:He

C# 应用程序在特定点不断崩溃,需要帮助理解问题签名

我有一个C#Express2010应用程序,它与托管的php脚本建立了多个连接。一旦达到大约7500次成功通信,程序就会停止工作并提供以下问题签名:ProblemEventName:APPCRASHApplicationName:zz.exeApplicationVersion:1.0.0.0ApplicationTimestamp:4c8d6459FaultModuleName:ntdll.dllFaultModuleVersion:6.0.6001.18000FaultModuleTimestamp:4791a783ExceptionCode:c00000fdExceptionOf

windows - 如何在 64 位操作系统上同时安装适用于 32 位和 64 位的 Windows 调试工具?

我有一个64位Windows2008R2VM,我在其中安装了来自SDK的Windows64位调试工具。现在我想安装32位甚至下载相应的ISO-GRMSDK_EN_DVD.iso从http://www.microsoft.com/en-us/download/details.aspx?id=8442然而,该死的东西认为没有什么可安装的,因为已经安装了64位。我怎样才能安装它?编辑好的,我卸载了64位版本。现在,它无法安装并显示这条可爱的消息:SetupcouldnotfindthefileWinSDK_amd64\WinSDK_amd64.msiatanyofthespecifiedso

android - NDK 调试 : ndk-gdb fails to pull app_process. 谁以及何时创建了 app_process 二进制文件?

在调查native代码中的断点问题时,我决定检查ndk-gdb是否正常工作。我删除了app_process,开始了Java调试并运行了ndk-gdb--force。你猜怎么着,没有创建app_process。ndk-gdb--verbose输出有这一行:##COMMAND:adb_cmdpull/system/bin/app_processobj/local/armeabi-v7a/app_processremoteobject'/system/bin/app_process'notafileordirectoryPulledapp_processfromdevice/emulator

windows - 如何找到其他进程

有人知道我可以用来调试“无法访问该文件,因为它正在被另一个进程使用”异常的工具吗?我怀疑是病毒扫描程序,但我不能确定。 最佳答案 WhoLockMe将告诉您哪个进程正在锁定文件。 关于windows-如何找到其他进程,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/2428215/

windows - 我怎么知道为什么我的 Azure 实例没有启动?

我将我的服务包部署到WindowsAzure中。管理门户已经显示“正在等待角色实例启动”30分钟了,所以我认为出了点问题。我知道有Azure诊断,但有没有更简单的方法来查找我的实例中发生的事情-比如一些控制台显示一些详细的输出或其他东西? 最佳答案 在这些情况下,最方便的方法可能是将RDP简单地插入盒子并查看发生了什么。从机器内部获取的事件日志、访问站点等通常会给您一个很好的主意。如果您有Intellitrace(VisualStudioUltimate),您还可以启用它并查看日志以查看发生了什么。这也很有效。

用于 STL 容器的 C++ IDE

哪些C++IDE在Debug模式下原生支持STL容器View?一个IDE是VisualStudio,但我希望从它转移,并希望在Debug模式下使用STL容器。现在专门寻找WindowsIDE,欢迎使用其他操作系统IDE。 最佳答案 eclipse!“CDT调试现在支持使用GDB7.0或更高版本完全漂亮地打印STL结构。这意味着复杂的结构,如map、列表和vector,将以用户友好的方式显示。”(source)(CDT是Eclipse的C/C++开发工具) 关于用于STL容器的C++IDE