Product Documentation

Microsoft Application Virtualization

May 09, 2015

Microsoft Application Virtualization (App-V) lets you deploy, update, and support applications as services. Users access applications without installing them on their own devices. Applications and user settings are preserved whether users are online or offline.

This release supports App-V 5.0.

The App-V 5.0 client does not support offline access to applications.

The App-V 4.6 2 client is no longer supported.

App-V and Microsoft User State Virtualization (USV) provide access to applications and data, regardless of location and connection to the Internet.

App-V integration support includes using SMB shares for applications; the HTTP protocol is not supported.

Microsoft App-V components

See App-V 5.0 Supported Configurations for system requirements.

With App-V, individual applications are transformed from locally installed products into centrally managed services. Applications are available seamlessly without any pre-configuration or changes to operating system settings. App-V contains the following components:
  • Management Server — Provides a centralized console to manage App-V 5.0 infrastructure and deliver virtual applications to both the App-V Desktop Client as well as a Remote Desktop Services Client. The App-V Management Server authenticates, requests, and provides the security, metering, monitoring, and data gathering required by the administrator. The server uses Active Directory and supporting tools to manage users and applications.
  • Publishing Server — Provides App-V Clients with applications for specific users, and hosts the virtual application package for streaming. It fetches the packages from the management server.
  • Client — Retrieves virtual applications, publishes the applications on the client, and automatically sets up and manages virtual environments at runtime on Windows devices. The App‑V Client is installed on the VDA and stores user-specific virtual application settings, such as registry and file changes in each user's profile.

Studio components

You provide App-V applications to users in Studio using the following components:

  • Studio App-V publishing — Configures access to App-V Publishing and Management servers so that Studio can discover and use App-V applications.
  • Machine catalogs — Collections of physical computers and virtual machines on which applications reside. The machines and their resources are assigned to users through Delivery Groups. During machine catalog creation, the App-V Client must be installed on the master image, and configured through settings such as ShareContentStoreMode and EnablePackageScripts.
    Note: You do not need to configure the App-V Publishing Server in the master image, since it is configured during application launch.
  • Delivery Groups — Provides access to applications for specific groups of users, such as departments or teams.
  • Applications — Delivered to users by assigning them to Delivery Groups

Manage App-V application delivery

With App-V, you can deploy applications from a virtual application server to any user device.

This release supports App-V 5.

To deliver these types of applications, you must:

  1. Deploy App-V, as described in the instructions in Microsoft's TechNet Library
  2. Publish the App-V applications on the App-V Management Server. Configure settings such as permissions and File Type Association. These settings are pre-existing if you already deployed App-V.
  3. Install the App-V client on VDAs.
  4. Install the App-V client in the master image for Studio machine catalogs.
    Note: During machine catalog creation, the App-V Client must be installed on the master image, and configured through settings such as ShareContentStoreMode and EnablePackageScripts. You do not need to configure the App-V Publishing Server in the master image since it is configured during application launch.
  5. During Site configuration in Studio, add the App-V Publishing and Management server addresses. These servers are automatically obtained by the Delivery Groups in that site.
  6. Use Studio to connect to App-V servers as described in Microsoft Application Virtualization.
  7. Use Studio to provide App-V applications through application Deliver Groups, as described in Create a Delivery Group application.
  8. The applications are now available for launch through Citrix Receiver, and are accessible through StoreFront.

The following figure illustrates the processes for delivering App-V applications

App-V 5 publishing server settings

To change publishing server settings on a VDA, Citrix recommends using the SDK cmdlets on the controller.

To view publishing server settings, enter:

Get-CtxAppvServerSetting -AppVPublishingServer <pubServer>

The following cmdlet changes the settings of the publishing server on the Delivery Controller. Not all parameters are mandatory.

Set-CtxAppvServerSetting –AppVPublishingServer  
<pubServer> -UserRefreshOnLogon <bool> -UserRefrehEnabled <bool>   
-UserRefreshInterval <int> -UserRefreshIntervalUnit <Day/Hour>  
-GlobalRefreshOnLogon <bool> -GlobalRefresfEnabled<bool>  
-GlobalRrefreshInterval <int> -GlobalRefreshIntervalUnit <Day/Hour>

To make sure that App-V 5 applications launch properly, in PowerShell enter the following SDK cmdlet:

Set-CtxAppvServerSetting –UserRefreshonLogon 0
Note: If you previously used GPO policy settings for managing publishing server settings, the GPO settings override any App-V integration settings, including the previous cmdlet settings. This may result in App-V application launch failure. Citrix recommends that you remove all GPO policy settings and configure the same settings using the SDK, as described in the SDK cmdlet documentation.

App-V use cases

You can launch App-V applications (from Server OS and Desktop OS Delivery Groups) as described in the following use cases:

  • Through Citrix Receiver
  • From the Start menu
  • Through the App-V client and Citrix Receiver
  • Simultaneously by multiple users on multiple devices
  • Through Citrix StoreFront

Note the following:

  • Modified App-V application properties are implemented when the application is started. For example, for applications with a modified display name or customized icon, the modification appears users start the application.
  • There is no change in App-V applications performance when a desktop and application Delivery Group is converted to an application Delivery Group.
  • Only App-V server-based deployment in which an administrator uses an App-V Management Server and Publishing Server to manage App-V applications is supported.

To configure App-V resources

  1. In Studio, in the Configuration node, select App-V Publishing.
  2. Select Add App-V Publishing.
  3. In the App-V Settings dialog box, enter the URLs for the following servers:
    • App-V management server
    • App-V publishing server
  4. Select Test connection to make sure you can access the servers, and then click Save.

To manage App-V components

You can add or change App-V servers, refresh the application display, or delete applications.

  1. In the Configuration node, select App-V Publishing.
  2. You can perform the following actions:
    • Edit App-V publishing settings — Add or change App-V management and App-V publishing servers.
    • Remove App-V publishing settings — Delete App-V management and App-V publishing servers.
    • Refresh App-V Applications — Refresh the App-V applications display. If applications are no longer available, or if there is a problem connecting to a server, this is indicated in the display.

Now that App-V applications are available, assign the applications to users as described in Create a Delivery Group application.

Troubleshoot App-V

Troubleshoot Studio

Test connection operation fails

If the Test connection operation returns an error when you specify App-V management server and publishing server addresses in Studio, check the following:
  1. The App-V server is powered on: either send a Ping command or check the IIS Manager (each App-V server should be in a Started and Running state).
  2. PowerShell remoting is enabled on the App-V server. If it is not, follow the procedure in
  3. The App-V server is added to Active Directory.

    If the Studio machine and the App-V server are in different Active Directory domains that do not have a trust relationship, from the PowerShell console on the Studio machine, run winrm s winrm/Config/client ‘@{TrustedHosts=”<App-V server FQDN>”}’. If TrustedHosts is managed by GPO, the following error message will display: “The config setting TrustedHosts cannot be changed because use is controlled by policies. The policy would need to be set to “Not Configured” in order to change the config setting”. If this message displays, add an entry for the App-V server name to the TrustedHosts policy in GPO (Administrative Templates > Windows Components > Windows Remote Management (WinRM) > WinRM Client).

  4. The Studio administrator is also an App-V server administrator.
  5. File sharing is enabled on the App-V server: enter \\<App-V server FQDN> in Windows Explorer or with the Run command.
  6. The App-V server has the same file sharing permissions as the App-V administrator: on the App-V server, add an entry for\\<App-V Server FQDN> in Stored User Names and Passwords, specifying the credentials of the user who has administrator privileges on the App-V server. For guidance, see

App-V application discovery fails

Check the following if App-V application discovery fails:

  1. Studio administrator is an App-V management server administrator.
  2. The App-V management server is running. Check this by opening the IIS Manager and make sure the server is in a Started and Running state.
  3. PowerShell remoting is enabled on the App-V management server and on the publishing server. If either is not enabled, follow the procedure in to enable the server.
  4. Packages have appropriate security permissions so that the Studio administrator has access.

Troubleshoot App-V launch failure

Check the following if App-V applications fail to launch:

  1. The publishing server is running. Check this by opening the IIS Manager and make sure the server is in a Started and Running state.
  2. App-V packages have appropriate security permissions so that users have access.
  3. Check the following on the VDA:
    • Make sure that Temp is pointing to the correct location, and that there is enough space available in the Temp directory.
    • Make sure that App-V client is installed, and no earlier than version 5.0.
    • Make sure you have Administrator permissions, run Get-AppvClientConfiguration and make sure that EnablePackageScripts is set to 1. If it is not set to 1, run Set-AppvClientConfiguration -EnablePackageScripts $true.

      Citrix recommends that you perform this step when you create a master image so that all VDAs created from the master image have the correct configuration.

    • Access the Registry editor (regedit) and go to HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\AppV. Make sure that the AppVServers key has the following value format: AppVManagementServer+metadata;PublishingServer. For example:;
    • Make sure that CtxAppVCOMAdmin has administrator privileges. During VDA installation CtxAppVCOMAdmin is usually created and added to the Local Administrators Group on the VDA machine. However, depending on the Active Directory policy, this user might lose the administrative association.

      Run compmgmt.msc and browse to Local Users and Groups > Users. If CtxAppVCOMAdmin is not an administrator, fine tune the group policy or contact your administrator, so that this user account retains its administrative association.

  4. On the master image on which the App-V client is installed, the administrator must set the PowerShell ExecutionPolicy to RemoteSigned. This setting is required because the App-V client module provided by Microsoft is not signed, and this the setting allows PowerShell to run unsigned local scripts and cmdlets. Set the ExecutionPolicy using one of these methods:
    • Logged in as administrator, run the PowerShell command Set-ExecutionPolicy RemoteSigned.
    • From Group Policy settings, go to Computer Configuration > Policies > Administrative Templates Windows Components > Windows PowerShell > Turn on Script Execution.
  5. Check the publishing servers:
    • Run Get-AppvPublishingServer * to display the list of publishing servers.
    • Check whether UserRefreshonLogon is set to False. If it is not set to False, the first App-V application launch typically fails.
    • With Administrator privileges, run Set-AppvPublishingServer and set UserRefreshonLogon to False.
    Note: Beginning with XenDesktop release 7.1 or XenApp 7.5, you can view and set UserRefreshOnLogon (and other publishing servers parameters) using SDK cmdlets.

If these steps do not resolve the issues, the Administrator should enable and examine the logs.

After upgrading an App-V package

If you upgrade an App-V package containing applications published through Studio, delete the old applications, which will remove them from the application Delivery Group. Then, discover and add the new applications to the Delivery Group. For example, if you published Word 2010 and Excel 2010 from an Office 2010 App-V package and then upgraded that package to Office 2013, remove Word 2010 and Excel 2010 and then discover and add Word 2013 and Excel 2013.

Enable logs

Enable logs on Studio and the VDA to help troubleshoot App-V.

To enable Studio logs

  1. Create the folder C:\CtxAppvLogs.
  2. Go to C:\ProgramFiles\Citrix\ StudioAppVIntegration\SnapIn\Citrix.Appv.Admin.V1, and open CtxAppvCommon.dll.config in a text editor such as notepad as an administrator. Uncomment the following line:
    <add key =”LogFileName” value=”C:\CtxAppvLogs\log.txt”/> 

    The logs are available at that location.

To enable VDA logs

  1. Create the folder C:\CtxAppvLogs.
  2. Go to C:\ProgramFiles\Citrix\ Virtual Desktop Agent, and open CtxAppvCommon.dll.config in a text editor such as notepad as an administrator.
  3. Uncomment the following line in CtxAppvCommon.dll.config:
    <add key =”LogFileName” value=”C:\CtxAppvLogs\log.txt”/> 
  4. Uncomment the following line and set the value field to 1 as shown in the following example:
    <add key =”EnableLauncherLogs” value=”1”/>
    • All configuration related logs are available in C:\CtxAppvLogs.
    • The application launch logs are available as follows:
      • XenDesktop 7.1, XenDesktop 7.5, or XenApp 7.5 — %LOCALAPPDATA%\Citrix\CtxAppvLogs.
      • XenDesktop 7.0 — %LocalAppData%\temp\CtxAppVLogs
    • LOCALAPPDATA resolves to the local folder for the logged in user. Make sure to check in the local folder of the launching user (for whom application launch failed):
      • Beginning with XenDesktop 7.1 or XenApp 7.5 — %LocalAppData%\Citrix\CtxAppVLogs\.
      • XenDesktop 7.0 — %LocalAppData%\temp\CtxAppVLogs\
  5. As Administrator, restart the Broker service or restart the VDA machine to start logging.