Чтение файла дампа в VS2010 64/32 битный конфликт

Я пытаюсь прочитать файл дампа в VS2010 с надеждой получить в стеке трассировку того, где произошел сбой в моей сборке релиза. Однако, когда я открыл файл дампа в VS2010, в нем говорится

Вы не можете отладить 64-битный дамп 32-битного процесса, вы должны собрать
32-битный дамп 32-процессного

Теперь мое приложение 32-разрядное, и оно работало в 64-разрядной системе. Значит ли это, что я не могу читать файлы дампа сейчас, так как он работает на 64-битной системе ?? Какие-либо предложения ? Файлы дампов были созданы с помощью 64-разрядного диспетчера задач в Windows 7. Если я запустил 32-разрядный диспетчер задач и сгенерировал дамп из этого в Windows 7, это решит проблему?

1

Решение

Вы по-прежнему можете открыть этот дамп, используя WinDbg из пакета Debugging Tools for Windows.

Для создания хороших дампов для приложения Win32 в системах x64 вам необходимо создать дамп, используя версию Win32 MiniDumpWriteDump API. Обычный диспетчер задач, запускаемый из меню содержимого панели приложений или сочетания клавиш Ctrl + Shift + Esc (а также из Process Explorer), имеет разрядность ОС, а созданные дампы не помогают. 32-разрядные дампы могут быть взяты самой Visual Studio, присоединяясь к процессу, приостанавливая его и сохраняя мини-дамп из меню, или используя 32-разрядный диспетчер задач, запускаемый напрямую: C:\Windows\SYSWOW64\taskmgr.exe,

я использую LogProcessExceptions утилита (я уверен, что есть и много других) для создания мини-дампов на исключениях и по интерактивному запросу. Поскольку утилита доступна как в Win32, так и в 64-битной разрядности, 32-битная версия инструмента даст вам нужные вам свалки.

5

Другие решения

Да, использование 32-битного диспетчера задач для создания дампа 32-битного процесса — это путь.

Использование 64-разрядного диспетчера задач в 32-разрядном процессе создает аварийный дамп wow64, который на самом деле не очень полезен.

Вот соответствующий блог MSDN: http://blogs.msdn.com/b/amb/archive/2012/05/28/10163879.aspx

1

По вопросам рекламы [email protected]