Visual Studio and Parallels Desktop Pro Edition

1
Share on FacebookTweet about this on TwitterShare on LinkedInShare on Google+Email this to someonePrint this pagePin on PinterestShare on TumblrBuffer this pageShare on RedditShare on StumbleUpon

Probably the most widely used developer tool is Visual Studio, and for that reason Parallels Desktop for Mac Pro Edition includes some special integration with Visual Studio. In this blog post I will describe and demo this integration.

When the Parallels Tools for Parallels Desktop Pro Edition are installed in Windows, a Visual Studio plug-in, VMDebugHelper.vsix, is placed in the DevTools folder in the Parallels Tools folder in Windows. (See Figure 1.)

Figure 1: Visual Studio plug-in

Figure 1: Visual Studio plug-in

To install this plug-in, all the user must do is double-click on this file when Visual Studio is running.

This plug-in simplifies the use of remote debugging. In this context, “remote debugging” means debugging a program running in another virtual machine (VM) while you’re running Visual Studio and developing an app in a VM.

This plug-in installs a new menu in Visual Studio. (See Figure 2.)

Figure 2: The Parallels remote debugging menu in Visual Studio.

Figure 2: The Parallels remote debugging menu in Visual Studio.

In this figure, I have the choice of the four currently running VMs: Windows XP, Windows 10, Windows 8.1 Pro, and Windows 7. The following 30-second video shows a remote debugging session of a small console application in the Windows 8.1 VM:

In the video, since the console application will run in the Desktop side of Windows 8.1, I first switch to the Desktop side. Then, in Visual Studio where I already have the console application project open and a breakpoint set in the code, I start a remote debugging session in Windows 8.1 Pro.

The necessary network connections are then established and the console application is launched in Windows 8.1. The breakpoint is reached, stepped over, and the console application runs to completion.

This type of remote debugging has three benefits for the developer:

Benefit 1:

Debugging can be done in a different OS than the OS in which development takes place. In Figure 2 and in the above video, I could have done the debugging in any one of four different OSes.

Benefit 2:

If the application which is being debugged were to crash (or even crash the OS), that crash is confined to the remote OS. My work in Visual Studio is safe.

Benefit 3:

Although not shown in this video, Parallels Desktop Pro Edition also enables the developer to simulate the network speed and even introduce network instabilities in the form of dropped packets.

If the application being debugged relied on networking, as is the case with Azure and many other technologies today, the application can be tested in a low bandwidth scenario and with varying amounts of network noise. (This network conditioning has been the subject of another blog post.)

We’re looking forward to adding even more integration with other development tools in Parallels Desktop Pro Edition. Let us know the tools you would like to see Parallels Desktop Pro Edition work closely with in a comment, or reach out to us on Facebook or Twitter.

Need Microsoft Windows operating system to get started with Visual Studio? Buy directly below:

Windows 10 Home

Windows 10 Pro

Kurt has been a Mac developer since before the Mac came out. Today he is the Senior Product Manager at Parallels where he works on both Parallels Desktop for Mac and Parallels Access. Prior to Parallels, he was the Senior Mac Evangelist in the Macintosh Business Unit (MacBU) at Microsoft Corp. Kurt is the author of three books and has lectured internationally on object-oriented programming, UI design, and virtualization. Kurt is also a Microsoft Office for Mac and iOS Accredited Support Professional for 2014 and 2015. Outside of work, Kurt has been a fencer for many years, has four times been a member of the US team at the world championships, and has also been the coach of the US team.