Update: VMware has now published a KB article covering this issue.  The fix steps provided there are the same as below.

Using Horizon View 5.2 Feature Pack 1 against a Windows XP Desktop source HTML access connections fail with:

An error has occurred: {“code”:”ECONNRESET”}

Subsequent tests against a Windows 7 Desktop source all function correctly, so I know my configuration is correct.  What’s the problem here, and is there a solution?

Great question, so what’s actually going on here?  It’s even talked about on Wee Kiong Tan’s blog here, he had the same issue, so lets walk though what causes this.

Our journey to a resolution starts by talking a little about what Horizon View HTML Access is and what the Feature Pack does to provide it.

Horizon View HTML Access provides a rich, client-less, HTML 5 based entry point into your Horizon View 5.2 based virtual desktop based infrastructure.  That’s right, client-less.  As long as your platform has Chrome 22+, IE 9+, Safari 5.1.7+ or Firefox 16+ you’re golden.  No need for the Horizon View Client, no need to dictate the user’s platform.  It just works… but what do you need to do?

Well, the setup is quite simple really.  Here in a moment I’ll point you to the docs, but for now lets run through it.  You already have Horizon View providing all your virtual desktops, right?  Of course you do!  To enable HTML access to your desktops it boils down to two parts.  First, install the HTML Access pack to your Connection Server and open the required ports between it and your Security Servers, if you use them in your architecture. Second, install the Remote Experience Agent on top of your View Agent for the desktops in the pool you want to have available via HTML Access, and enable HTML Access in the pool’s settings.  That’s it!  Browse to your Connection Server in a compatible browser and away you go.  Easy!

So, back to the problem at hand, what causes {“code”:”ECONNRESET”} when HTML Access is attempted against a Windows XP target that has undergone sysprep?  Notice how I keep putting “sysprep” in there?  It’s not that I like to type sysprep, there’s a reason.

What happens is on your base image, when you install the Remote Experience Agent, a SSL certificate is generated and placed in the local certificate store of the Windows XP desktop image.  That’s all fine and dandy, and would work… until you sysprep the image rolling out your pool.  What does sysprep have to do this you ask?  Well, sysprep in this scenario, on Windows XP mind you, changes the permissions on the private key files for your certificate store, specifically the one generated during the Remote Experience Agent isntallation.  This permission change renders the SSL certificate generated during install inaccessible, and as a result HTML Access will fail with {“code”:”ECONNRESET”}.  Not a helpful error, is it?

NOTE: If you use QuickPrep in lieu of sysprep in the configuration of your pool this issue is not present.

Ok, so the SSL certificate is inaccessible, HTML Access fails, what do we do about it?  Time for some registry work.

  1. Open Regedit.exe
  2. Browse to HKEY_LOCAL_MACHINE\Software\VMware, Inc.\VMware Blast\Config
  3. Find SslHash (Reg_SZ) and delete just the VALUE of that key, not the key itself.
  4. Close Regedit.exe and restart the service, or computer.  Whatever floats your boat.

This will force the Remote Experience Agent to regenerate the SSL certificate and key, which in turn brings HTML Access back to life for that desktop.  This can easily be packed into a GPO script for all your XP desktops, if you still have any.  Ultimately this is an actual bug that is being addressed.  Watch the release notes of upcoming releases for this to be mark as resolved.

I hope this information has been useful.  Below you will find the documentation and release notes for Horizon View 5.2 HTML Access if you’d like to read more about it.  If you do not have the Feature Pack and would like more information please reach out to your VMware Sales or Support Team today.

Horizon View 5.2 Feature Pack 1 Release Notes

Horizon View HTML Access Release Notes

Horizon View HTML Access Documentation