x86 Remote Debugger Service on x64

久未见 提交于 2019-11-30 18:30:58

This works on my machine(TM) after installing rdbgsetup_x64.exe and going through the configuration wizard:

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

We had the same problem when trying to remote debug a website that is running as 32 bit inside 64 bit IIS.

You can also do this:

  • Stop the default debugging service (which will be x64 as the installer will have been clever and configured that one to run).
  • Navigate to the Remote Debugger start menu folder and run the x86 debugging service. Ignore the warning about
    32bit/64bit.
  • Open the Tools->Options window of the remote debugger app window and make
    note of the value in the 'Server
    Name' text box.
  • Now you can attach your visual studio to it by copying the 'Server Name'
    value into the 'Qualifier' text/combo box on the Attach To Process dialog
    of Visual Studio.

On a related note, there is also a low-level bug with Kerberos authentication if you are attaching from Windows 2008/7/Vista to a 2003 machine, reported to MS (and then closed as 'external') via Connect here: https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=508455

I haven't tried this, but here's a suggestion anyway:

Try installing the x86 remote debugger service manually.

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

Two notes:

  • You'll need to use short filenames in the path to msvsmon.exe to prevent having to quote the path (since the whole command needs to be quoted)
  • there must be a space after the "binpath=" (and no space before the '=' character). Whoever wrote the command line parser for the sc command should be cursed.

Then you can use the services.msc control panel applet to get it running with the right credentials.

You'll probably have to stop or maybe even delete the existing x64 remote debugger service.

I can confirm that what you want to do will indeed work. I often connect my 32 bit xp worstation to a x64 win2003 server with VS2008 remote debugger.

1) Install the x64 version. This also installs the x86 debugger but does not create a shortcut.

2) You can find the executable for x86 process debugging here... C:\Program Files\Microsoft Visual Studio 14.0\Common7\IDE\Remote Debugger\x86\msvsmon.exe

3) If you want to, pin it to the task bar.

Worked for me without installing additional software. I just copied the C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\Remote Debugger folder on the VM and started the msvsmon.exe from the x86 folder. Both my guest and host are x64.

Sometimes this error occurred, I just close visual studio and open it again, everything is OK!

Very strange behavior from vs

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!