none
Can't debug Silverlight with IE10 x64

    Question

  • After I installed IE10 I cannot debug silverlight apps. The all start x64 mode and VS refuses to debug it (I can neither attach, nor start a debugging session), giving the error onthe screenshot:

    ---------------------------
    Microsoft Visual Studio
    ---------------------------
    Unable to start program 'http://localhost:57802/SilverlightApplication2TestPage.aspx'.

    The 32-bit version of the Visual Studio Remote Debugging Monitor (MSVSMON.EXE) cannot be used to debug 64-bit processes or 64-bit dumps. Please use the 64-bit version instead.
    ---------------------------
    OK
    ---------------------------

    I have Silverlight Developer Runtime x64 installed. There seems no way to start IE10 in x86 mode.

    P.S. I tried fiddling with the registry and found out that VS is using this key HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\DbgPackShimPath so it is not trying 64 bits at all. Tried to add this key to HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework, but it ignores it. I am at a loss. If I can't resolve it, my only choice is to remove IE10 which I don't want to do.

    I have posted a Connect issue, but have no answer yet and it's kind of urgent.

    https://connect.microsoft.com/VisualStudio/feedback/details/774460/cannot-debug-silverlight-win7-x64-ie10


    Welcome to the zone where normal things don't happen very often

    Wednesday, December 19, 2012 10:33 AM

Answers

  • Mystery solved!

    On a 64-bit operating system, IE10 always run its main process as 64-bit mode and the tabs can be 32-bit or 64-bit (depending on "Enable Enhanced Protected Mode" setting). If you set the registry setting TabProcGrowth (in the "Main" registry key of Internet Explorer) to 0, this causes IE to run the tabs in the main process and thus they are always 64-bit. Silverlight/VS (I am not sure which) does not support x64 debugging and therefore VS cannot find the x86 process to debug.

    So, if you run the tabs in the main process (as I had), you cannot debug Silverlight in a x64 operating system. I had this setting set to 0 some time ago on IE7 or IE8 and forgot about it.

    I removed the value and now it works as expected.


    Welcome to the zone where normal things don't happen very often

    Sunday, January 13, 2013 2:10 PM

All replies

  • Try this out:

    Go to the Properties of your "Web project" (you should have 2, the Silverlight and Web projects) and pick "Web" in the left menu. in the bottom page, check "Silverlight" and "Enable Edit and Continue" check boxes. Recompile the Solution and try to debug again.

    Wednesday, December 19, 2012 11:21 AM
  • Nope, that didn't help. And I can't imagine how it would if Silverlight doesn't seem to be registered properly...

    Welcome to the zone where normal things don't happen very often

    Thursday, December 20, 2012 9:39 PM
  • Hi Vladislav,

    You said that you have installed Silverlight Developer Runtime x64.

    When you gets the error"the 32-bit version of the Visual Studio Remote Debugging Monitor (MSVSMON.EXE) cannot be used to debug 64-bit processes or 64-bit dumps. Please use the 64-bit version instead", it means the Visual Studio is x86, you should do this to solve it:

    To fix this problem, before you start debugging the dump file, run the 64-bit version of msvsmon.exe from %ProgramFiles%\Microsoft Visual Studio 9.0\Common7\IDE\Remote Debugger\x64.

    After doing this, if you getting the other error:

    "The version of this file is not compatible with the version of Windows you're running. Check you computer's system information to see whether you need an x86 (32-bit) or x64 (64-bit) version of the program, and then contact the software publisher."

    Unfortunately, this error is rather confusing and doesn't tell you anything about the root cause. The problem here is that you are running a 32-bit operating system and therefore, cannot run a 64-bit process. Hence, you need a 64-bit operating system to run the 64-bit version of msvsmon.exe.

    So you should do the following :
    •Need a 64-bit version of Windows.
    •Need to run the 64-bit version of msvsmon.exe first.

    Best Regards,

     


    Amy Peng
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Friday, December 21, 2012 2:44 AM
  • I am not debugging a dump file, I am debugging a project using F5 or attaching to process. I tried running the x64 version of msvsmon.exe, but still get the same error.

    Welcome to the zone where normal things don't happen very often

    Thursday, December 27, 2012 1:30 PM
  • Hi Vladislav,

    If you are running the x64 version of msvsmon.exe, the error should be fixed. Please try to make sure the file which you download is correct. And could you please tell me which operating system are you using?

    If you have any problem, please let me know.

    Best Regards,


    Amy Peng
    MSDN Community Support | Feedback to us
    Develop and promote your apps in Windows Store
    Please remember to mark the replies as answers if they help and unmark them if they provide no help.

    Monday, December 31, 2012 6:56 AM
  • Hi Amy,

    I am using Win 8 x64, but I had the same problem with Windows 7 x64 (my previous operating system, I upgraded over the holidays). The problem appeared when I installed IE10 on Windows 7.

    I am pretty sure I am running the x64 version of msvsmon.exe - I didn't have to download it - I had it already installed. So I just run it, then hit F5 and get the same error. I also am trying to attach to a process and get the same error. Now, let me be clear, I am *not* trying to attach to another computer, I am trying to debug a Silverlight application on my computer. What you are describing is debugging a dump.

    Maybe I am missing something...


    Welcome to the zone where normal things don't happen very often

    Wednesday, January 02, 2013 5:58 PM
  • Mystery solved!

    On a 64-bit operating system, IE10 always run its main process as 64-bit mode and the tabs can be 32-bit or 64-bit (depending on "Enable Enhanced Protected Mode" setting). If you set the registry setting TabProcGrowth (in the "Main" registry key of Internet Explorer) to 0, this causes IE to run the tabs in the main process and thus they are always 64-bit. Silverlight/VS (I am not sure which) does not support x64 debugging and therefore VS cannot find the x86 process to debug.

    So, if you run the tabs in the main process (as I had), you cannot debug Silverlight in a x64 operating system. I had this setting set to 0 some time ago on IE7 or IE8 and forgot about it.

    I removed the value and now it works as expected.


    Welcome to the zone where normal things don't happen very often

    Sunday, January 13, 2013 2:10 PM
  • I have this same exact error and this doesn't solve it.  I had never added this registry key and it doesn't exist under Internet Explorer main area.

    If I uncheck the Silverlight debugging option from the host site then I can run, but that's not a solution since I'm unable to debug the application.

    Monday, June 17, 2013 12:05 PM
  • I also have this problem on one of my development machines with Win7 Pro x64 (service pack 1) and VS2010 (Version 10.40219.1 SP1Rel).  Cannot debug Silverlight apps with IE10 so had to uninstall it and go back to IE9.
    Tuesday, July 02, 2013 4:11 PM
  • I have this problem also.  I too gave up and went back to IE9. Very frustrating to say the least.
    Thursday, July 25, 2013 7:14 AM