Я пытаюсь отлаживать дамп сбоя из моего кода VB.NET, который должен запускать 24-7 машину Win7, у которой нет отладчика. Цель всех модулей - 32-разрядная, поэтому я не знаю, почему кажется, что она пытается использовать 64-разрядные вещи.Crashdump показывает 64 бит, когда была выбрана 32-битная цель.
Похоже, что он пытается подключиться к отладчику и не работает, поэтому он прерывается. я войти в машину и обнаружили, что он снова упал, так что я сделать файл crashdump.DMP, который останавливается на следующей трассе:
wow64.dll!Wow64NotifyDebugger() + 0x1d bytes
wow64.dll!HandleRaiseException() + 0xee bytes
wow64.dll!Wow64NtRaiseException() + 0x88 bytes
wow64.dll!whNtRaiseException() + 0x15 bytes
wow64.dll!Wow64SystemServiceEx() + 0xd7 bytes
wow64cpu.dll!TurboDispatchJumpAddressEnd() + 0x2d bytes
wow64.dll!RunCpuSimulation() + 0xa bytes
wow64.dll!Wow64LdrpInitialize() + 0x429 bytes
ntdll.dll!LdrpInitializeProcess() + 0x1936 bytes
ntdll.dll!string "Enabling heap debug options\n"() - 0x45fe9 bytes
ntdll.dll!LdrInitializeThunk() + 0xe bytes
тот же код не врезаться на всех, когда отладчик присоединен удаленно или локально.
Может ли кто-нибудь сказать мне, что искать? Я скомпилировал исполняемый файл как сборку Debug x86, поэтому я могу приложить отладчик по своему желанию и просмотреть вывод вызова Debug.Writeline().
Как создать аварийный дамп, если на этом компьютере нет отладчика? И что должно случиться, что callstack содержит строку 'ntdll.dll! 'Включение параметров отладки кучи \ n"() '? Я никогда раньше этого не видел, но, возможно, для этого процесса есть некоторые опции Gflags. –