Release: VMware Horizon View 5.3

VMware Horizon View 5.3 went GA last night and is now available to download.

The new features and functions included in Horizon View 5.3 and Feature Pack 1 for Horzion View 5.3 are:

  • Windows Server 2008 R2 Desktop Operating System Support
  • Windows 8.1 Desktop Operating System Support
  • VMware Horizon Mirage Support
  • VMware Virtual SAN Datastore Support (Tech Preview)
  • View Connection Server Memory Recommendation Messages if Connection server has less than 10GB RAM
  • vDGA Support
  • Linked-Clone Desktop Pool Storage Overcommit Feature Enhancements
  • View Persona Management Supportability Improvements
  • Support to Grant Domain Administrators Access to Redirected Folders in View Persona Management
  • Public availability of the VMware Horizon View Agent Direct-Connection Plug-in
  • View Composer Array Integration (VCAI) Support
  • Higher amount of Blast Secure Gateway Maximum Connections
  • Windows 7 Multimedia Redirection
  • Flash URL Redirection
  • Real-Time Audio-Video for Linux, Windows Server 2008 R2 and Windows 8.1
  • Unity Touch for Windows Server 2008 R2 and Windows 8.1
  • HTML Access is much faster and supports Sound, Copy and paste and much more

Andre Leibovici (@andreleibovici) at myvirtualcloud.net created a nice link list with everything you need to know about Horizon View 5.3.

To get the latest and greatest features you need to have the latest Horizon View clients, Horizon View 5.3 and Feature Pack 1 for Horizon View 5.3 installed.

Release Notes |  Documentation | Download

Virtualizing Internet Explorer 10 with ThinApp 5.0

With ThinApp 5.0 support for virtualizing Internet Explorer 10 was introduced.

Virtualizing Internet Explorer 10 is pretty easy.

  1. Fire up your Windows 7 capture’n’build machine
  2. Start ThinApp Setup Capture
  3. Do a prescan
  4. Install Internet Explorer 10 using the standalone installer
  5. Do a post scan
  6. Build your project
  7. Finish

Unfortunately in some cases the virtualized instance of IE10 crashes on launch displaying an error message like “initialze_plugins failed” or “Missing import” or some other strange message.

IE10ErrorThinApp
IE10ErrorThinApp2

To solve this issue just add the following line to the [BuildOptions] section of your Package.ini file:

ExternalDLLs=kernelbase.dll;kernel32.dll

This issue mainly occures when Internet Explorer 10 is installed using Windows update. This is the reason I recommend installing Internet Explorer 10, and by the way any other version Internet Explorer you want to virtualize, by using the standalone installer.

Release: VMware Horizon Mirage 4.3

Today VMware released the new version 4.3 of Horizon Mirage.

This release includes major improvements of the interoperability between Horizon Mirage and View and therefore officially supports image management of full clone virtual desktops.

The new release includes:

  • Support for image management of VMware Horizon View full clone desktops
  • Ability to do image management only (without the need to centralizing an endpoint first)
  • Ability to deploy app layers during a Windows 7 migration process
  • A bunch of tools for synchronizing (export and import) layers, CVDs and the driver library between different Mirage server clusters
  • Enhancements to the Mirage volume for better exclusion support in regards to Anti-virus solutions
  • A new web-based console with support for the Protection Manager role, which allows you to do all the tasks needed for protecting and synchronizing your endpoints.

Also there are many bug fixes included in this release.

Because covering each new features would blow up this article so much I decided to cover each feature in a separate article over the next few weeks.

Release Notes | Documentation | Download

Release: VMware Horizon View Client for Windows 2.2

In preparation of the Horizon View 5.3 release VMware released a new View client for windows. First of all the version number changed from 5.4 to 2.2. This change was done to better align the client version numbers. Also the version 2.2 sports a new look and feel (like the new View iOS client does).

View22Win

The new client also includes:

  • Support for Microsoft Windows 8.1 as client system
  • Support for VMware Horizon View 5.3 and therefore support for Windows 8.1 and Windows Server 2008 R2 as desktop
  • Windows 7 Multimedia Redirection
  • Flash URL Redirection enhancements

For more information about this new release have a look at the release notes or the official announcement blog article.

Release Notes | Documentation | Download

 

Release: VMware Horizon View Client for iOS 2.2

Today VMware released the new and gorgeous looking version 2.2 of the Horizon View Client for iOS.

ViewiOS22Update

Besides bugfixes the new client now officially supports iOS 7 and got an updated look and feel.

This slideshow requires JavaScript.

Also you can now use Unity Touch menus when using an external display and presentation mode is disabled (Mirror mode). Last but not least this client already supports the upcoming Horizon View 5.3 release which includes support for Windows 8.1 and Windows Server 2008 R2 desktops.

Release Notes | Documentation | Download

ThinApp Link List

With the general availability of ThinApp 5.0 today many new articles are floating around the internet. Therefore I tough it might be a good idea to create a link list which contains the most interesting and important collateral about ThinApp 5.0 and ThinApp in general.

Just click the ThinApp section in the menu above or head over to www.horizonflux.com/thinapp to find the list.

If you think you have a good article about ThinApp or I missed an essential one just contact me (@timarenz) and I add it as soon as possible.

What’s new in VMware ThinApp 5.0 (Tech Edit)

Today VMware made ThinApp 5.0 generally available. While there is a lot of information out there on what’s new spread across multiple announcements, release notes and blogs I want to summarize the most critical information on what’s new in VMware ThinApp 5.0 from a technical point of view.

End-of-availability canceled

Even if this isn’t a technical point it is still pretty important to know. With the announcement of the VMware Horizon Suite it was also announced that after December 15th, 2013 ThinApp would not be available as standalone product anymore. Shortly after this announcement was made is was pretty clear that our customers where not amused and VMware clearly had underestimated on how many customer count on ThinApp – one of the leading application virtualization products – as a standalone product.

Therefore with the announcement of ThinApp 5.0 VMware also announced that the end-of-availability is canceled. This means VMware will continue to offer ThinApp as a standalone product and you will be able to get at least five more years of service and support for ThinApp.

Re-architecture

In version 5.0 much was changed on the internal plumbing of ThinApp. From a very technical point of view VMware is moving away from import address table hooking of Win32 API to inline hooking of the Windows Native API (NTDLL.dll). As you can see in the figure below this hooking takes place in a much earlier stage and therefore increases the overall application compatibility.

Image source: http://technet.microsoft.com/en-us/library/cc768129.aspx
Image source: http://technet.microsoft.com/en-us/library/cc768129.aspx

Also it greatly reduces the number of hooked API. Because instead of hooking all the high-level Win32 API functions ThinApp now hooks low-level functions of the Windows Native API, which are also used internally by all the Win32 API functions.

The following screenshots are showing the DLLs used by a virtualized instance of Notepad++. As you can see there are a lot more DLLs in play with ThinApp 4.7.3 as  there are with ThinApp 5.0.

HookedDLLsThinApp

All in all the number of of hooked APIs are reduced from about 600 to 200. Which results in a much smaller code base of ThinApp 5.0 and therefore decreases the number of potential bugs. Also, as already mentioned, it should boost the already very good application compatibility of ThinApp to a new level.

64-bit support

ThinApp always supported 64-bit operating systems and was always able to run virtualized 32-bit applications on top of Windows 64-bit versions. But with ThinApp 5.0 finally the virtualization of 64-bit applications is  possible. This was one of the most requested feature by our customers.

The ability to virtualize 64-bit applications opens up many new use cases, i.e. the virtualization of 64-bit version of Office and Internet Explorer but also the virtualization extensive CAD/CAM applications.

The following tables shows the supported capture and deployment scenarios of ThinApp 5.0.

As you can see ThinApp supports pretty much every available scenario with the exception of the following two:

  1. ThinApp 5.0 does support capturing 32-bit applications on top of 64-bit operating systems but only if you build and deploy it to 64-bit machines only. If you want to run a 32-bit package on top of 32 and 64-bit operating systems you need to create the package on top of a 32-bit operating system.
  2. ThinApp still supports the virtualization of 16-bit applications on top of 32-bit operating systems but does not and never will support 16-bit applications on top of Windows 64-bit. You can blame – or in my opinion thank – Microsoft for that. See 64-bit versions of Windows do not support 16-bit components, 16-bit processes, or 16-bit applications

VMware supports the following operating systems for running virtualized 64-bit applications:

  • Windows 7 64-bit
  • Windows Server 2008 R2
  • Windows 8 64-bit
  • Windows Server 2012
  • Windows 8.1 64bit
  • Windows Server 2012 R2

Not supported are:

  • Windows XP 64-bit
  • Windows Server 2003 64-bit
  • Windows Vista 64-bit
  • Windows Server 2008 64-bit

ThinApp 5.0 of course still support these platforms for running virtualized 32-bit applications on top of them. And of course all other 32-bit platforms (like Windows XP, Vista, 7 and so on) are still supported.

Office 2013 and Internet Explorer 10 support

With ThinApp 5.0 you can virtualize the latest Microsoft applications like Office 2013 and Internet Explorer 10. While Office 2010 was a pain to virtualize in prior version of ThinApp, ThinApp 5.0 includes many fixes to make packaging much more reliable. Also VMware provides official packaging guidelines for Office 2010 (See KB 1022287) and 2013 (See KB 2062691).

Unfortunately support for both products is limited at the moment. While virtualizing Internet Explorer 10 with ThinApp 5.0 is supported up to Windows 8 (but not 8.1), virtualizing Office 2013 is only supported up to Windows 7 (but not Windows 8 / 8.1).

This is likely to change within a future version of ThinApp.

Compatibility

One big advantage of ThinApp’s agent- and client-less architecture is that you are able to run multiple versions of the ThinApp runtime at the same time. Therefore integrating a new version of ThinApp is easy as pie. Still there are some things to consider when bringing ThinApp packages in version 5.0 in to an existing ThinApp environment.

AppLink: with ThinApp 5.0 we support linking ThinApp 5.0 packages with ThinApp 4.5 (and later) packages. There is only one gotcha: The parent package always has to be packaged with ThinApp 5.0. So if you for example have Mozilla Firefox virtualized and several AppLink packages like Flash and Java connected you first have to update the Mozilla Firefox package to ThinApp 5.0 in order to update any linked package (Flash or Java) to ThinApp version 5.0.

In-place update: With ThinApp it was always possible to update current ThinApp packages to a newer version of the runtime or the application it self by copying the new package side-by-side with the old package and adding integer at the end of the package.

For example: If the user is currently using Notepad++ 6.0 as a ThinApp package called Notepad++.exe and you want to deploy Notepad++ 6.5. Just copy the new ThinApp package as Notepad++.exe.1 side-by-side to the original Notepad++.exe ThinApp package and as soon as the user launches or relaunches (yes, you can do this while the user is using the application) he will get the new Notepad++ 6.5 package.

When doing an in-place update to a 5.0 package that contains the new .alt file this file should be named as *.n.alt where n is the integer you choose for the base .dat or .exe file. In this case it would be Notepad++.exe.1.alt.

AppSync: Of course you can also update your applications using the AppSync mechanism but only 32-bit packages. Also see the following article: When you perform Appsync from 4.7.2 to 4.7.3. AppSync displays the following error message “The operating system cannot run”.

MSI: Updating ThinApp packages from prior versions of ThinApp to version 5.0 is done the normal way. (See Upgrade a deployed ThinApp package with the help of MSI) There are no special considerations necessary.

Sandbox: It it worth mentioning that the sandbox (if the sandbox names are identical) will be reused during an upgrade. So if you updating your packages to ThinApp 5.0 all application settings are available after the update. Please keep in mind that updating to a newer version of an application or even a different application bitness (32-bit vs. 64-bit) may result in loss of the application settings as they are probably  saved in a different location in the registry. In this scenario it would be advisable to use a new sandbox and not to reuse the existing sandbox.

ThinDirect enhancements

ThinDirect in ThinApp 5.0 was update to support newer browsers like Internet Explorer 10 and also 64-bit versions of Internet Explorer.

Also the ThinDirect policies – that controls which URL should be opened in which virtual browser – are now available as ADMX template.

Updated SDK

The ThinApp SDK was also updated with version 5.0. It now includes a separate 64-bit DLL (ThinAppSDK64.dll) and therefore eliminates the need of the ThinAppSDKSrv.exe on 64-bit operating systems.

You can use the new SDK and all your scripts/programs without any change with existing ThinApp packages prior version 5.0. If you want to enable your scripts/programs to support ThinApp 5.0 packages you actually have to change them.

Have a look at the release notes to get more details on this particular point.

VMware Horizon View and Workspace integration

ThinApp is an integral part of VMware Horizon View, Workspace and Mirage. While you can start using ThinApp 5.0 in your Mirage deployments right away as there is no direct link between Mirage and ThinApp you have to be aware of some limitations when it comes to the View and Workspace integration.

The current releases of Horizon View will support ThinApp 5.0 32-bit packages out of the box. Support for 64-bit ThinApp 5.0 packages will be introduced in future version of Horizon View. Horizon Workspace 1.5 does not support ThinApp 5.0, neither 32-bit nor 64-bit.

In regards to Horizon View you of course have always the possibility to use ThinReg or the SDK to register ThinApp 5.0 64-bit packages using a logon script or deploy them via MSI. This is fully supported and this way you can enjoy 64-bit ThinApps from day one.

For more information see the official knowledge base article: Horizon View and Horizon Workspace support for ThinApp 5.0 applications

AppSense Environment Manager integration

While it was always possible to manage the personality of a ThinApp package using Environment Manager from AppSense by copying the sandbox at logon and logoff. With VMware ThinApp 5.0 the Environment Manager from AppSense can actually look into the sandbox and therefore do all the amazing cross-application personalization stuff. So you can for example configure your local Office 2010 on your laptop and when you connect to your virtual VMware View desktop you have the same settings in your Office 2010 ThinApp package.

More information on the integration can be found in the following blog post by AppSense: AppSense Environment Manager Integrates with VMware ThinApp 5.0

As you can ThinApp 5.0 contains many major improvements and new features. I hope you will enjoy working with ThinApp 5.0 as much as I do.

Release Notes | Documentation | Download

Disable touch input in VMware Fusion or Workstation

SwipeWin81Since last years release of VMware Workstation (9.0) it is possible to pass through touch input to your virtual machine. While this definitely is a nice feature if you’re using a touch-enabled computer it isn’t particular useful on a non-touch system.

By default the touch input is only enabled for touch-enabled operating systems like Windows 8. Normally this is fine but with Windows 8.1 Microsoft has introduces some annoying help dialogs to get you to know all the swipe gestures available. Unfortunately I can’t “Swipe in from the edge to go back to the lsat app you were using” on my MacBook.

You can of course disable those messages using some Windows setting but why not disable the touch input completely if it isn’t used after all?

To disable touch input you have to open the .vmx file of your virtual machine and change the parameter

touchscreen.vusb.present = "TRUE"

to

touchscreen.vusb.present = "FALSE"

This also applies to VMware Fusion.

Release: VMware Horizon Workspace Agent 1.5.1

With VMworld Europe 2013 just around the corner VMware just release an update to the VMware Horizon Workspace agent.

While the new version indicates that it is just a minor upgrade it is in fact a complete rewrite and contains major improvements on how ThinApp packages are handled.

Here a short list of the updates:

  • Command line support – sync of new ThinApp entitlements can be done by command line.
  • Full self-service support – User now can add and remove ThinApp packages and the actually get installed and uninstalled on-demand.
  • Better handling of ThinApp updates deployed via Horizon Workspace
  • Enhanced Kerberos Single-Sign In

Much more information about this new release can be found in the following article by Peter Björk (@thepeb) on the official VMware ThinApp blogThe new VMware Horizon Agent are now available.

Download

Migrate ThinApp sandboxes with USMT in Horizon Mirage

In one of my last articles I showed how it is possible to extend the User State Migration Tool (USMT) which is used inside of Horizon Mirage. While I showed the steps on how to get a custom XML file recognized and used by Mirage I left all the heavy lifting of creating the custom XML files to you.

As many of our customers are using ThinApp and USMT as well as Mirage don’t support the migration of ThinApp user and application settings out of the box I though I published the XML file to get this done below. Luckily ThinApp saves all settings on a per-user per-application basis in a central location. By default this location is %AppData%Thinstall. Additionally ThinApp sandboxes are as portable at the ThinApp packages itself and therefore can be easily transferred between different systems.

The following XML file is telling Mirage respectively USMT to include this directory during the migration process.

<migration urlid="http://www.microsoft.com/migration/externalUserDocs">
<!-- This component migrates ThinApp sandboxes -->
<component type="Documents" context="User">
<displayName>ThinApp Sandboxes</displayName>
<role role="Data">
<rules context="User">
<include>
<objectSet>
<pattern type="File">%CSIDL_APPDATA%Thinstall* [*]</pattern>
</objectSet>
</include>
</rules>
</role>
</component>
</migration>

Just save this file as ThinApp.xml inside your USMT x86 and x64 folder and customize the Launch_USMT.cmd to add it to the Mirage USMT process. How this can be done is outlined in my article called: How to customize USMT in Horizon Mirage.