Partilhar via


Depurar remotamente um projeto C# ou Visual Basic no Visual Studio

Para depurar um aplicativo do Visual Studio que foi implantado em um computador diferente, instale e execute as ferramentas remotas no computador onde você implantou seu aplicativo, configure seu projeto para se conectar ao computador remoto do Visual Studio e execute seu aplicativo.

Captura de ecrã dos componentes do depurador remoto.

Para obter informações sobre depuração remota de Aplicativos Universais do Windows (UWP), consulte Depurar um pacote de aplicativo instalado.

Requerimentos

O depurador remoto é suportado no Windows 7 e versões mais recentes e em versões do Windows Server a partir do Windows Server 2008 Service Pack 2. Para obter uma lista completa de requisitos, consulte Requisitos.

Observação

Não há suporte para depuração entre dois computadores conectados por meio de um proxy. A depuração através de uma ligação de alta latência ou baixa largura de banda, como a Internet de acesso telefónico, ou através da Internet entre países/regiões não é recomendada e pode falhar ou ser inaceitavelmente lenta.

Baixe e instale as ferramentas remotas

No dispositivo remoto ou servidor em que você deseja depurar, em vez da máquina do Visual Studio, baixe e instale a versão correta das ferramentas remotas a partir dos links na tabela a seguir.

  • Baixe a atualização mais recente das ferramentas remotas para sua versão do Visual Studio. Versões anteriores de ferramentas remotas não são compatíveis com versões posteriores do Visual Studio. (Por exemplo, se você estiver usando o Visual Studio 2019, baixe a atualização mais recente das ferramentas remotas para o Visual Studio 2019. Nesse cenário, não baixe as ferramentas remotas para o Visual Studio 2022.)
  • Transfira as ferramentas remotas com a mesma arquitetura da máquina em que está a instalá-las. Por exemplo, se você quiser depurar aplicativos x86 em um computador remoto executando um sistema operacional x64, instale as ferramentas remotas x64. Para depurar aplicativos x86, ARM ou x64 em um sistema operacional ARM64, instale as ferramentas remotas ARM64.
Versão Ligação Observações
Visual Studio 2022 Ferramentas remotas Compatível com todas as versões do Visual Studio 2022. Descarregue a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). Em versões mais antigas do Windows Server, consulte Desbloquear o download de arquivos para obter ajuda com o descarregamento das ferramentas remotas.
Visual Studio 2019 Ferramentas remotas Ferramentas remotas para Visual Studio 2019 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. Transfira a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). Em versões mais antigas do Windows Server, consulte Desbloquear o download de arquivos para obter ajuda com o download das ferramentas remotas.
Visual Studio 2017 Ferramentas remotas Ferramentas remotas para Visual Studio 2017 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. Transfira a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). No Windows Server, consulte Desbloquear o download do ficheiro para obter ajuda com o download das ferramentas remotas.
Visual Studio 2015 Ferramentas remotas Ferramentas remotas para Visual Studio 2015 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. No servidor Windows, consulte Desbloquear o download de ficheiros para obter ajuda para descarregar as ferramentas remotas.
Visual Studio 2013 Ferramentas remotas Página de download na documentação do Visual Studio 2013
Visual Studio 2012 Ferramentas remotas Página de download na documentação do Visual Studio 2012
Versão Ligação Observações
Visual Studio 2019 Ferramentas remotas Compatível com todas as versões do Visual Studio 2019. Descarregue a versão que corresponde ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). No Windows Server, veja Desbloquear o download do ficheiro para ajuda com o download das ferramentas remotas. Para obter a versão mais recente das ferramentas remotas, abra o documento Visual Studio 2022.
Visual Studio 2017 Ferramentas remotas Compatível com todas as versões do Visual Studio 2017. Baixe a versão correspondente ao sistema operativo do seu dispositivo (x86, x64 (AMD64) ou ARM64). No Windows Server, consulte a secção Desbloquear o download do ficheiro para obter ajuda com o download das ferramentas remotas.
Visual Studio 2015 Ferramentas remotas Ferramentas remotas para Visual Studio 2015 estão disponíveis em My.VisualStudio.com. Se solicitado, ingresse no programa gratuito Visual Studio Dev Essentials ou entre com sua ID de assinatura do Visual Studio. No Windows Server, consulte Desbloquear o download do ficheiro para ajuda com o download das ferramentas remotas.
Visual Studio 2013 Ferramentas remotas Página de download na documentação do Visual Studio 2013
Visual Studio 2012 Ferramentas remotas Página de download na documentação do Visual Studio 2012

Você pode executar o depurador remoto copiando msvsmon.exe para o computador remoto, em vez de instalar as ferramentas remotas. No entanto, o Assistente de Configuração do Depurador Remoto (rdbgwiz.exe) está disponível somente quando você instala as ferramentas remotas. Talvez seja necessário usar o assistente para configuração se quiser executar o depurador remoto como um serviço. Para obter mais informações, consulte (opcional) Configurar o depurador remoto como um serviço.

Observação

  • Para depurar aplicativos do Windows 10 ou posteriores em dispositivos ARM, use o ARM64, que está disponível com a versão mais recente das ferramentas remotas.
  • Para depurar aplicativos do Windows 10 em dispositivos Windows RT, use ARM, que está disponível somente no download de ferramentas remotas do Visual Studio 2015.
  • Para depurar aplicativos x64 em um sistema operacional ARM64, execute o msvsmon.exe x64 instalado com as ferramentas remotas ARM64.

Dica

Em alguns cenários, pode ser mais eficiente executar o depurador remoto a partir de um compartilhamento de arquivos. Para obter mais informações, consulte Execute o Depurador Remoto a partir de uma partilha de ficheiros.

Configurar o depurador remoto

  1. No computador remoto, localize e inicie o Depurador Remoto no menu Iniciar.

    Se não tiver permissões administrativas no computador remoto, clique com o botão direito do rato na aplicação Depurador Remoto e selecione Executar como administrador. Caso contrário, basta iniciá-lo normalmente.

    Se estiver a planear anexar a um processo que está a ser executado como administrador ou sob uma conta de utilizador diferente (como o IIS), clique com o botão direito no aplicativo Depurador Remoto e selecione Executar como administrador. Para obter mais informações, consulte Executar o Depurador Remoto como Administrador.

  2. Na primeira vez que você iniciar o depurador remoto (ou antes de configurá-lo), o assistente de Configuração de Depuração Remota será exibido.

    Na maioria dos cenários, escolha Avançar até chegar à página Configurar o Configurar o Firewall do Windows do assistente.

    Captura de ecrã da configuração do Depurador Remoto.

    Captura de ecrã da configuração do Depurador Remoto.

    Se a API do Windows Web Services não estiver instalada, o que acontece apenas no Windows Server 2008 R2, selecione o botão Instalar.

  3. Selecione pelo menos um tipo de rede no qual você deseja usar as ferramentas remotas. Se os computadores estiverem conectados através de um domínio, você deverá escolher o primeiro item. Se os computadores estiverem conectados por meio de um grupo de trabalho ou grupo doméstico, escolha o segundo ou terceiro item conforme apropriado.

    Em seguida, selecione Concluir para iniciar o depurador remoto.

    Em seguida, selecione Configurar depuração remota para iniciar o depurador remoto.

  4. Quando a configuração estiver concluída, a janela Remote Debugger será exibida.

    Captura de ecrã da janela do depurador remoto

    Captura de tela da janela do depurador remoto

    O depurador remoto está agora à espera de uma ligação. Use o nome do servidor e o número da porta mostrados para definir a configuração de conexão remota no Visual Studio.

Para interromper o depurador remoto, selecione Arquivo>Sair. Você pode reiniciá-lo a partir do menu Iniciar ou da linha de comando:

<Remote debugger installation directory>\msvsmon.exe

Observação

Se você precisar adicionar permissões para usuários adicionais, alterar o modo de autenticação ou o número da porta para o depurador remoto, consulte Configurar o depurador remoto.

Depurar remotamente o projeto

O depurador não pode implantar aplicativos de área de trabalho Visual C# ou Visual Basic em uma máquina remota, mas você ainda pode depurá-los remotamente da seguinte maneira. O procedimento a seguir pressupõe que pretendes depurá-lo num computador chamado MJO-DL, conforme mostrado na ilustração abaixo.

  1. Crie um projeto WPF chamado MyWpf.

    Se estiveres a tentar depurar remotamente uma aplicação MAUI em vez de WPF, consulta Depurar remotamente uma aplicação .NET MAUI no Windows.

  2. Defina um ponto de interrupção em algum lugar no código que seja facilmente alcançado.

    Por exemplo, você pode definir um ponto de interrupção em um manipulador de botões. Para fazer isso, abra MainWindow.xaml e adicione um controle Button da Caixa de Ferramentas e, em seguida, clique duas vezes no botão para abrir seu manipulador.

  3. No Gerenciador de Soluções, clique com o botão direito do mouse no projeto e escolha Propriedades.

  4. Na página Propriedades , selecione o separador Depurar .

    Para projetos C# direcionados ao .NET Core ou .NET 5+, a partir do Visual Studio 2022, escolha a interface do utilizador Perfis de Lançamento de Debug no separador Debug para configurar as definições de depuração remota.

    Captura de ecrã da interface de utilizador do perfil de inicialização de depuração nas Propriedades do projeto Visual Studio para C# e .NET.

    Caso contrário, para o .NET Framework, altere diretamente na guia de depuração as configurações de depuração remota do.

    Captura de tela da guia Depurar nas Propriedades do projeto do Visual Studio. A propriedade Usar máquina remota é definida como 'MJO-DL:4026'.

    Captura de tela da guia Depurar nas Propriedades do projeto do Visual Studio. A propriedade Usar máquina remota é definida como 'MJO-DL:4022'.

  5. Verifique se a caixa de texto Diretório de trabalho está vazia.

  6. Escolha Usar máquina remotae digite na caixa de texto seunomedamáquina:porta. (O número da porta é mostrado na janela do depurador remoto. O número da porta aumenta em 2 a cada versão do Visual Studio).

    Neste exemplo, use:

    MJO-DL:4026 no Visual Studio 2022

    MJO-DL:4024 no Visual Studio 2019

  7. Certifique-se de que Ativar depuração de código nativo não está selecionado.

  8. Construa o projeto.

  9. Crie uma pasta no computador remoto que seja o mesmo caminho que a pasta Debug no computador do Visual Studio: <caminho de origem>\MyWPF\MyWPF\bin\Debug.

  10. Copie o executável que você acabou de criar do seu computador Visual Studio para a pasta recém-criada no computador remoto.

    Atenção

    Não faça alterações no código ou reconstrua (ou você deve repetir esta etapa). O executável copiado para a máquina remota deve corresponder exatamente à origem e aos símbolos locais.

    Você pode copiar o projeto manualmente, usar XCopy, Robocopy, PowerShell ou outras opções.

  11. Verifique se o depurador remoto está em execução na máquina de destino (se não estiver, procure por Depurador Remoto no menu Iniciar). A janela do depurador remoto tem esta aparência.

    Captura de ecrã da janela do depurador remoto para VS 2022.

    Captura de tela da janela do Depurador Remoto para VS 2019.

  12. No Visual Studio, inicie a depuração (Depurar > Iniciar a depuraçãoou F5).

  13. Se solicitado, insira as credenciais de rede para se conectar à máquina remota.

    As credenciais necessárias variam dependendo da configuração de segurança da rede. Por exemplo, num computador de domínio, pode introduzir o seu nome de domínio e palavra-passe. Em uma máquina que não seja de domínio, você pode inserir o nome da máquina e um nome de conta de usuário válido, como MJO-DL\name@something.com, juntamente com a senha correta.

    Você deve ver que a janela principal do aplicativo WPF está aberta no computador remoto.

  14. Se necessário, tome medidas para atingir o ponto de interrupção. Você verá que o ponto de interrupção está ativo. Se não estiver, os símbolos do aplicativo não foram carregados. Tente novamente e, se isso não funcionar, obtenha informações sobre como carregar símbolos e como solucioná-los em Noções básicas sobre arquivos de símbolos e configurações de símbolos do Visual Studio.

  15. Na máquina do Visual Studio, você deve ver que a execução parou no ponto de interrupção.

    Se você tiver quaisquer arquivos não-código que precisam ser usados pelo aplicativo, você precisa incluí-los no projeto Visual Studio. Crie uma pasta de projeto para os arquivos adicionais (no Gerenciador de Soluções, clique em Adicionar > Nova Pasta). Em seguida, adicione os arquivos à pasta (no Gerenciador de Soluções, clique em Adicionar > Item Existentee selecione os arquivos). Na página Propriedades de cada ficheiro, selecione Copiar para Diretório de Saída como Copiar sempre.

Depurar remotamente um aplicativo .NET MAUI no Windows

Os aplicativos .NET MAUI são aplicativos empacotados que precisam ser registrados quando implantados, não apenas copiados para uma máquina remota. Para depuração remota, você pode implantar uma versão não empacotada do aplicativo.

Use um dos seguintes métodos para depuração remota:

  • Publique o aplicativo no dispositivo remoto como um aplicativo não empacotado usando as etapas descritas em Use a CLI para publicar aplicativos .NET MAUI não empacotados para Windowse siga as etapas neste artigo para depuração remota. (Ignore as etapas para copiar o aplicativo.)

  • Siga as etapas neste artigo, incluindo as etapas para criar um perfil de inicialização de depuração para o projeto. Antes de iniciar a depuração, edite manualmente o arquivo launchSettings.json, substituindo o valor commandNameProject por MsixPackage, conforme mostrado aqui.

    "Remote Profile": {
      "commandName": "MsixPackage",
      "remoteDebugEnabled": true,
      "remoteDebugMachine": "170.200.20.22",
      "authenticationMode": "None"
    }
    

    Ao iniciares a depuração, este método implanta primeiro uma versão não empacotada da aplicação e inicia-a.

    Observação

    Não é possível editar launchSettings.json na janela de diálogo do perfil de arranque de depuração depois de alterar o valor para MsixPackage.

Configurar a depuração com símbolos remotos

Você deve ser capaz de depurar seu código com os símbolos gerados no computador Visual Studio. O desempenho do depurador remoto é muito melhor quando você usa símbolos locais. Se tiveres de usar símbolos remotos, tens de indicar ao monitor de depuração remota que procure símbolos na máquina remota.

Você pode usar a seguinte opção de linha de comando msvsmon para usar símbolos remotos para código gerenciado: Msvsmon /FallbackLoadRemoteManagedPdbs

Para obter mais informações, consulte a ajuda de depuração remota (pressione F1 na janela do depurador remoto ou clique em Ajuda > Uso).