Pergunta

É possível instalar o x86 Remote Debugger as a Service em uma máquina de 64 bits?Preciso anexar um depurador ao código gerenciado em um processo da Sessão 0.O processo é executado em 32 bits, mas o serviço de depurador instalado é de 64 bits e não será anexado ao processo de 32 bits.

Tentei criar o serviço usando o comando SC, consegui iniciar o serviço e verifiquei se ele estava sendo executado nos processos do gerenciador de tarefas.No entanto, quando tentei conectar-me a ele com o Visual Studio, ele disse que o monitor do depurador remoto não estava habilitado.Quando parei o serviço x86 e iniciei o serviço x64 e ele conseguiu encontrar o monitor, mas ainda ocorreu um erro.

Aqui está o erro quando tento usar o depurador remoto:Não é possível anexar ao processo.A versão de 64 bits do Monitor de Depuração Remota do Visual Studio (MSVSMON.EXE) não pode depurar processos de 32 bits ou dumps de 32 bits.Use a versão de 32 bits.

Aqui está o erro quando tento anexar localmente:A conexão a um processo em uma sessão diferente do servidor de terminal não é suportada neste computador.Tente a depuração remota na máquina e execute o Monitor de Depuração Remota do Microsoft Visual Studio na sessão do processo.

Se eu tentar executar o depurador remoto de 32 bits como um aplicativo, ele não funcionará, pois o depurador remoto está sendo executado na minha sessão e não na sessão 0.

Foi útil?

Solução

Isso funciona na minha máquina (TM) depois de instalar o rdbgsetup_x64.exe e passar pelo assistente de configuração:

sc stop msvsmon90
sc config msvsmon90 binPath= "C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe /service msvsmon90"
sc start msvsmon90

Outras dicas

Tivemos o mesmo problema ao tentar depurar remotamente um site que está rodando em 32 bits dentro do IIS de 64 bits.

Você também pode fazer isso:

  • Pare o serviço de depuração padrão (que será X64, pois o instalador terá sido inteligente e configurou o que é executado).
  • Navegue até a pasta de menu Iniciar do Deburgador remoto e execute o serviço de depuração x86.Ignore o aviso sobre
    32 bits/64 bits.
  • Abra a janela Ferramentas-> Opções da janela do aplicativo de depurador remoto e faça
    nota do valor no campo 'Servidor
    Caixa de texto Nome'.
  • Agora você pode anexar seu Visual Studio a ele copiando o 'nome do servidor'
    Valor na caixa de texto/combinação de texto 'Qualificador' na caixa de diálogo Anexar para processo
    do Visual Studio.

Por falar nisso, há também um bug de baixo nível com a autenticação Kerberos se você estiver conectando do Windows 2008/7/Vista a uma máquina 2003, relatado à MS (e depois fechado como 'externo') via Connect aqui: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=508455

Eu não tentei isso, mas aqui vai uma sugestão de qualquer maneira:

Tente instalar o serviço de depurador remoto x86 manualmente.

sc create "Remote Debugger" binpath= "C:\use\short\filename\in\the\path\x86\msvsmon.exe /service msvsmon90"

Duas notas:

  • Você precisará usar nomes de arquivos curtos no caminho para msvsmon.exe para evitar ter que citar o caminho (já que todo o comando precisa ser citado)
  • Deve haver um espaço após o "binpath =" (e nenhum espaço antes do caractere '=').Quem escreveu o analisador da linha de comando para o comando SC deve ser amaldiçoado.

Em seguida, você pode usar o miniaplicativo do painel de controle services.msc para executá-lo com as credenciais corretas.

Você provavelmente terá que parar ou até mesmo excluir o serviço de depurador remoto x64 existente.

Posso confirmar que o que você deseja fazer realmente funcionará.Costumo conectar minha estação XP de 32 bits a um servidor x64 win2003 com o depurador remoto VS2008.

Funcionou para mim sem instalar software adicional.acabei de copiar o C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger pasta na VM e iniciou o msvsmon.exe de x86 pasta.Tanto meu convidado quanto meu anfitrião estão x64.

1) Instale a versão x64.Isso também instala o depurador x86, mas não cria um atalho.

2) Você pode encontrar o executável para depuração do processo x86 aqui...C:\Arquivos de Programas\Microsoft Visual Studio 14.0\Common7\IDE emote Debugger\x86\msvsmon.exe

3) Se desejar, fixe-o na barra de tarefas.

Às vezes ocorria esse erro, basta fechar o visual studio e abrir novamente, está tudo bem!

Comportamento muito estranho de vs

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top