Application Packaging & MSIX
Application packaging run as a managed service: MSIX conversion, App-V migration, app attach for Azure Virtual Desktop, and a packaging pipeline your team can actually run.
Application packaging services, delivered as a managed service
In short: MSIX conversion, App-V migration and app attach, run as a managed service rather than sold to you as a tool. Starts with discovery, because the list of applications genuinely in use is always shorter than the list people believe, and contains several nobody mentioned.
Search for help with MSIX and you'll mostly find software vendors selling you a tool. A tool doesn't inventory your estate, doesn't work out which of your 300 applications will never convert, and doesn't sit on a call at 8am when an app fails to register on a session host. That's the gap we fill: a UK supplier that does the packaging work, not a product you have to learn first.
The problem
Ad hoc packaging doesn't scale. Every application becomes a one-off, quality depends on who happened to build it, and there's no way to prove a package will behave the same on the next release. Meanwhile App-V sits on a support clock, the gold image keeps growing because it's easier than packaging properly, and each new starter or new app version reopens the same argument. The cost isn't a line on an invoice, it's the projects that stall behind the packaging queue.
What we would do
Start with discovery: the list of applications actually in use is usually shorter than the list people believe and contains several nobody mentioned. Decide per application whether it is repackaged from source, converted, captured or retired, before anyone touches a packaging tool.
- If you still hold working source media, repackage from it. A capture of a running install inherits whatever state that machine was in and needs more testing, not less.
- If the application uses kernel drivers, services, or writes to its own Program Files directory while running, MSIX will not contain it and the answer is a different delivery mechanism.
When we are not the answer: If you have an in-house packaging team with capacity, you do not need us for volume. Where we earn our place is the applications that fail, the ones nobody can package, and the pipeline that stops it becoming manual again.
We package line-of-business, legacy and third-party applications into MSIX and other modern formats so they install cleanly, update predictably and run wherever your users are: physical Windows 11 devices, Azure Virtual Desktop, or Windows 365 Cloud PCs. Conversion, remediation, signing, testing and delivery are all part of the work, not a list of things handed back to you as actions.
More on how we deliver application packaging
We're deliberately tool-agnostic. The right approach for a clean MSI is not the right approach for a twenty-year-old app with a kernel driver and no installer left, and we'll tell you plainly when an application shouldn't be converted at all. Where an application needs capturing from its running state because the media is long gone, we bring in our delivery partner EtherApps Forge. Scope, volumes and commercials get sized against your actual estate at assessment rather than guessed at up front.
Related reading, and where the neighbouring work lives
Related reading and where the neighbouring work lives: App-V to MSIX migration, the conversion itself, step by step; MSIX migration and CI/CD packaging services, the pipeline side; legacy modernisation and OS migration, when the application is what is blocking an operating system move; application modernisation, when the answer is replatforming or rewriting rather than repackaging.
Legacy application capture and repackaging is delivered with EtherApps Forge from our partner EfficientEther.
Packages have to land somewhere: app attach is an AVD feature, and the same MSIX delivers to Windows 365, RDS and Parallels RAS. Our end-user computing service covers the platform side, so the estate is designed once rather than retrofitted.
Everything you need, managed for you
What is MSIX and why is Microsoft pushing it?
MSIX is Microsoft's current Windows application packaging format, and it's the direction of travel for anything new. It installs into a container with a defined identity, writes user data to a redirected location rather than scattering it across the file system and registry, updates differentially instead of reinstalling, and uninstalls without leaving debris. It's also the format that app attach on Azure Virtual Desktop is built around.
The practical benefit is predictability. An MSIX package behaves the same way on every machine that installs it, which is the thing that ad hoc MSI and EXE deployment never quite delivers. The practical cost is that MSIX is stricter: applications that assume they can write anywhere, install drivers, or register system-level services have to be reworked or left alone.
Do all applications convert to MSIX?
No, and anyone telling you otherwise is selling something. MSIX runs applications inside a container, and several very common patterns fall outside what that container permits:
- Kernel-mode drivers
- Windows services
- Applications that install other applications
- Deeply hooked shell extensions and COM servers
- Anything requiring elevated privileges at runtime
- Applications that write to their own Program Files directory while running
In a real estate you should expect a spread. A large share of well-behaved business apps convert with little or no work; a middle band converts but needs remediation, such as fixing hard-coded paths, splitting out a service component or reworking a shell integration; and a tail either can't convert or isn't worth converting.
Part of what an assessment buys you is knowing which application sits in which band before you commit budget, rather than discovering it one app at a time.
How does App-V to MSIX migration actually work?
App-V to MSIX migration is a repackaging exercise, not a file conversion.
Microsoft's converter can take an App-V package and produce an MSIX, but the parts of App-V that carried the real behaviour rarely survive intact:
- Connection groups
- Scripts fired at publish or launch
- Dynamic configuration files
- The virtual registry and file system tweaks somebody added years ago to make the app work
So the migration is to inventory what you have and what each package genuinely does, then decide per application whether it is:
- Repackaged from source media
- Converted and remediated
- Captured from a running install
- Retired
Then rebuild the behaviour that App-V was providing using MSIX equivalents, test it against the real workflow, and roll it out in rings. App-V support is finite; the estates that struggle are the ones that leave the discovery until the deadline is visible.
What is MSIX app attach, and do we need it?
App attach delivers MSIX applications into an Azure Virtual Desktop session by mounting a disk image from a file share at sign-in, then registering the app for that user, instead of installing it into the gold image. The payoff is a small, stable base image and per-user application assignment, so adding or updating an app doesn't mean rebuilding and redeploying the image to every session host.
It's worth it once you have more than a handful of applications, more than one user persona, or an image rebuild cycle that's become an event. If you have a single-purpose host pool running two apps for everybody, baking them into the image is honestly the simpler answer, and we'll say so.
Microsoft has also moved on from the original per-host-pool model to a newer app attach design where packages are managed as subscription-level objects; which one you're on changes the operational detail, so we check before recommending anything.
CIMFS or VHDX for app attach images?
CIMFS uses noticeably less host resource per mounted image, which matters when a session host is mounting dozens of them for every user who signs in, so it's the default worth aiming at. VHDX is the older, broader-compatibility option and remains the reliable fallback. In hands-on testing we've hit packages that run correctly natively and from a VHDX image but fail from a CIM, so this isn't a purely theoretical choice.
The practical rule: build CIMFS first, smoke-test every package from the image rather than from the MSIX, and fall back to VHDX for the ones that misbehave. CIM images also need housekeeping, because each one produces a .cim file plus object and region files in the same directory. Generate several into one folder and you get sprawl that's genuinely difficult to untangle later, so one folder per image, always.
Certificate errors: why do app attach packages fail with "App contains untrusted signature"?
Because the certificate that signed the package isn't trusted on the session host. Every MSIX must be code-signed, and the signing certificate has to chain to something the machine trusts. With an internal or self-signed certificate that means deploying it into the machine's Trusted People store on every host in the pool. Miss it and AVD returns a metadata expand failure with exactly that message, and MSIXMGR throws 0x800B010A for the same underlying reason.
It's the single most common cause of a package that works perfectly on the packaging workstation and dies in production. The fix is boring and that's the point: decide early whether you're using a public CA certificate or an internal PKI, deploy trust as part of session host build automation rather than by hand, and track expiry, because a certificate that lapses takes every package signed with it down at once.
What are the prerequisites for MSIX app attach?
Six things, and a build stalls if any one of them is missing. A supported session host operating system, meaning Windows 10 or 11 Enterprise or their multi-session editions. A file share the session hosts can reach, usually Azure Files or Azure NetApp Files, with both the RBAC role and the NTFS permissions set. Every package expanded into a CIMFS or VHDX image rather than left as a raw MSIX.
A code-signing certificate that chains to something every session host trusts. The application registered in Azure as an app attach package and assigned to the right application group. And enough network throughput between hosts and share, because app attach mounts the image at sign-in and a slow share shows up directly as a slow logon.
Two things people expect to need and do not: a separate licence, because app attach is included with Azure Virtual Desktop, and a rebuild of the golden image, which is precisely the point of using app attach rather than baking applications in.
Does app attach work with Citrix, or only Azure Virtual Desktop?
App attach itself is an Azure Virtual Desktop feature, so on Citrix you would use Citrix App Layering or its own MSIX support rather than app attach. That said, the two coexist perfectly well in a mixed estate, and the packaging work carries across: an application correctly packaged as MSIX can be delivered through app attach on AVD and through Citrix on the Citrix side, without repackaging it twice. The format is the portable part, the delivery mechanism is not.
This matters most to organisations part-way through a Citrix to AVD migration, where both platforms run side by side for a while. Doing the packaging properly once, in MSIX, means the migration stops being an application project as well as an infrastructure one.
Can you use app attach on-premises, or is it cloud only?
App attach is an Azure Virtual Desktop feature and needs the AVD control plane, so there is no on-premises-only version of it. On a traditional on-premises RDS farm the equivalent is delivering MSIX packages through the tools you already have, or using an on-premises file share with a third-party layering product.
What does carry over is the packaging. MSIX packages built for app attach install perfectly well on on-premises RDS session hosts and on physical Windows 11 devices, so the conversion work is not wasted if part of the estate stays on-premises or moves later. We package for the format first and the delivery mechanism second, precisely so that decision stays open.
What does Azure Files need for MSIX app attach?
The share needs both layers of permission, and this is where most builds stall. Every session host's computer account needs access, which in practice means putting the machine accounts in a directory group, syncing that group to Entra ID, granting it the Storage File Data SMB Share Contributor role on the storage account, and then also setting the NTFS-level permissions on the file share itself. Getting the RBAC role right but not the share ACL produces a failure that looks like a packaging problem and isn't.
Placement matters too. The whole operation of reaching the storage and mounting the image needs to complete inside roughly 400 milliseconds, so the share should sit in the same region as the session hosts, as close as the topology allows. Then exclude .VHD, .VHDX and .CIM files and the UNC path to the share from antivirus scanning; without those exclusions you get sign-in latency and intermittent registration failures that are miserable to diagnose.
MSIX or Intune Win32: which should we use for what?
Use MSIX where you want clean install and uninstall, containerised identity, differential updates, or app attach on AVD. Use Intune Win32 (.intunewin) where the application won't convert, where you need custom detection and requirement rules, dependencies and supersedence, or where you're wrapping an installer that has to run with full system access. Most estates end up running both, and that's the correct answer rather than a compromise.
The decision is per application, not per organisation. A modern, well-behaved LOB app is a good MSIX candidate. A CAD package with a licensing service and a hardware dongle driver is not, and forcing it costs more than it returns. What we care about is that the routing decision is made deliberately and recorded, so the next person doesn't have to reverse-engineer why an app was packaged the way it was.
Can you build us a CI/CD packaging pipeline?
Yes, and for most organisations this is the part with the longest tail of value. A packaging pipeline takes a source installer or captured application, builds the package, signs it, runs automated install, launch and uninstall checks, publishes to your distribution point or app attach share, and records what was produced and by whom. Vendor releases a new version, the pipeline runs, and nobody has to remember the manual steps.
We build it around what you already have, typically Azure DevOps or GitHub Actions with Intune or AVD at the delivery end, and we hand it over with documentation rather than keeping it as something only we can operate. The point is that packaging stops being a person and becomes a governed, auditable process.
What if we've lost the installer for an application?
It can usually still be packaged, by capturing the application from its current working installation rather than from setup media. This is the situation that blocks more Windows 11 and server migrations than any technical incompatibility: the vendor's gone, the source is gone, the MSI is on a share that was decommissioned in 2014, and one department still depends on the thing daily.
For that work we use our delivery partner EtherApps Forge, which captures the installed state of a running application and repackages it for a modern, supported operating system. It's not magic and it isn't right for everything, but it turns "we can't move off that server" into a scoped piece of work with a testable output.
How do you prove a package works before it reaches users?
Every package gets tested against the way the application is actually used, not just whether the icon launches. That means install, launch, core workflow, file associations, printing where relevant, licensing activation, uninstall, and then re-install over the top. For app attach we test from the mounted image on a real session host, because a package can pass on a packaging workstation and still fail on stage or registration.
When something fails, the evidence is in the MSIX and app attach event logs, which record the staging and registration sequence and the time each application took to register per user. That timing data is useful beyond troubleshooting; it tells you which applications are quietly adding seconds to every sign-in. Where user acceptance testing is needed, that's coordinated with your application owners, since they're the ones who know what "working" looks like.
Why use an MSP rather than buying a packaging tool?
Because the tool is the cheap part. Licensing a packaging product still leaves you needing someone who knows why a converted app crashes on second launch, how to structure a signing certificate strategy that doesn't expire into an outage, and what to do with the tail of your estate that won't convert. That knowledge takes years to build and walks out of the door when the person holding it resigns.
Our packaging work sits on genuine first-hand ground. Our founder, Ryan Mangan, is a Microsoft MVP, a Fellow of BCS and the author of Mastering Azure Virtual Desktop (Packt), and maintains a public MSIX app attach reference wiki and open-source tooling on GitHub. You get that depth as a service you can scale up and down, based in Brough, East Yorkshire, working with organisations across the UK.
| Tool | Where it's strong | Where it falls short |
|---|---|---|
| MSIX Packaging Tool (Microsoft, free) | First-party, free, integrates with a clean capture VM. Perfectly adequate for straightforward installers and one-off conversions. | Capture-led with limited editing and remediation. No bulk workflow, no pipeline integration, little help when a conversion goes wrong. |
| Advanced Installer | Mature commercial authoring environment with strong MSIX editing and the ability to produce MSI, EXE and MSIX from one project. Good where you author packages from scratch. | Per-seat commercial licensing. Author-centric rather than a high-volume migration factory, and still needs a skilled operator. |
| PACE Suite | Strong repackaging and conversion, including App-V to MSIX, with editing and virtualisation tooling aimed at enterprise packaging teams. Often keener on price than larger rivals. | Smaller ecosystem and community than the market leaders. Buys you capability, not the expertise to use it well. |
| Apptimized | Cloud-delivered packaging with hosted capture environments and an outsourced factory model. Suits organisations wanting high volume without building an internal capability. | Subscription and cloud-hosted, so less suitable for regulated, air-gapped or highly restricted environments, or for small numbers of applications. |
| MSIXMGR (Microsoft, free) | The tool that expands MSIX packages into VHD, VHDX or CIM images for app attach. Scriptable, and the standard route for image builds. | Command line only, terse hex error codes, and it won't create folders for you. It builds images; it doesn't package or remediate applications. |
| Capture-from-running-state tools (e.g. EtherApps Forge, which we resell) | Low cost, and it resolves compatibility problems rather than only repackaging around them. Captures an application from its live, working installation, so it needs no original media, no source and no surviving vendor, which is frequently the only route that exists at all. In practice it is the fastest way we have to get a legacy application onto a supported operating system. | Newer and smaller than the long-established packaging suites, so a smaller community and fewer third-party integrations to lean on. As with any packaging route, the output is validated against your own estate before it goes anywhere near production. |
Questions we hear a lot
Do all applications convert to MSIX?
No. MSIX runs applications in a container, so anything installing kernel-mode drivers or Windows services, requiring elevation at runtime, installing other applications, hooking deeply into the shell, or writing into its own Program Files directory will either need significant remediation or can't convert at all. In a typical estate a large proportion of well-behaved business applications convert with little work, a middle band needs remediation, and a tail should be delivered another way, usually Intune Win32, or retired. Knowing which is which before you commit budget is the point of an assessment.
Is App-V really being retired, and what is the end of support date?
The date worth knowing is 14 April 2026, and the detail most summaries get wrong is what it applies to. That date is the end of extended support for the App-V server infrastructure: the Management, Publishing and Reporting servers. The App-V client and sequencer shipped in Windows 10 and Windows 11 Enterprise are not covered by it, because they follow the Windows lifecycle instead. So if you read that App-V died in April 2026, or that it did not, both claims are half right. What is unambiguous is that Microsoft's active investment is in MSIX; there will be no new App-V capability. Nothing breaks the day support ends, but you lose fixes and support, and you carry a virtualisation layer no one is developing. The risk in delaying isn't the deadline itself, it's that App-V estates almost always contain undocumented connection groups, scripts and dynamic configuration that take time to unpick. Start the discovery early, even if the migration itself runs later.
Does every MSIX package need a code-signing certificate?
Yes. Windows will not install an unsigned MSIX. You can use a certificate from a public CA or one from your own internal PKI; the requirement is that the signing certificate chains to something the target machine trusts, which for internal certificates means deploying it to the Trusted People store on every device or session host. If it's missing, AVD reports "App contains untrusted signature" and MSIXMGR returns 0x800B010A. Self-signed certificates are fine for lab and testing work but a poor choice for production, mainly because of the trust deployment and expiry burden.
What is the difference between MSIX and APPX?
MSIX is the successor to APPX and is built on the same container format, which is why the two look so similar from the outside. The practical difference is scope. APPX was designed for UWP applications from the Microsoft Store and could not package traditional Windows software. MSIX handles Win32, .NET and UWP in one format, which is the whole reason it can replace MSI, App-V and APPX rather than sitting alongside them. If you are looking at an existing APPX package, it will generally still install, but anything new should be built as MSIX.
Is MSIX app attach being deprecated?
The original MSIX app attach was retired on 1 June 2025 and replaced by app attach, which is the name to use now. It is a replacement rather than a removal: app attach does everything the old feature did and fixes its three worst limitations. Permissions are per application per user, so people only see the applications assigned to them rather than every package on the desktop application group. The same package can be used across multiple host pools instead of needing a separate copy for each. And a package can be upgraded to a new disk image without deleting and recreating the application, so upgrades no longer need a maintenance window. If you built on the legacy feature, moving to app attach is worth doing on its own merits, not just for support.
What's the difference between MSIX and MSIX app attach?
MSIX is the package format; app attach is a delivery mechanism for it on Azure Virtual Desktop. With app attach the MSIX is expanded into a VHD, VHDX or CIM image, stored on a file share such as Azure Files, mounted to the session host and registered for the user at sign-in. The application never gets installed into the gold image. You can absolutely use MSIX without app attach, deploying it through Intune to physical devices or Cloud PCs, and many organisations do exactly that.
Should we use CIMFS or VHDX for app attach images?
Start with CIMFS, because it consumes materially less host resource per mounted image, which matters when a session host mounts many images per user sign-in. Keep VHDX as the fallback: not every MSIX package behaves correctly from a CIM image, and we have seen packages run fine natively and from VHDX but fail from CIMFS. Test each package from the mounted image itself, not just as an MSIX. Whichever format you use, create a dedicated folder per image, because CIM images produce multiple related files that become very hard to separate if they're generated into a shared directory.
What does app attach need from Azure Files?
The session hosts' computer accounts need access to the share at both the RBAC and the NTFS level. In practice: add the machine accounts to a directory group, sync it to Entra ID, grant that group Storage File Data SMB Share Contributor on the storage account, then set permissions on the file share itself. Place the storage in the same region as the session hosts, since the end-to-end operation of accessing and mounting an image needs to complete in roughly 400 milliseconds. Finally, exclude .VHD, .VHDX and .CIM files and the share path from antivirus scanning, or you'll see sign-in delays and intermittent failures.
Will app attach slow down user sign-in?
It can, if it's configured carelessly. Use on-demand registration so full registration is deferred until the user actually launches the application, rather than logon-blocking registration which completes during sign-in and lengthens it. Keep the storage close to the session hosts, apply the antivirus exclusions, and be honest about how many packages you're assigning per user. The MSIX event log records per-application registration time, so you can see precisely which applications are costing you seconds rather than guessing.
Can you package applications where we've lost the installer?
Usually, yes. Rather than needing the original setup media or source code, the application is captured from its current working installation and repackaged for a modern operating system. We do this with our delivery partner EtherApps Forge. It's the route that unblocks most stalled Windows 11 and Windows Server migrations, where the technical blocker isn't the OS at all but one legacy application nobody can reinstall. It isn't right for every application, and we'll tell you at assessment if it isn't right for yours.
Do we have to move all our packaging to you, or can you supplement our team?
Either. Some clients hand over packaging entirely as an ongoing managed service; others have a capable internal team and want us for overflow, for a specific App-V migration, for app attach design, or to build a CI/CD packaging pipeline and hand it over. Where we build a pipeline, it's built on your tooling and documented so your team can run it without us. We'd rather leave you with a capability than a dependency.
How much does application packaging cost?
It depends almost entirely on the mix of applications rather than the headline count, so we size it against your estate at assessment rather than quoting a per-app rate that would be meaningless. A hundred modern, well-documented business applications and a hundred undocumented legacy applications with missing media are very different pieces of work. Discovery gives you a per-application complexity picture first, so the commercials are based on what's actually there. Get in touch and we'll scope it properly.
Application packaging is delivered UK-wide from our office in Brough, East Yorkshire, with on-site support across the county where it helps. We work with businesses in Doncaster, Wakefield, Harrogate, Huddersfield, Scarborough and Bradford and 6 more Yorkshire towns and cities, and remotely with clients right across the UK.
Which applications actually block you?
Tell us what is in the estate and what you are migrating to. We will sort the applications into what converts, what needs remediation, what has to be captured, and what should be retired.
Technology partners
Best-of-breed technology we use to deliver application packaging.
See all technology partners →