Como identificar a causa de uma falha no menu de contexto

4

Quando clico com o botão direito do mouse em um arquivo em uma caixa de diálogo aberta, ele faz o aplicativo subjacente travar "de vez em quando". Isso acontece em muitos aplicativos, como Total Commander e Visual Studio. O aplicativo não trava a cada vez, mas quando o fazem é antes de clicar em qualquer item no menu de contexto. Eu olhei para o call-stack e não vejo nada interessante para identificar qual é a causa do acidente. Isso começou a acontecer há alguns meses, então não sei o que eu poderia ter instalado que causa esse problema. O meu menu de contexto contém itens relacionados com o TortoiseHg, o TortoiseSVN, o SandBoxie e algumas outras aplicações habituais como o 7-Zip, etc. Eu nunca notei qualquer falha ao usar o menu de contexto diretamente do Windows Explorer, mas acho que poderia estar falhando mais silenciosamente do que outros aplicativos.

Como posso identificar qual item do menu de contexto está causando essas falhas? Existe algum log de acidente que eu possa olhar em algum lugar?

Atualização: Eu desinstalei todas as aplicações (Avast, VLC, etc.) adicionando itens no menu de contexto e as falhas ainda acontecem. Notei que é muito mais fácil reproduzir as falhas em alguns aplicativos (Total Commander) do que em outros (IPLab), não tenho certeza do motivo.

Atualização 2: O arquivo de despejo compactado agora está disponível aqui . Ele é baseado no aplicativo IPLab disponível aqui .

    
por rold2007 30.01.2014 / 04:54

1 resposta

2

O arquivo de falha enviado tem as seguintes informações em:

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

Parece que a falha está relacionada ao 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

A versão que você está usando é de novembro de 2013. Talvez haja uma nova disponível (não foi possível descobrir no site).

Estou usando o WinDbg para analisar o despejo de memória.

Comandos usados:

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

Explicação dos comandos:

  • Verifique se os símbolos serão baixados da Microsoft
  • Forçar um recarregamento dos símbolos para garantir que estejam atualizados
  • Mostrar o último registro de exceção
  • Mostrar informações detalhadas sobre a DLL fornecida no endereço da exceção

Eu acho que você poderia usar comandos semelhantes no VS2012 se você inseri-los na janela Immediate Window, mas eu não estou muito familiarizado com isso.

    
por 03.02.2014 / 23:07