A depuração de extensões para as ferramentas do SharePoint em Visual Studio

Você pode depurar as extensões de ferramentas do SharePoint na instância experimental ou a instância regular do Visual Studio. Se você precisar solucionar o comportamento de uma extensão, você também pode modificar os valores de registro para exibir informações adicionais sobre erros e configurar como o Visual Studio executa os comandos do SharePoint.

Extensões de depuração na instância Experimental do Visual Studio

Para proteger seu ambiente de desenvolvimento de Visual Studio de danos acidentais pelas extensões não testadas, o SDK do Visual Studio fornece uma instância de Visual Studio alternativa, chamada de instância experimental, que você pode usar para instalar e testar as extensões. Desenvolver novas extensões usando a instância regular do Visual Studio, mas você depurar e executá-los na instância experimental. Para obter mais informações, consulte The Experimental Instance of Visual Studio.

Se você usar um projeto VSIX para implantar a sua extensão e o projeto VSIX é o projeto de inicialização em sua solução, o Visual Studio automaticamente instala e executa a extensão na instância experimental ao depurar sua solução. O projeto de inicialização é o projeto que começa quando você depurar uma solução que contém vários projetos. Para obter mais informações sobre o uso de um projeto VSIX para implantar a sua extensão, consulte Implantar extensões para as ferramentas do SharePoint em Visual Studio. Para obter mais informações sobre projetos de inicialização, consulte Como: Escolha o projeto de inicialização.

Para obter exemplos que demonstram como depurar vários tipos de extensões na instância experimental do Visual Studio, consulte as instruções a seguir:

Extensões de depuração na instância Regular do Visual Studio

Se você deseja depurar seu projeto de extensão na instância regular do Visual Studio, primeiro instale a extensão na instância regular. Em seguida, anexe o depurador para um segundo processo Visual Studio. Depois que você tiver terminado, você pode remover a extensão para que ele não carrega no computador de desenvolvimento.

Para instalar a extensão.

  1. Feche todas as ocorrências de Visual Studio.

  2. Na pasta de saída de compilação do projeto de extensão, clique duas vezes no arquivo .vsix.

  3. No Visual Studio Installer de extensão de caixa de diálogo, selecione a edição do Visual Studio que você deseja instalar a extensão e clique em instalar.

    Visual Studio instala os arquivos de extensão %UserProfile%\AppData\Local\Microsoft\VisualStudio\10.0\Extensions\nome do autor\nome de extensão\versão. As últimas três pastas nesse caminho são construídas a partir de Author, Name, e Version elementos no arquivo extension.vsixmanifest para a extensão.

  4. Após a instalação de Visual Studio a extensão, clique em Fechar.

Para depurar a extensão.

  1. Inicie o Visual Studio com privilégios de administrador e abra o projeto de extensão. Consultem as seguintes etapas nesta instância do Visual Studio como o primeira instância.

  2. Inicie outra instância do Visual Studio com privilégios de administrador. Consultem as seguintes etapas nesta instância do Visual Studio como o segunda instância.

  3. Alterne para a primeira instância de Visual Studio.

  4. Sobre o Debug menu, clique em Attach to Process.

  5. No Available Processes , clique em devenv. exe. Esta entrada se refere à segunda instância de Visual Studio; Esta é a instância que você deseja depurar na sua extensão de projeto.

  6. Clique em Attach.

    Visual Studio executa o projeto de extensão no modo de depuração.

  7. Alterne para a segunda instância de Visual Studio.

  8. Crie um novo projeto do SharePoint carrega sua extensão. Por exemplo, se você está depurando uma extensão para itens de projeto de definição de lista, criar um Definição de lista project.

  9. Execute quaisquer etapas são necessárias para testar seu código de extensão.

  10. Quando você tiver terminado a extensão de depuração, feche a segunda instância de Visual Studio.

Para remover a extensão.

  1. Em Visual Studio, sobre o Ferramentas menu, clique em Extension Manager.

    O Extension Manager abre a caixa de diálogo.

  2. Na lista de extensões, clique no nome da extensão e clique em desinstalar.

  3. Na caixa de diálogo que aparece, clique em Sim para confirmar que você deseja desinstalar a extensão.

  4. Clique em Reiniciar agora para concluir a desinstalação.

Depuração de comandos do SharePoint

Se você deseja depurar um comando do SharePoint que faz parte de uma extensão de ferramentas do SharePoint, você deve anexar o depurador ao processo de vssphost4.exe. Este é o processo de host de 64 bits que executa os comandos do SharePoint. Para obter mais informações sobre comandos do SharePoint e vssphost4.exe, consulte A chamada para os modelos de objeto do SharePoint.

Para anexar o depurador ao processo de vssphost4.exe

  1. Inicie a depuração de sua extensão na instância experimental do Visual Studio ou a instância regular do Visual Studio, seguindo as instruções acima.

  2. Na instância do Visual Studio no qual você está executando o depurador, diante do Debug menu, clique em Attach to Process.

  3. No Available Processes , clique em vssphost.exe.

    ObservaçãoObservação

    Se vssphost.exe não aparecer na lista, você deve iniciar o processo de vssphost4.exe na instância do Visual Studio no qual você está executando a extensão. Normalmente, você fazer isso executando uma ação que faz com que o Visual Studio para se conectar ao site do SharePoint no computador de desenvolvimento. Por exemplo, de Visual Studio vssphost4.exe inicia quando você expandir um nó de conexão de site (um nó exibe o URL do site) na sharepoint Connections nó a Server Explorer janela, ou quando você adiciona determinados itens de projeto do SharePoint, como Instância de lista de ou Receptor de eventos itens, a um projeto do SharePoint.

  4. Clique em Attach.

  5. Na instância do Visual Studio que está sendo depurado, execute as etapas necessárias para executar o comando.

Modificando valores do registro para ajudar na depuração de extensões de ferramentas do SharePoint

Quando você depurar uma extensão das ferramentas do SharePoint no Visual Studio, você pode modificar os valores no registro para ajudá-lo a solucionar a extensão. Os valores existir sob a chave HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\SharePointTools. Esses valores não existem por padrão.

Para ajudar a solucionar qualquer extensão das ferramentas do SharePoint, você pode definir o valor de EnableDiagnostics. A tabela a seguir descreve esse valor.

Valor

Descrição

EnableDiagnostics

REG_DWORD Especifica se as mensagens de diagnóstico são exibidas na saída janela.

Para exibir mensagens de diagnóstico, defina esse valor como 1. Para interromper a exibição de mensagens, defina esse valor como 0 ou excluir este valor.

Para escrever mensagens para o saída janela a partir de um SharePoint ferramentas de extensão, usar o serviço de projeto do SharePoint. Para obter mais informações, consulte Usando o serviço de projeto do SharePoint.

Se sua extensão inclui um comando do SharePoint, você pode definir valores adicionais para ajudar a solucionar o comando. A tabela a seguir descreve esses valores.

Valor

Descrição

AttachDebuggerToHostProcess

REG_DWORD que especifica se deve exibir uma caixa de diálogo que permite que você anexe o depurador para vssphost4.exe como ele é iniciado. Isso é útil se o comando que você deseja depurar é executado pelo vssphost.exe imediatamente após ele ser iniciado e não há tempo suficiente para anexar o depurador manualmente, antes do comando é executado. Para exibir a caixa de diálogo, chamadas de vssphost4.exe a Debugger.Break método quando ele inicia.

Para habilitar esse comportamento, defina esse valor como 1. Para desativar esse comportamento, defina esse valor como 0 ou excluir este valor.

Se você definir esse valor como 1, também poderá aumentar o valor de HostProcessStartupTimeout para dar a você mesmo o tempo suficiente para anexar o depurador antes de espera de Visual Studio vssphost4.exe para sinalizar que iniciado com êxito.

ChannelOperationTimeout

REG_DWORD que especifica o tempo, em segundos, que Visual Studio de espera para um comando do SharePoint executar. Se o comando não é executado no momento, um SharePointConnectionException é lançada.

O padrão é 120 segundos.

HostProcessStartupTimeout

REG_DWORD Especifica o tempo, em segundos, que espera de Visual Studio para vssphost4.exe sinalizar que ele foi iniciado com êxito. Se vssphost4.exe não sinalizar um início bem-sucedido em tempo, um SharePointConnectionException é lançada.

O padrão é 60 segundos.

MaxReceivedMessageSize

REG_DWORD, que especifica o tamanho máximo permitido, em bytes, de mensagens do WCF que são passadas entre Visual Studio e vssphost4.exe.

O padrão é 1.048.576 bytes (1 MB).

MaxStringContentLength

REG_DWORD, que especifica o tamanho máximo permitido, em bytes, de seqüências de caracteres são passadas entre Visual Studio e vssphost4.exe.

O padrão é 1.048.576 bytes (1 MB).

Consulte também

Outros recursos

Estender as ferramentas do SharePoint em Visual Studio

Implantar extensões para as ferramentas do SharePoint em Visual Studio