Estou apenas escrevendo uma extensão VSIX para Visual Studio 2010 e não consigo descobrir como depurá-la.
Um método óbvio é enviar mensagens. Usos de modelo de extensão Trace.WriteLine()
. Mas onde encontrar sua saída?
Estou apenas escrevendo uma extensão VSIX para Visual Studio 2010 e não consigo descobrir como depurá-la.
Um método óbvio é enviar mensagens. Usos de modelo de extensão Trace.WriteLine()
. Mas onde encontrar sua saída?
As extensões do Visual Studio podem ser depuradas como qualquer outro aplicativo. Você só precisa configurar a experiência de depuração para iniciar o devenv com a extensão carregada. Tente o seguinte
Clique no botão de rádio para Start External Program
. Aponte para o binário devenv.exe. Na minha máquina está localizado em
C: \ Arquivos de programas (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ devenv.exe
Em uma máquina não x64, embora você possa remover a parte "(x86)".
Em seguida, defina os argumentos da linha de comando como /rootsuffix Exp
. Isso informa ao Visual Studio para usar o hive experimental em vez do hive de configuração normal. Por padrão, as extensões VSIX quando construídas se registrarão na seção experimental.
Agora você pode usar o F5 e ele iniciará o Visual Studio com seu VSIX como uma extensão disponível.
A resposta aceita por @JaredPar é tecnicamente correta, mas sofre com o fato de que você precisa refazê-la para cada desenvolvedor, toda vez que obtém uma nova cópia do código e sempre que o
csproj.user
arquivo é excluído. Ao fazer isso dessa forma, as configurações são salvas nocsproj.user
arquivo.A melhor opção é colocar as configurações no
csproj
arquivo para que não sejam perdidas. Infelizmente, o Visual Studio não permite que você faça isso automaticamente, então você precisa adicionar manualmente as configurações. Felizmente, as configurações são as mesmas para qualquer projeto.Clique com o botão direito e descarregue o projeto, clique com o botão direito novamente e edite o
csproj
arquivo do projeto. No XML, adicione o seguinte ao primeiroPropertyGroup
, por exemplo, logo depoisTargetFramework
.Isso tem as seguintes vantagens;
Como @MBulli afirma nos comentários, se você fez as alterações na resposta aceita, exclua seu
*.csproj.user
arquivo porque as configurações nele substituirão as que você adicionou aocsproj
arquivo principal .fonte
O método OutputWindowHelper.OutputString grava no painel da janela de saída 'Geral' (Ctrl Alt o). Eu adicionei esta linha em minhas referências .csproj para conseguir isso no VS 2013
Veja também esta resposta .
fonte
Se você tentar depurar um UnitTestExtension, também deverá anexar o depurador aos processos vstest. *. Exe como descrito aqui . Caso contrário, você poderá ver o ponto de interrupção de ativação, mas o depurador nunca o atingirá.
fonte