Domanda

È possibile installare x86 Remote Debugger come servizio su un computer a 64 bit?Devo collegare un debugger al codice gestito in un processo Session 0.Il processo viene eseguito a 32 bit ma il servizio debugger che viene installato è a 64 bit e non si collegherà al processo a 32 bit.

Ho provato a creare il servizio utilizzando il comando SC e sono riuscito ad avviare il servizio e a verificare che fosse in esecuzione nei processi di Gestione attività.Tuttavia, quando ho provato a connettermi con Visual Studio, mi è stato detto che il monitor del debugger remoto non era abilitato.Quando ho interrotto il servizio x86 e avviato il servizio x64, sono riuscito a trovare il monitor, ma ho ricevuto ancora un errore.

Ecco l'errore quando provo a utilizzare il debugger remoto:Impossibile collegarsi al processo.La versione a 64 bit di Visual Studio Remote Debugging Monitor (MSVSMON.EXE) non può eseguire il debug di processi o dump a 32 bit.Utilizza invece la versione a 32 bit.

Ecco l'errore quando provo a collegarmi localmente:Il collegamento a un processo in una sessione del server terminal diversa non è supportato su questo computer.Prova il debug remoto sul computer ed esegui il monitoraggio del debug remoto di Microsoft Visual Studio nella sessione del processo.

Se provo a eseguire il debugger remoto a 32 bit come applicazione, non funzionerà collegando b/c il debugger remoto è in esecuzione nella mia sessione e non nella sessione 0.

È stato utile?

Soluzione

Funziona sulla mia macchina(TM) dopo aver installato rdbgsetup_x64.exe e aver seguito la procedura guidata di configurazione:

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

Altri suggerimenti

Abbiamo riscontrato lo stesso problema durante il tentativo di eseguire il debug remoto di un sito Web in esecuzione a 32 bit all'interno di IIS a 64 bit.

Puoi anche fare questo:

  • Ferma il servizio di debug predefinito (che sarà X64 poiché il programma di installazione sarà stato intelligente e configurato quello da eseguire).
  • Passare alla cartella del menu di avvio del debugger remoto ed eseguire il servizio di debug X86.Ignora l'avvertimento su
    32bit/64bit.
  • Apri la finestra Strumenti-> Opzioni della finestra App Debugger Remote e fai
    nota del valore nel campo 'Server
    Casella di testo "Nome".
  • Ora puoi allegare il tuo Visual Studio ad esso copiando il "nome del server"
    Valuta nella casella di testo/combo "qualificatore" sulla finestra di dialogo Allega per elaborare
    di VisualStudio.

In una nota correlata, esiste anche un bug di basso livello con l'autenticazione Kerberos se ci si collega da Windows 2008/7/Vista a una macchina del 2003, segnalato a MS (e quindi chiuso come "esterno") tramite Connetti qui: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=508455

Non l'ho provato, ma ecco comunque un suggerimento:

Prova a installare manualmente il servizio debugger remoto x86.

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

Due note:

  • Dovrai utilizzare i filmati brevi nel percorso di msvsmon.exe per evitare di dover citare il percorso (poiché l'intero comando deve essere citato)
  • Ci deve essere uno spazio dopo il "Binpath =" (e nessuno spazio prima del personaggio '=').Chiunque abbia scritto il parser della riga di comando per il comando SC dovrebbe essere maledetto.

Quindi puoi utilizzare l'applet del pannello di controllo services.msc per farlo funzionare con le credenziali giuste.

Probabilmente dovrai interrompere o forse addirittura eliminare il servizio debugger remoto x64 esistente.

Posso confermare che quello che vuoi fare funzionerà davvero.Collego spesso la mia configurazione XP a 32 bit a un server Win2003 x64 con debugger remoto VS2008.

Ha funzionato per me senza installare software aggiuntivo.Ho appena copiato il C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger cartella sulla VM e ho avviato il file msvsmon.exe dal x86 cartella.Sia il mio ospite che il mio ospite lo sono x64.

1) Installa la versione x64.Ciò installa anche il debugger x86 ma non crea un collegamento.

2) Puoi trovare l'eseguibile per il debug del processo x86 qui...C:\Programmi\Microsoft Visual Studio 14.0\Common7\IDE emote Debugger\x86\msvsmon.exe

3) Se lo desideri, aggiungilo alla barra delle applicazioni.

A volte si verificava questo errore, chiudo semplicemente Visual Studio e lo riapro, è tutto OK!

Comportamento molto strano da parte del vs

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top