App-V
Printed from:
Microsoft App-V (Application Virtualization) Comprehensive Cheatsheet
Status (2026): App-V is in extended support and is no longer receiving new feature development. Microsoft's recommended forward path for application virtualization and delivery on Windows 10/11 is MSIX and MSIX app attach (for Azure Virtual Desktop and Windows 365). App-V remains supported for existing deployments; new projects should evaluate MSIX first.
1. App-V Architecture and Components
Key Components
- App-V Client: Built into Windows 10/11 Enterprise and Education (1607 and later) and Windows Server 2019/2022 with the RDS role; runs virtualized applications on end-user devices
- App-V Sequencer: Creates virtualized application packages; distributed via the Windows Assessment and Deployment Kit (Windows ADK)
- App-V Server (5.1): Optional infrastructure for on-prem publishing — the last standalone server release; many customers now stream packages from a file share or via Configuration Manager / Intune Win32 app delivery instead
- Management Server: Handles application publishing metadata and entitlement
- Publishing Server: Delivers virtualized application metadata and packages to clients
Architecture Overview
[Management Server] <-> [Publishing Server] <-> [App-V Clients]
|
v
[Application Packages (.appv)]
Stand-alone (serverless) mode is also fully supported: packages can be deployed directly via PowerShell, Configuration Manager, or Intune without an App-V Server.
2. Installation and Setup
Server Installation Prerequisites
- Windows Server 2019 or Windows Server 2022
- .NET Framework 4.8
- SQL Server 2017 / 2019 / 2022
- Internet Information Services (IIS)
Client Enablement (Windows 10/11 Enterprise)
The App-V client is already present in the OS image; it must be enabled before use:
123456# Enable the in-box App-V client Enable-Appv # Confirm status Get-AppvStatus
For non-Enterprise SKUs or RDS hosts that ship without the in-box client, deploy the App-V client component included with MDOP 5.1 (legacy) where licensing permits.
Sequencer Installation
- Install from the Windows ADK for the matching Windows release (Sequencer feature)
- Requires administrative privileges
- Use a clean, isolated reference VM (snapshot before sequencing)
- Minimum 4 GB RAM recommended
3. Application Sequencing Process
Sequencing Workflow
- Prepare a clean sequencing VM and take a snapshot
- Install the application inside the Sequencer monitoring session
- Configure first-run / application settings
- Create the virtual application package
- Test, validate, and revert the VM to the snapshot
Sequencing Tools
123456789# Launch the App-V Sequencer GUI (installed via Windows ADK) Sequencer.exe # Create a new package non-interactively New-AppvSequencerPackage -Name "MyApp" ` -Installer "C:\SourceFiles\setup.exe" ` -OutputPath "C:\Packages" ` -PrimaryVirtualApplicationDirectory "C:\Program Files\MyApp"
4. Package Creation and Editing
Package Configuration
- Virtual File System (VFS): Isolates application files
- Registry Virtualization: Captures and isolates registry changes
- COM Mode: Defines COM object interaction (Integrated / Isolated)
- Scripts: Pre/post add, publish, and launch scripts defined in
UserConfig.xml/DeploymentConfig.xml
Package Modification
12345# Update / re-sequence an existing package Update-AppvSequencerPackage -AppvPackageFilePath "C:\Packages\MyApp.appv" ` -Installer "C:\Updates\MyAppUpdate.exe" ` -OutputPath "C:\Packages\Updated"
Use the Sequencer GUI for interactive edits to shortcuts, file type associations, and the DeploymentConfig.xml.
5. Virtual Application Deployment
Deployment Methods
- Streaming: On-demand application delivery (default for server publishing)
- Download / Mount: Full package staged locally (
Mount-AppvClientPackage) - Shared Content Store (SCS) mode: No local cache — ideal for non-persistent VDI and AVD session hosts
Deployment PowerShell
1234567# Stand-alone deployment $pkg = Add-AppvClientPackage -Path "\\fileshare\Packages\MyApp.appv" Publish-AppvClientPackage -PackageId $pkg.PackageId -VersionId $pkg.VersionId -Global # Fully cache the package locally Mount-AppvClientPackage -PackageId $pkg.PackageId -VersionId $pkg.VersionId
6. Client Configuration and Management
Client Settings
12345678910# Common client tuning Set-AppvClientConfiguration -EnablePackageScripts 1 Set-AppvClientConfiguration -PackageInstallationRoot '%ProgramData%\App-V' Set-AppvClientConfiguration -SharedContentStoreMode 1 # AVD / VDI # Streaming behavior Set-AppvPublishingServer -Name 'PrimaryServer' ` -GlobalRefreshEnabled $true ` -UserRefreshEnabled $true
Performance Optimization
- Enable background streaming for large packages
- Use SCS mode on non-persistent virtual desktops
- Pre-mount priority packages during image build
- Keep packages modular and minimize VFS footprint
7. Publishing and Entitlement
Publishing Configuration
1234567# Register a publishing server with the client Add-AppvPublishingServer -Name "PrimaryServer" ` -URL "https://appv.contoso.com:443" # Force a refresh Sync-AppvPublishingServer -Name "PrimaryServer"
Entitlements are typically driven through AD groups assigned in the App-V Management Console, or via Configuration Manager / Intune collections in standalone mode.
8. Connection Groups
Managing Connection Groups
1234# Add and enable a connection group on the client Add-AppvClientConnectionGroup -Path "C:\ConnectionGroups\Office-Plugins.xml" Enable-AppvClientConnectionGroup -GroupId $GroupId -VersionId $VersionId -Global
Connection groups merge the virtual environments of multiple packages — use them for plug-ins, middleware, and dependencies rather than rebuilding packages.
9. User Experience Virtualization (UE-V)
UE-V is built into Windows 10/11 Enterprise (no separate agent install required) and can be enabled with PowerShell:
123456# Enable the in-box UE-V service Enable-UEV # Register an Office or custom settings template Register-UevTemplate -Path "C:\Templates\MicrosoftOffice2016Win64.xml"
UE-V is also in extended support; for modern deployments, consider FSLogix Profile Containers for roaming user state, especially on AVD and Windows 365.
10. PowerShell Cmdlets for Automation
Essential Cmdlets
Enable-Appv/Get-AppvStatusAdd-AppvClientPackage/Remove-AppvClientPackagePublish-AppvClientPackage/Unpublish-AppvClientPackageMount-AppvClientPackageGet-AppvClientPackageAdd-AppvPublishingServer/Sync-AppvPublishingServerNew-AppvSequencerPackage/Update-AppvSequencerPackageAdd-AppvClientConnectionGroup/Enable-AppvClientConnectionGroup
11. Performance Optimization
Optimization Strategies
- Minimize package size; exclude unneeded language packs and help files
- Use Shared Content Store mode on pooled VDI / AVD hosts
- Pre-mount or pre-stage packages in golden images
- Leverage connection groups instead of monolithic packages
- Tune publishing refresh intervals to reduce logon impact
12. Troubleshooting and Logging
Logging Configuration
123456# Most logging is now exposed through Windows Event Log channels # under: Applications and Services Logs\Microsoft\AppV\ # Toggle verbose package script logging Set-AppvClientConfiguration -PackageScriptOutputEnabled 1
Common Troubleshooting Tools
- Event Viewer →
Microsoft-AppV-Client/*channels (Admin, Operational, Virtual Applications) Get-AppvClientPackage -AllandGet-AppvClientConnectionGroupRepair-AppvClientPackagefor corrupted user state- Sequencer diagnostics report (generated at package creation)
13. Configuration Manager and Intune Integration
Microsoft Configuration Manager (current branch)
- Native App-V deployment type in the application model
- Distribute
.appvpackages via distribution points - Supports user- and device-targeted deployments and SCS mode
Microsoft Intune
- Deploy App-V packages by wrapping them as Win32 apps (.intunewin) with an install script that calls
Add-AppvClientPackage/Publish-AppvClientPackage - For new application delivery, prefer MSIX (Line-of-business apps) or Win32 app deployment
14. Migration from MSI (and to MSIX)
MSI → App-V
- Analyze the existing MSI and capture install/runtime behavior
- Sequence the application on a clean reference machine
- Test compatibility and shortcuts
- Deploy the virtualized package
App-V → MSIX (recommended for new work)
- Use the MSIX Packaging Tool to convert App-V packages to MSIX where compatible
- Validate with the Package Support Framework (PSF) for fix-ups (working directory, file redirection, registry redirection)
- For multi-session AVD scenarios, evaluate MSIX app attach
15. Best Practices
Sequencing Recommendations
- Use a clean, snapshotted reference VM matching the target OS
- Sequence with a least-privilege standard user where possible
- Minimize external dependencies; capture prerequisites separately
- Test on a representative client image, not just the sequencer
- Keep packages modular and use connection groups for composition
16. Security Considerations
Security Recommendations
- Sign packages and host them on TLS-protected publishing endpoints
- Apply least-privilege ACLs on package shares
- Scope entitlements with AD groups or Azure AD / Entra ID groups via Intune
- Audit packages regularly and remove deprecated versions
- Patch the underlying applications on the same cadence as native installs
17. Monitoring and Reporting
Monitoring Tools
- Configuration Manager application deployment reports
- Intune device and app reporting (for Win32-wrapped App-V deployments)
- App-V client Event Log channels
- Performance Monitor counters for streaming and cache usage
18. Package Maintenance
Update Strategy
- Use
Update-AppvSequencerPackagefor in-place revisions - Version packages and retain
PackageId/VersionIdhistory for rollback - Define a deprecation process; unpublish before removing
- Re-validate after each Windows feature update on a pilot ring
Note: App-V is in long-term sustaining mode — always test on the current Windows servicing channel and plan a longer-term migration to MSIX / MSIX app attach for new application delivery scenarios. Always validate in a staged environment before production deployment.
Continue Learning
Discover more cheatsheets to boost your productivity