136得票4回答
无法在WinDbg中加载SOS

背景:我对WinDbg不熟悉,正在尝试首次运行它。我想检查一个从运行在Windows Server 2008(x86)上的IIS 7托管的ASP.NET 4站点中获取的内存转储,并将其下载到我的本地计算机。 我安装了调试工具,第一次启动WinDbg并打开崩溃转储文件。我转到文件|符号文件路径并...

45得票3回答
SOS(Strike的儿子)调试器扩展名的命名背后有什么故事?

"Son of Strike"这个名称有什么含义吗?它是有意义的还是只是听起来很酷?

44得票6回答
WinDbg中出现"SOS版本与CLR版本不匹配"应该怎么办?

我有一些应用程序出现问题。这是一个基于WCF的应用程序,在Windows 2003 Server (x86)下运行在IIS6下: 在事件日志中,我从“W3SVC-WP”来源(EventID=2262)获得了这样的错误: ISAPI 'C:\WINDOWS\Microsoft.NET\Fram...

36得票1回答
"SOS"中的"EE"代表什么意思?

我发现"EE"对我来说是一个神奇的词。 在CLR内部,有一个"EEClass",由CLR类加载器创建。 我不知道为什么它被称为EEClass。 现在,来到SOS世界,这里有更多的EE,例如EEHeap、EEStack [-EE]、Name2EE..... 它们在这里代表着相同的意思吗?

26得票5回答
使用WinDbg从委托中获取方法名

我有以下委托对象的转储:Name: MyEventHandler MethodTable: 132648fc EEClass: 1319e2b4 Size: 32(0x20) bytes Fields: MT Field Offset ...

19得票5回答
为什么WinDBG找不到mscordacwks.dll?

我正在尝试使用WinDBG分析我们生产机器之一的崩溃转储。我的问题根源似乎是我拥有不同版本的.NET框架,而生产机器上的版本不同,但我不知道如何解决这个问题。当我打开!sym noisy并运行!dlk(来自SOSEX)时,它尝试查找mscordacwks dll时出现以下错误。 0:000&...

18得票2回答
使用WinDbg将托管Byte[]的内容写入文件

我有一份来自生产服务器的崩溃转储,显示出了OutOfMemoryException。这里不涉及异常本身。 我碰巧运行了!dso来查看堆栈对象:0:042> !dso OS Thread Id: 0x1014 (42) ESP/REG Object Name 246eeb24 109...

17得票4回答
WinDbg和SoS,如何打印/转储一个大字符串?

我正在使用带有SoS扩展的WinDbg调试来自生产服务器的hangdump。 其中一个堆栈中有一个字符串参数,我需要知道它的值。 但是,它是一个相当大的字符串,并且当我使用时,WinDbg不会将其打印出来。这是的输出:0:036> !do 00000001b30d8668 Name: S...

17得票4回答
我能否从WinDbg运行.NET垃圾回收?

我正在研究为什么一个托管进程使用了大量的内存。是否有一种方法可以在WinDbg中运行GC.Collect(3),以便我可以专注于实际的内存分配?

16得票4回答
32位与64位CLR对象大小的理解

我正在尝试理解32位和64位处理器之间的对象大小差异。假设我有一个简单的类。class MyClass { int x; int y; } 在32位机器上,整数的大小为4个字节。如果将Syncblock(另外4个字节)添加到其中,则对象大小将为12个字节。...