--- title: Deploy and configure App-V apps using MDM description: Configure, deploy, and manage Microsoft Application Virtualization (App-V) apps using Microsoft Endpoint Manager or App-V server. ms.author: dansimp ms.topic: article ms.prod: w10 ms.technology: windows author: dansimp ms.date: 06/26/2017 ms.reviewer: manager: dansimp --- # Deploy and configure App-V apps using MDM ## Executive summary
Microsoft Application Virtualization (App-V) apps have typically been configured, deployed, and managed through on-premises group policies using Microsoft Endpoint Manager or App-V server. In Windows 10, version 1703, App-V apps can be configured, deployed, and managed using mobile device management (MDM), matching their on-premises counterparts.
MDM services can be used to publish App-V packages to clients running Windows 10, version 1703 (or later). All capabilities such as App-V enablement, configuration, and publishing can be completed using the EnterpriseAppVManagement CSP.
### EnterpriseAppVManagement CSP node structure [EnterpriseAppVManagement CSP reference](./enterpriseappvmanagement-csp.md) The following shows the EnterpriseAppVManagement configuration service provider in tree format. ```console ./Vendor/MSFT EnterpriseAppVManagement ----AppVPackageManagement --------EnterpriseID ------------PackageFamilyName ---------------PackageFullName ------------------Name ------------------Version ------------------Publisher ------------------InstallLocation ------------------InstallDate ------------------Users ------------------AppVPackageID ------------------AppVVersionId ------------------AppVPackageUri ----AppVPublishing --------LastSync ------------LastError ------------LastErrorDescription ------------SyncStatusDescription ------------SyncProgress --------Sync ------------PublishXML ----AppVDynamicPolicy --------ConfigurationId ------------Policy ```(./User/Vendor/MSFT/EnterpriseAppVManagement) contains the following sub-nodes.
AppVPublishing - An exec action node that contains the App-V publishing configuration for an MDM device (applied globally to all users for that device) or a specific MDM user.
- EnterpriseAppVManagement - AppVPackageManagement - **AppVPublishing** - LastSync - LastError - LastErrorDescription - SyncStatusDescription - SyncProgress - Sync - PublishXML - AppVDynamicPolicySync command:
[App-V Sync protocol reference]( https://msdn.microsoft.com/enus/library/mt739986.aspx)AppVDynamicPolicy - A read/write node that contains the App-V dynamic configuration for an MDM device (applied globally to all users for that device) or a specific MDM user.
- EnterpriseAppVManagement - AppVPackageManagement - AppVPublishing - **AppVDynamicPolicy** - [ConfigurationId] - PolicyDynamic policy examples:
[Dynamic configuration processing](/windows/application-management/app-v/appv-application-publishing-and-client-interaction#bkmk-dynamic-config">Dynamic configuration processing)AppVPackageManagement - Primarily read-only App-V package inventory data for MDM servers to query current packages.
- EnterpriseAppVManagement - **AppVPackageManagement** - [EnterpriseID] - [PackageFamilyName] - [PackageFullName] - Name - Version - Publisher - InstallLocation - InstallDate - Users - AppVPackageID - AppVVersionId - AppVPackageUri - AppVPublishing - AppVDynamicPolicyThe examples in the scenarios section demonstrate how the publishing document should be created to successfully publish packages, dynamic policies, and connection groups.
## Scenarios addressed in App-V MDM functionalityAll App-V group policies will be reflected by having a corresponding CSP that can be set using the Policy CSP. The CSPs match all on-premises App-V configuration capabilities. In addition, new App-V package management capability has been added to closely match the App-V PowerShell functionality.
A complete list of App-V policies can be found here:
[ADMX-backed policy reference](./policy-configuration-service-provider.md) [EnterpriseAppVManagement CSP reference](./enterpriseappvmanagement-csp.md) ### SyncML examplesThe following SyncML examples address specific App-V client scenarios.
#### Enable App-V clientThis example shows how to enable App-V on the device.
```xmlThis example shows how to allow package scripts to run during package operations (publish, run, and unpublish). Allowing package scripts assists in package deployments (add and publish of App-V apps).
```xmlComplete list of App-V policies can be found here:
[Policy CSP](./policy-configuration-service-provider.md) #### SyncML with package published for a device (global to all users for that device)This SyncML example shows how to publish a package globally on an MDM enrolled device for all device users.
```xml*PackageUrl can be a UNC or HTTP/HTTPS endpoint.
#### SyncML with package (with dynamic configuration policy) published for a device (global to all users on that device)This SyncML example shows how to publish a package globally, with a policy that adds two shortcuts for the package, on an MDM enrolled device.
```xml*PackageUrl can be a UNC or HTTP/HTTPS endpoint.
#### SyncML with package (using user config deployment) published for a specific userThis SyncML example shows how to publish a package for a specific MDM user.
```xmlThis SyncML example shows how to publish a connection group, and group applications and plugins together.
> [!NOTE] > The user connection group has the user-only package as optional in this example, which implies users without the optional package can continue to launch the global package within the same connection group. ```xmlThis SyncML example shows how to unpublish all global packages on the device by sending an empty package and connection group list in the SyncML.
```xmlThese SyncML examples return all global, and user-published packages on the device.
```xml