AppAttach is a technique that uses “application layering” methods to quickly mount and publish MSIX applications in non-persistent (pooled) VDI scenarios and shared operating systems like RDS and Multi-user Windows 10.

MSIX AppAttach is the Microsoft-branded feature for Azure Virtual Desktops that uses this technique to deploy applications to AVD sessions. Other vendors with application management features also use this technique, including Citrix, VMWare, and AppVentix.

TMEditX 3.7 includes new and improved support for AppAttach

  • The ability to convert MSIX packages to any of the three supported AppAttach package image formats, VHD, VHDX, and CIM. This may be done from the same tool that you are fixing up the MSIX package with.
  • The ability to locally test the completed AppAttach package image on that same machine also, without having to move the package into a separate distribution and management system.

You will find the new conversion capabilities on the new Convert sub-tab of the File tab, which is convenient to get to once you saved the updated MSIX package.

The AppAttach formats are image formats for your application package. In essence, these are used for remotely attaching to the image over a network, allowing the package to be used without necessarily copying the files over to the client machine/vm for installations.

The VHD and VHDX formats are existing standard formats used for many things, which means that there are existing tools that you can use for debugging. The CIM format is a new standard format developed by Microsoft specifically for app layering. This format is believed to be better performing than VHD or VHDX, although those claims appear to be more for the server sharing up a lot of these images.

In all three of the formats, the MSIX files are stored uncompressed in the image, unlike the original MSIX package where they are compressed. So, on average these images will take up 2.5 times the storage that the MSIX packages do.

The differences between the VHD and VHDX choices are unimportant to AppAttach. VHD already supports a 2TB size which should be much larger than any application image you are likely to ever create. Other differences in the format are clearly not going to affect AppAttach. The VHDX version of a package will be slightly larger than VHD, but not significantly so.

The CIM image format is, unlike VHD or VHDX, not a single file, but a folder with a handful of files that make up the image. Although you could put multiple of these in the same folder for expediency (each has a unique partial name), the best practice is to keep each CIM separate by storing the files in a folder with the CIM name. In the TMEditX conversion, when selecting the location for the CIM image, you will want to create the folder when picking the location to store the image.

Here is an example of the successful conversion:

And here is what the CIM image folder looks like:

For reference, the compressed MSIX package was 192MB, the VHD was 537MB, and VHDX was 561MB. So I suppose the CIM is a little smaller than VHD/X, but still obviously uncompressed.
So now in MSIXDeploy, we can go to the CIM or VHD/X tab to see the packages for test.

After locally deploying to this VM, you can test the package from the start menu. When you are done, select the Deployed CIMs button where you can see the volume (this is the mount point as we don’t use drive letters for the mounting of the volume) and De-deploy (uninstall) the CIM.





Information on the full set of features added to TMEditX 3.7 may be found here

Blog Banner Tim Mangan