A Visual Studio 2008 Package Sequenced with Microsoft Application Virtualization may not Function Properly after Upgrading to Visual Studio Service Pack 1

Symptoms:

If you open a Visual Studio 2008 package for upgrade (or simply upgrade in the 4.6 SP1 sequencer) and upgrade the package to Visual Studio Service pack 1, it may fail to function properly on the App-V Client.

Cause:

This is caused by the Visual Studio SP1 installer setting a reparse point for key SxS (side-by-side) assemblies. The Visual Studio  2008 Service Pack 1 installer sets a reparse point from

<%SFT_MNT%>\<root>\VFS\CSIDL_WINDOWS\assembly\GAC_MSIL\WcfSvcHost\0.0.0.0__31bf3856ad364e35

to

<%SFT_MNT%>\<root>\VFS\CSIDL_WINDOWS\WinSxS\MSIL_WcfSvcHost_31bf3856ad364e35_9.0.0.0_x-ww_e0abf5ea

This means that if the application on the client looks for the files in the first location, they won't be found because they are actually only located in the latter.  When running virtualized on the client, the VFS does not reflect to the application the fact this is a reparse point. The application thinks the files will be located here but they are not actually found here.

Resolution

During the monitor phase, when the upgrade application has completed, you will need to open a  command prompt and copy the files from:

Q:\<root>\VFS\CSIDL_WINDOWS\WinSxS\MSIL_WcfSvcHost_31bf3856ad364e35_9.0.0.0_x-ww_e0abf5ea

to

Q:\<root>\VFS\CSIDL_WINDOWS\assembly\GAC_MSIL\WcfSvcHost\0.0.0.0__31bf3856ad364e35

so they are located in both locations.

For example, If the drive used for the SFT_MNT volume is Q:, then the syntax for copying via XCOPY would be:

XCOPY /S /E Q:\<root>\VFS\CSIDL_WINDOWS\WinSxS\MSIL_WcfSvcHost_31bf3856ad364e35_9.0.0.0_x-ww_e0abf5ea Q:\<root>\VFS\CSIDL_WINDOWS\assembly\GAC_MSIL\WcfSvcHost\0.0.0.0__31bf3856ad364e35