4

Когда я щелкаю правой кнопкой мыши по файлу в открытом диалоговом окне, это приводит к аварийному завершению основного приложения «время от времени». Это происходит во многих приложениях, таких как Total Commander и Visual Studio. Приложение не происходит сбой каждый раз, но когда они делают это, прежде чем я нажимаю любой элемент в контекстном меню. Я посмотрел на стек вызовов и не вижу ничего интересного, чтобы точно определить причину сбоя. Это начало происходить пару месяцев назад, поэтому я не знаю, что я мог установить, что вызывает эту проблему. Мое контекстное меню содержит элементы, связанные с TortoiseHg, TortoiseSVN, SandBoxie и парой других обычных приложений, таких как 7-Zip и т.д. Я никогда не замечал никаких сбоев при использовании контекстного меню непосредственно из Проводника Windows, но я думаю, что оно может произойти более тихо, чем Другие приложения.

Как определить, какой пункт контекстного меню вызывает эти сбои? Есть ли какой-нибудь журнал аварий, который я мог бы посмотреть где-нибудь?

Обновление: я удалил все приложения (Avast, VLC и т.д.), Добавив элементы в контекстное меню, и сбои по-прежнему происходят. Я заметил, что в некоторых приложениях (Total Commander) гораздо проще воспроизвести сбои, чем в других (IPLab), не знаю почему.

Обновление 2: сжатый файл дампа теперь доступен здесь. Он основан на приложении IPLab, доступном здесь.

1 ответ1

2

Загруженный файл аварии содержит следующую информацию:

0:014> .exr -1
ExceptionAddress: 000007fef2dabf80 (<Unloaded_SugarSyncVFSNamespace64.dll>+0x000000000001bf80)
   ExceptionCode: c0000005 (Access violation)
  ExceptionFlags: 00000000
NumberParameters: 2
   Parameter[0]: 0000000000000008
   Parameter[1]: 000007fef2dabf80
Attempt to execute non-executable address 000007fef2dabf80

Похоже, что сбой связан с Sugar Sync.

0:014> lm vm *Sugar*
start             end                 module name

Unloaded modules:
000007fe`f2d90000 000007fe`f2de5000   SugarSyncVFSNamespace64.dll
    Timestamp: Tue Nov 05 05:51:38 2013 (5278795A)
    Checksum:  000471D3
    ImageSize:  00055000

Версия, которую вы используете, с ноября 2013 года. Возможно, есть более новый доступный (не мог выяснить с веб-сайта).

Я использую WinDbg для анализа аварийного дампа.

Используемые команды:

.symfix d:\debug\symbols
.reload
.exr -1
lm vm *Sugar*

Объяснение команд:

  • Убедитесь, что символы будут загружены из Microsoft
  • Принудительно перезагрузить символы, чтобы убедиться, что они актуальны
  • Показать последнюю запись исключения
  • Показать подробную информацию о DLL, указанной в адресе исключения

Я думаю, что вы могли бы использовать подобные команды в VS2012, если вы вводите их в Immediate Window, но я не слишком знаком с этим.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .