当我的应用程序崩溃时,会生成一个minidump以允许事后调试。我使用MiniDumpWithIndirectlyReferencedMemory和MiniDumpWithPrivateReadWriteMemory选项。
直到最近,当转储文件的大小超过500MB时,这一切都很有效。当我想开始调试大小的转储时,Visual Studio会向我抛出以下错误。
“没有足够的存储空间来处理此命令”
我有32位WinXP,其中4GB内存,其中我使用的内存不到1GB。根据VS2008在此过程中的内存使用情况,它应具有足够的可寻址空间。
我不想做的事情:
那我该如何解决呢?
答案 0 :(得分:1)
您可以尝试使用Debugging Tools for Windows包中的WinDbg来查看它是否比Visual Studio更好地管理内存。但是我建议尝试使用64位操作系统,即使你不想这样做。在这些日子里,您应该将您的应用程序也提供为本机64位Windows应用程序,为此您还需要64位Windows。
答案 1 :(得分:0)
我在使用Windows 7 64位的VS2010上遇到了同样的问题。尝试加载使用MiniDumpWithPrivateReadWriteMemory设置创建的任何转储失败,并显示“没有足够的存储空间可用于处理此命令”。
我认为它实际上不是内存问题,因为使用MiniDumpWithFullMemory打开转储工作正常并且实际上会创建更大的转储。
这似乎是视觉工作室的一个错误,令人失望的是它后来仍然存在多个版本。