2011-07-18 25 views
5

Estoy tratando de depuración remota utilizando un servicio de Visual Studio 2005.Visual Studio depuración remota un servicio

Cuando corro msvsmon.exe como una aplicación, me sale la interfaz de usuario y puedo cambiarlo a noauth y anyuser , cuando intento conectarme al proceso desde Visual Studio de forma remota, aparece un error que dice que no se puede conectar a un proceso que se está ejecutando en una sesión en la que msvsmon.exe no se está ejecutando. La sesión del servicio es 0.

Entonces puedo ejecutar msvsmon.exe correctamente como un servicio, pero no puedo configurarlo para que esté en/noauth y/anyuser mode.

El binPath para el servicio es: "C: \ Archivos de programa \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ Remote depurador \ x86 \ msvsmon.exe"/servicio msvsmon90

tanto/noauth y/anyuser son la línea de comandos cambia para msvsmon.

Rellenar los 'parámetros de inicio' en la ventana de propiedades del servicio no afecta nada.

cambiar el binPath del servicio a:

"c: \ Archivos de programa \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ depurador remoto \ x86 \ msvsmon.exe"/servicio msvsmon90/noauth/anyuser

tampoco funciona (ya que el servicio no se inicia correctamente).

¿Cómo hago para que el monitor de depuración remota se ejecute como un servicio en modo noauth y anyuser?

Respuesta

2

No estoy seguro si esto funcionaría para usted, pero ¿ha intentado usar psexec (desde sysinternals) para ejecutar msvsmon interactivamente en la sesión 0?

La línea de comandos sería algo como esto (desde un símbolo del sistema elevado):

psexec –sd –i 0 "c:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe" /noauth /anyuser

estoy haciendo algo similar a depurar un código al cerrar la sesión de Ventanas.

+0

/nosecuritywarn es requerido, también. –

1

Necesitará un interruptor adicional que suprima la advertencia ya que el programa no se iniciará pero se atascó en un mensaje de advertencia en este caso (puede verificar por cierto cuando agregue un argumento/port: xxx y ver que sin la supresión hay sin oyente en el puerto especificado).

Así el ejemplo de trabajo:

advertencias
psexec –sd –i 0 "c:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe" /noauth /anyuser /port:4000 /nosecuritywarn 
+0

El interruptor "/ nosecuritywarn" lo hace. ¡Gracias! –

0

Otro interruptor útil es/nowowwarn la supresión de monitor de Win32 en la máquina de 64 bits. Para obtener la lista completa de todos los switches disponibles, ejecute \ msvsmon /?

Cuestiones relacionadas