windbg

    1热度

    1回答

    有没有办法知道两个地址是否连接到两个对象的引用?通过连接我的意思是,其中一个对象是否拥有对另一个对象的引用。

    0热度

    2回答

    我有一个编译后的.exe文件(使用gfortran和-g选项编译)崩溃。我可以使用WinDBG -I命令将WinDBG程序附加到它。 滑稽足够它产生一个堆栈溢出: (38f0.2830): Stack overflow - code c00000fd (!!! second chance !!!) 但是,输出说有我的程序没有调试信息。它试图搜索.dbg或.pdb文件,但它们不在那里。我会假设调

    11热度

    1回答

    据我了解,MEM_RESERVE实际上是'自由'的内存,即可供我的进程使用,但尚未分配?或者它曾经被分配过,但之后被释放了? 具体来说,看到我!地址输出下面如何,我几乎用尽虚拟地址空间(99900 KB免费,2307872为MEM_PRIVATE,但状态显示的是44.75%,实际上是MEM_RESERVE。这是否意味着它实际上是免费的,在我的过程...但也许零散 0:000> !address -

    6热度

    3回答

    我需要记录一些数据,当一些函数被击中时,无论是在执行开始和结束时。虽然我在函数的开始处放置断点没有问题(使用bu [module]!functionname,但我不知道如何在函数的末尾放置断点,所以我不需要每次添加/删除断点时都要编辑断点文件/功能。我敢肯定它的一个非常常见的场景,只是我不知道如何做!任何人都可以澄清?

    5热度

    4回答

    我在一个大型应用程序上工作,经常使用WinDbg来诊断基于客户的DMP文件的问题。我已经为WinDbg写了一些小扩展,这些扩展已经证明对于从DMP文件中提取信息位非常有用。在我的扩展代码中,我发现自己以相同的方式反复引用C++类对象,一次又一次地,手动。例如: Address = GetExpression("somemodule!somesymbol"); ReadMemory(Address

    1热度

    1回答

    这与my previous question有关,涉及从dmp文件中提取对象。 正如我在前面的问题中提到的那样,我可以通过创建包装器'remote'对象成功将对象从dmp文件中提取出来。到目前为止,我已经实施了其中的几项,而且似乎运作良好。但是我碰到了一个障碍。 在一种情况下,指针存储在类中,比如类型为'SomeBaseClass',但该对象实际上是从'SomeBaseClass'派生的类型'So

    6热度

    4回答

    我很惊讶这个问题并没有深入讨论: This article告诉我们如何使用WinDbg内存转储运行.NET过程字符串。 我花了很多时间研究SecureString类,使用非托管固定的内存块,并保持过加密的数据。好东西。 这个问题是在当你使用它的价值,并将其分配给SQLConnection.ConnectionString属性,它是System.String类型。这是什么意思?嗯...... 它采用

    5热度

    1回答

    我一直在对生产ASP.NET Web应用程序运行加载测试,并且在堆上看到大量的System.WeakReferences。在负载下大约15分钟内,托管堆内存已经达到了大约3GB,并且我有大约5,000,000个对System.WeakReference的引用。执行所有代的强制垃圾收集不会释放这些引用。 我看过有关__ENCLIST帮助类的帖子,如果在调试中编译程序集,可以为所有创建的对象创建Wea

    3热度

    2回答

    我正在尝试排查间歇性死锁的COM +应用程序故障。上次锁定时,我能够获取dllhost进程的用户模式转储并使用WinDbg进行分析。检查所有的线程和锁后,这一切都归结为这个线程拥有一个关键部分: ChildEBP RetAddr Args to Child 0deefd00 7c822114 77e6bb08 000004d4 00000000 ntdll!KiFastSystemCall

    9热度

    3回答

    有没有一种方法可以使用gdb列出所有加载的模块,就像Windbg一样,它会自动显示所有加载的模块。没关系,如果没有一个单词的答案,我会很高兴自己解决问题,如果有人可以请给我一个指针。