Publish an Application via HTML5 and Microsoft RemoteApp using RemoteSpark
Tools required:
Microsoft Terminal Server (which hosts the RemoteApp capability)
Microsoft Active Directory Domain Controller
An app (can use Notepad or Calculator to test, can also be a packaged app)
RemoteSpark
An end device with Google Chrome
I recently found myself needing a Windows application to run on a new MacBook Air. The application in question, NaviCat for MySQL, has additional features in the Windows version that are absolutely necessary to my needs. So what’s the easiest way to run this application on a MacBook Air?
At first the VMware in me screamed, “FUSION!” Fusion is great and I actually did start the painfully easy VMware Fusion task of importing an existing Windows Vista-based laptop (where NaviCat was previously residing) only to realize that I didn’t want to give up all my precious hard drive space to a full blown Windows desktop virtual disk image.
On to plan B.
Since I use both a MacBook Air and an iPad every single day I decided to go the published app route. I previously wrote why published apps are better than published desktops for most tablet users.
Unlike my earlier days in IT, I also don’t have any gear at home to run a lab or host something out of my house, so I needed the solution to be completely cloud-based.
The solution
Despite my growing appreciation for VMware vCloud (I was not a fan at initial product launch), I’ve yet to find a cloud easier to consume with a credit card in hand than Amazon Web Services. Upon logging into AWS I fired up a t1.Micro AMI (Windows_Server-2008-SP2-English-64Bit-Base-2012.06.12) and performed the following:
Installed Terminal Services and configured RDWeb to listen on 8080
Opened appropriate ports on the Windows firewall
Intalled RemoteSpark Gateway and configured it to listen on 80
Installed Directory Services and ran DCPromo
Added a few applications to RemoteApp and configured permissions
First I tested out that Terminal Services was working for the application, and once I sorted out a few minor issues with the publishing of the application it was time to test out RemoteSpark.
What is RemoteSpark
RemoteSpark “is a Canadian startup company in Calgary, Alberta. We are dedicated to providing best remote access software.” In my opinion, Walter Yongtao Wang, creator of RemoteSpark, is a freaking genius. Someone should stroke this guy a check.
RemoteSpark has an HTML5 RDP Client that leverages Google Chrome to deliver an RDP session WITHOUT ANY CLIENT, all done via HTML5. For those on Windows and using Internet Explorer, a simple installation of the Google Chrome Frame plugin will allow RemoteSpark to deliver an RDP session (which can include either a full desktop, or in my case, an individual published application).
On an iPad it requires nothing. Simply point the browser to the URL of your RemoteSpark Gateway (in my case, the single purpose AMI doing everything).
On my MacBook Air I installed Google Chrome and it worked like a champ.
So I now have a solution that I can access anywhere, that requires no gear at my house, extremely minimal costs, and used some damn cool technology to meet my needs, since NaviCat can’t have feature parity between Windows and Mac versions of their products.