DEP2300: The Case of The Failed Remote Debug Session
While working on a Windows 8 Metro application project, I had to actually try the app on a live tablet. The procedure for this is pretty obvious – use the Remote Debugging option available.
I did this more than once on Windows 8 Consumer Preview, so I did not expect any problems to happen with the Release Preview coupled with Visual Studio 2012 RC. The same applies to RTM versions of Windows and Visual Studio 2012. However, it seemed like there was a problem. I saw the machine just fine when I was selecting the debug target:
Once I initiated the process, however, I was getting this:
DEP2300 appears to be a rather unique error, because there is no documentation available online that would cover it. The clue, however, was TailoredDeploy.exe, and if it failed to run, most likely there are some issues acquiring the Windows 8 developer license. The Remote Debugging Monitor showed that the host computer successfully connected to the target, but the connection was dropped pretty much instantly.
Here is a post that gave me the idea that I should manually experiment with license removal and acquisition. After a couple of attempts, I noticed that if I remove the license on the tablet and then initiate the remote debug session, the machine that actually starts the session is in waiting state – the tablet needs to get a license. So, TailoredDeploy.exe is being launched somehow. The license is then acquired, but the host is never notified about the issue.
I tried different things – removing the authentication, running as administrator. Jaime Rodriguez helped me out by testing a couple of extra options, working around the Windows Firewall, but it didn’t seem to pick up the session. The versions of Visual Studio were compatible – both the desktop and the tablet had 2012 RC installed, therefore they had the same toolset out-of-the-box.
At the end, I decided that the issue might be in the Remote Debugging tools themselves, so I just removed the individual entry through the Control Panel and forced a Visual Studio repair on the tablet.
Once the tools were re-installed, I managed to get the remote debugging session working. The culprit? The Remote Debugging toolset version (RCREL).
Somehow, the tablet had the beta remote debugging tools installed instead of the RC. And before you ask – yes, it was a clean Visual Studio 2012 install (via the web installer). With an RTM release, make sure that you are using the RTM RD tools instead of beta or RC.