gpt4 book ai didi

.net - 最小 MINIDUMP_TYPE 设置为转储托管 .net 组件的 native C++ 进程是什么,以便能够在 windbg 中使用 !clrstack

转载 作者:行者123 更新时间:2023-12-03 16:30:02 24 4
gpt4 key购买 nike

有一个本地 C++ 应用程序,它承载了几个 .net 组件。当发生某些错误时,此应用程序使用 MiniDumpWriteDump 函数创建小型转储。在这里提问什么是最小集合

[Flags ]enum MINIDUMP_TYPE {
MiniDumpNormal = 0x00000000,
MiniDumpWithDataSegs = 0x00000001,
MiniDumpWithFullMemory = 0x00000002,
MiniDumpWithHandleData = 0x00000004,
MiniDumpFilterMemory = 0x00000008,
MiniDumpScanMemory = 0x00000010,
MiniDumpWithUnloadedModules = 0x00000020,
MiniDumpWithIndirectlyReferencedMemory = 0x00000040,
MiniDumpFilterModulePaths = 0x00000080,
MiniDumpWithProcessThreadData = 0x00000100,
MiniDumpWithPrivateReadWriteMemory = 0x00000200,
MiniDumpWithoutOptionalData = 0x00000400,
MiniDumpWithFullMemoryInfo = 0x00000800,
MiniDumpWithThreadInfo = 0x00001000,
MiniDumpWithCodeSegs = 0x00002000,
MiniDumpWithoutManagedState = 0x00004000,
};

应该传递给 MiniDumpWriteDump 以生成小的转储文件但能够查看 clr 堆栈)?当然,完整的内存转储可以工作,但如何只获得可承受的最小值?

最佳答案

事实上,指定这些选项就足够了(使转储变小并能够提取托管调用堆栈):

  • MiniDumpNormal(默认)
  • MiniDumpWithProcessThreadData
  • MiniDumpWithThreadInfo
  • MiniDumpWithUnloadedModules

  • 非常感谢 Oleg Starodumov 表单 http://debuginfo.com/

    关于.net - 最小 MINIDUMP_TYPE 设置为转储托管 .net 组件的 native C++ 进程是什么,以便能够在 windbg 中使用 !clrstack,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4851538/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com