Привет. Проясните, плиз, что происходит? Есть приложение, оно падает в Vista SP1 x86 и система отображает стандартный диалог APPCRASH с предложениями типа "Искать решение в сети" и "Завершить приложение". Содержимое окна вот такое: Судя по этой информации падение вызвано исключением в недрах kernel32.dll. При этом никакого дампа при падении система не создаёт, поэтому я не могу получить и проанализировать call stack. Отлаживаю это дело в виртуальной машине. Подключить отладчик по некоторым причинам возможности не имею. Хотелось бы понять следующее: 1. Почему не создаётся дамп? Как настроить Vista, чтобы она создавала таки дампы для падений приложений? 2. Как по вышеприведённым данным понять в каком именно месте упало? Все исходники приложения у меня есть. Короче говоря, в идеале хотелось бы найти место в коде, которое приводит к этому исключению. Как получить эту информацию? Если это важно: в Windows XP и Windows Server 2003 всё работает без проблем, написано на Visual C++ 7.1. Заранее спасибо!
Выяснилось таки, что адрес падения находится внутри RaiseException(). Легче от этого не стало, в общем-то, это было ожидаемо. Нужен call stack, чтобы посмотреть, кто бросает исключение. Но для этого нужен либо подключённый отладчик (а это по условию задачи не подходит) либо crash dump, который Vista почему-то создавать не хочет. Как бы её заставить сгенерить дамп?
NDIS, под админом сделайте олю just-in-time отладчиком. Если приложение глюканёт, то мона будет глянуть что и как. Или я чего то недопонял?
Угу, можно аттачиться. Ещё можно заставить WER сохранять дампы: http://msdn.microsoft.com/en-us/library/bb513638(VS.85).aspx (Vista SP1 Local Dumps).
Сигнатура проблемы: Имя события проблемы: APPCRASH Имя приложения: rundll32.exe Версия приложения: 6.0.6000.16386 Штамп времени приложения: 4549b0e1 Имя модуля с ошибкой: ntdll.dll Версия модуля с ошибкой: 6.0.6001.18000 Штамп времени модуля с ошибкой: 4791a7a6 Код исключения: c0000005 Смещение исключения: 00069bc0 Версия ОС: 6.0.6001.2.1.0.768.2 Код языка: 1049 Дополнительные сведения 1: 2f7d Дополнительные сведения 2: bcb0d7e5f2ebcd6ebbdbf5f862c65748 Дополнительные сведения 3: b1f7 Дополнительные сведения 4: 689825952c10e268681873629794be6c Подскажите что делать? У меня Vista. Настройки дисплея не меняются. Я уже не знаю, что делать.
anutka200405 Аналогичная проблема, только файл ошибки (Имя модуля с ошибкой) не .dll, а .exe. Может кто поможет? Подробная сигнатура проблемы: Имя события проблемы: APPCRASH Имя приложения: manhunt.exe Версия приложения: 0.0.0.0 Штамп времени приложения: 00000000 Имя модуля с ошибкой: manhunt.exe Версия модуля с ошибкой: 0.0.0.0 Штамп времени модуля с ошибкой: 00000000 Код исключения: c0000005 Смещение исключения: 004513ac Версия ОС: 6.0.6001.2.1.0.768.3 Код языка: 1058 Дополнительные сведения 1: f4e4 Дополнительные сведения 2: 4ae198a902979816f05c5f2497a284f7 Дополнительные сведения 3: 6b46 Дополнительные сведения 4: a902494e9d96f6bd9cd480741f99e318
dimmozgg Не имеет значения если файл ошибки DLL или ЕХЕ - что именно ты хочешь зделать? Отладить этот крэш? Получить crash dump файл?
У меня уже ещё одна игрушка посыпалась: Имя события проблемы: APPCRASH Имя приложения: hl.exe Версия приложения: 1.1.1.1 Штамп времени приложения: 3fd11900 Имя модуля с ошибкой: serverbrowser.dll_unloaded Версия модуля с ошибкой: 0.0.0.0 Штамп времени модуля с ошибкой: 403fa21e Код исключения: c0000005 Смещение исключения: 0ef89890 Версия ОС: 6.0.6001.2.1.0.768.3 Код языка: 1058 Дополнительные сведения 1: ee0c Дополнительные сведения 2: 0f3137665bbf0bb676c8a16f3fa76e52 Дополнительные сведения 3: 4712 Дополнительные сведения 4: 68fd65ab6a4cbd777b1856761abfaaae
comrade У меня дохуища чего сказать, родная тема ведь - поиск ошибок, багов и уязвимостей; Если не в состоянии нормально описать т о тошё отсюда на_хуй.