Analyzing App -V Packages for MSIX Readiness

Last week I released my Report Card on MSIX, a comprehensive look at how MSIX measures up today. A work in progress, MSIX can handle some of the applications that you are deploying today. And it is sure to get better in the future. But what about your apps specifically?

I’ve taken the lessons that I learned from all the MSIX testing that went into that report and built them into a tool that analyzes App-V packages. A new version of TMEdit.

Until MSIX is ready for your apps, App-V remains the best way to deploy your Win32 and .Net applications using isolation technologies. And we have developed a pretty good process for preparing the apps for App-V. This process starts with converting your existing installers into App-V, using the App-V Sequencer or other third party tool. Forget what you heard, this part really is as simple as installing the app. Once captured, we run the components through an extensive analyzer. The analyzer looks at the details of the captured assets and makes assessments on potential issues and improvements related to your package.

The free community tool that I develop, AppV_Manage, reports on issues related to App-V, informing you of issues that would impact the end-user. When possible it suggests changes, even outputting a PowerShell script that could be used in repackaging to overcome the issues.

TMEdit, the licensed tool also includes the analysis, but this tool gives you buttons to fix your package on the spot.

Using the reporting by these tools, it helps you to get to know the application that is packaged from a viewpoint of integration features with the OS. This information not only tells you what might break, it is also a roadmap to what should be tested.

Introducing TMEdit 1.4

New in version 1.4 of TMEdit is additional analysis on the App-V package that is specific to MSIX. The software now scans for 30 known issues with the 1809 version of MSIX, relevant whether you convert the App-V package directly or perform a parallel capture using the Microsoft MSIX Packaging Tool.

Here is what the tool says about Notepad++. Casual testing of a captured MSIX package might not notice these two issues, but chances are your users would.

Notepad++ Analysis

The MSIX analysis identified two issues.

  • FTA_001: This app adds File Type Shell Extensions. If you investigate the detail in the package editor Extensions tab, you would find that the Shell Extension is for a Context Menu handler, which potentially adds menu items when the user right clicks on a file of any type on the system. Shell extensions are not working in the 1809 runtime version of MSIX, but we expect it will in some future version.
  • APD_002: The app has a bunch of files it installed into the AppData/Roaming folder. Further investigation of the package would show xml configuration files, theme files, and place for plugin configuration files. Currently, even though these files are in the package they are not seen by the MSIX app so IT cannot customize the app prior to deployment. This issue can be addressed today by using shimming techniques; it is currently unclear if the behavior is considered a problem by Microsoft and they will make runtime changes so that we don’t have to shim these.

So if you aren’t an expert in the app, you probably would never notice the problems these issues cause to the application’s behavior. And maybe your user’s won’t care about the missing shell extensions (some will, some won’t). Finding the problem after deployment is always much more expensive than knowing about it up-front!

The scan is a static scan of the packaged assets. The scan can catch a lot of obvious potential issues with the package if it were converted to MSIX, but there are additional potential issues that cannot be found without testing the repackaged app. For example, if the app decides to write to a configuration file in the program files folder (something some older applications might do and would require a shim under MSIX), we can’t detect this from a static scan.

As new versions of the Windows 10 OS emerge, I will be retesting and updating this tool to indicate which issues remain (you can see the placeholders in the image). Just because a newer OS is released doesn’t mean that it is the version you will be deploying on, so I’ll retain the back-rev info so that you can determine what is relevant for your environment.

You can download a free 30-day trial of TMEdit from this link: https://www.tmurgent.com/AppV/en/buy/tmedit/tmedit-download

By Tim Mangan

Tim is a Microsoft MVP, and a Citrix CTP Fellow. He is an expert in App-V and MSIX.