Citrix Virtual Delivery Agent (VDA) 2009

Last Modified: Oct 20, 2020 @ 4:43 am

Navigation

ūüí° = Recently Updated

Change Log

Hardware

Hypervisor Host Hardware

  • G0-EUC Moore‚Äôs law of Windows 10 1903 – Newer versions of Windows 10 have lower density than older versions
  • Citrix Blog Post¬†Citrix Scalability ‚ÄĒ The Rule of 5 and 10:¬†Simply take the number of physical cores in a hypervisor host, multiply it by 5 or 10, and the result will be your Single Server Scalability.¬†Use 5 if you‚Äôre looking for the number of Virtual Desktop VMs you can host on a box, and use 10 if you‚Äôre looking for the number of Virtual Apps user sessions you can host on a box.

Virtual Machine Hardware

  1. Operating system version support: VDA version 2009 supports Windows 10 64-bit (1607 and newer), Windows Server 2019, and Windows Server 2016. Windows Server 2012 R2 is no longer supported.
    • For Windows Server 2012 R2, install VDA 1912 with the latest Cumulative Update. VDA 1912 will work with newer Delivery Controllers (e.g. Delivery Controller 2009).
    • For older operating systems (e.g Windows 7 or Windows Server 2008 R2), install VDA 7.15 with the latest Cumulative Update. VDA 7.15 will work with newer Delivery Controllers (e.g. Delivery Controller 1909 and 1903).
  2. Cloud VDAs not supported ‚Äď VDAs running on Azure or AWS are no longer supported by ‚Äúroll your own‚ÄĚ Delivery Controllers version 2003 and newer. Citrix now requires cloud-hosted VDAs to be controlled by Citrix Cloud Service.
  3. Microsoft TechNet Blog –¬†Say No to Windows 10 Long Term Servicing Channel (LTSC)
    • No Edge
    • From January 2020, Microsoft Office 365 will not be supported on LTSC.
    • Non-security operating system fixes and enhancements may not get back-ported to LTSC.
  4. CTX224843 Windows 10 compatibility with Citrix Virtual Desktops (XenDesktop)

  5. Hypervisor Support –¬†CTX131239¬†Supported Hypervisors for Virtual Desktops (XenDesktop) and Provisioning Services
    • Citrix Virtual Apps and Desktops (CVAD) 1811 and newer support vSphere 6.7 Update 3.
  6. Firewall Рthe UDP-based EDT protocol is enabled by default. Make sure the UDP ports are open for ICA/HDX:
    1. UDP 1494
    2. UDP 2598
    3. UDP 443 – from Internet to Citrix Gateway.
    4. UDP 443 can also be used by internal ICA connections if VDA SSL is configured.
    5. For EDT through Citrix Gateway, make sure your Citrix ADC firmware is up to date, preferably 12.1 or newer. Then enable DTLS on the Gateway Virtual Server.
  7. VDA virtual machine sizing:
    1. For Windows 10 virtual desktops, give the virtual machine: 2+ vCPU and 4+ GB of RAM Рhigher RAM for browsers
    2. For Windows 2016 RDSH, give the virtual machine 8 vCPU, and 24-48 GB of RAM
    3. See Daniel Feller Sizing Windows 2016, Windows 2012 And Windows 10 Virtual Machines
  8. If using RAM caching (MCSIO or PvS), add more RAM for the cache
  9. Remove the floppy drive
  10. Remove any serial or LPT ports
  11. If vSphere:
    1. To reduce disk space, reserve memory. Memory reservations reduce or eliminate the virtual machine .vswp file.
    2. The NIC should be VMXNET3.
    3. For vGPU, if vSphere 6.7 Update 1, set vgpu.hotmigrate.enabled Advanced vCenter Server Setting to true. (source = William Lam How to enable vGPU vMotion in vSphere 6.7 Update 1)
  12. For User Personalization Layer (UPL), Secure Boot is not supported.
    1. When creating a new VM, on the Customize Hardware page, switch to the tab named VM Options.
    2. Expand Boot Options and deselect Secure Boot. You can also disable Secure Boot after the machine is created. Or you can switch the Firmware to BIOS instead of EFI but you can only do that while creating the machine.
  13. For Citrix App Layering, switch to BIOS instead of UEFI:
    1. App Layering 2003 and newer can import UEFI images by running a script instead of using a connector.
    2. When creating a new VM, on the Customize Hardware page, switch to the tab named VM Options.
    3. Expand Boot Options and change Firmware to BIOS. Note: you can only do this when creating a VM. Changing an existing VM will prevent it form booting.
  14. If this VDA will boot from Citrix Provisioning:
    1. For vSphere, the NIC Adapter Type must be VMXNET3.
    2. For vSphere, configure the CD/DVD Drive to boot from IDE instead of SATA. SATA won’t work with PVS.
    3. Make sure you remove the SATA Controller after you change the CD/DVD Drive to be IDE.
  15. Install the latest version of hypervisor drivers (e.g. VMware Tools).
  16. The¬†vSphere Activity Monitoring Feature with NSX Guest Introspection feature uses a TDI driver (vnetflt.sys), which might cause a “Connection Interrupted” message when users log off of Citrix. See¬†CTX221206¬†“Connection Interrupted” error message displayed while logging off ICA session.

If vSphere, disable NIC Hotplug

  1. Users could use the systray icon to Eject the Ethernet Controller. Obviously this is bad.
  2. To disable this functionality, power off the virtual machine.
  3. Once powered off, right-click the virtual machine, and click Edit Settings.
  4. Switch to the tab named VM Options.
  5. Expand Advanced and then click Edit Configuration.
  6. Click the button labelled Add Configuration Params.
  7. For the Name, enter devices.hotplug.
  8. For the Value, enter false. Then click OK.
  9. The VM can then be powered on.

Windows Preparation

  1. Computer Group Policy ‚Äď Make sure the Master VM is in the same OU as the Linked Clones so the Master VM will get the computer-level GPO settings in its registry. Run gpupdate on the master after moving the VM to the correct OU. When Clones are created from the Master, the computer-level GPO settings will already be applied, thus eliminating timing issues.
  2. If Server OS, disable IE Enhanced Security Configuration in Server Manager > Local Server.
  3. Run Windows Update. Do not skip this step. Many VDA installation problems are fixed by simply updating Windows.


    1. Defer Feature Updates – For Windows 10, since Citrix VDA does not immediately support new Windows 10 versions, configure Windows Update to defer feature updates.

  4. Add your Citrix Administrators group to the local Administrators group on the VDA. Computer Management.
  5. The Remote Desktop Services ‚ÄúPrompt for Password‚ÄĚ policy prevents Single Sign-on to the Virtual Delivery Agent. Check registry key HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services. If fPromptForPassword = 1 then you need to fix group policy. The following GPO setting will prevent Single Sign-on from working.
    Computer Configuration | Policies | Administrative Templates | Windows Components | Remote Desktop Services | Remote Desktop Session Host | Security | Always prompt for password upon connection
    Or set the registry value HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Portica\AutoLogon (DWORD) = 0x1. This registry value only applies to Single-session OS (aka Desktop OS), not Multi-session OS (aka Server OS). (source = comments)
  6. For Remote Assistance in Citrix Director, configure the GPO setting Computer Configuration | Policies | Administrative Templates | System | Remote Assistance | Offer Remote Assistance. See Jason Samuel РHow to setup Citrix Director Shadowing with Remote Assistance using Group Policy for more details.

Install Virtual Delivery Agent (VDA) 2009

Mixed versions – You can upgrade the VDAs before you upgrade the Delivery Controllers resulting in VDAs being newer than the Delivery Controllers. You can upgrade the Delivery Controllers before you upgrade the VDAs. In other words, you can mix and match VDA versions and Delivery Controller versions.

CLI Install:

Command Line Install Options are detailed at Install using the command line at Citrix Docs.

CTX234824 Citrix VDA Commandline Helper Tool: a GUI to configure the VDA installation options.

Scripted Upgrade:

To automate the upgrade of VDA software on persistent machines, see David Ott Quickly Updating Persistent MCS VDAs at CUGC for a sample script.

GUI Install:

  1. Mount the downloaded Citrix Virtual Apps and Desktops 7 2009 ISO and run AutoSelect.exe.

    • Alternatively, you can download the standalone VDA package and run that instead. Go the main Citrix Virtual Apps and Desktops 7 2009¬†download page. Expand the section labelled¬†Components that are on the product ISO but also packaged separately. There is also a VDA installer called Single-session OS Core Services¬†that is designed for Remote PC deployments.
  2. Click Start next to either Virtual Apps or Virtual Apps and Desktops. The only difference is the product name displayed in the installation wizard.
  3. On the top right, click Virtual Delivery Agent for Windows Multi-session OS (aka RDSH, aka Server OS), or Windows Single-session OS (aka virtual desktop, aka Desktop OS), depending on which type of VDA you are building.

  4. In the Environment page, select Create a master MCS Image or Create a master image using Citrix Provisioning, and click Next.

  5. In the Core Components page, if you don’t need Citrix Workspace App (formerly known as Receiver) installed on your VDA, then uncheck the box. Workspace app is usually only needed for double-hop ICA connections (connect to first VDA, and then from there, connect to second VDA). Click Next.
  6. In the Additional Components page:
    1. Single-session OS (not Multi-session OS) has a new option for Citrix User Personalization Layer (UPL). This component comes from Citrix App Layering but does not need any of the App Layering infrastructure.

      • Do not enable User Personalization Layer if you are also using Citrix App Layering.
      • Warning: A Citrix Policy setting activates Citrix User Personalization Layer by setting the UNC path to where the User Personalization Layers should be stored. The Citrix Policy setting should only be deployed to non-persistent machines. If you deploy the Citrix Policy Setting to your Master Image, then your Master Image will be hosed and you must rebuild it from scratch.
      • UPL requires Secure Boot to be disabled. You can do that by editing the VM, switch to the VM Options tab, and expand Boot Options.
    2. There’s an option for Machine Creation Services (MCS) storage optimization. This is also known as MCS IO. In VDA 1912 and newer, the MCS IO driver is now the exact same driver as the driver used in Citrix Provisioning. If you want the MCSIO feature, then VDA 1912 and newer are strongly recommended since they don’t have the same performance problems as 1811 and older (including 7.15).
    3. There’s an option for Citrix Files for Windows, which installs an agent that can display files from Citrix Content Collaboration (aka ShareFile). See¬†CTX228273¬†Install and Use Citrix Files for Windows.
  7. Click Next.
  8. In the Delivery Controller page, select Do it manually. Enter the FQDN of each Delivery Controller. Click Test connection. And then make sure you click Add. Click Next when done.
  9. In the Features page, only the top box is checked by default. If you want to use the other features, check the boxes. Remote Assistance is for Director.
  10. Then click Next.
  11. In the Firewall page, click Next.
  12. In the Summary page, click Install.

  13. Click Close if you are prompted to restart.
  14. After the machine reboots twice, login and installation should continue.
    1. If you see a¬†Locate ‘Citrix Virtual Apps and Desktops 7’ installation media window, don’t click anything.
    2. Go to the Citrix_Virtual_Apps_and_Desktops_7_2009.iso file and mount it.
    3. Go back to the¬†Locate ‘Citrix Virtual Apps and Desktops 7’ installation media¬†window.
    4. On the left, expand This PC, and click the DVD Drive.
    5. Click Select Folder.
    6. Repeat these instructions every time you’re prompted to restart.
  15. Installation will continue automatically.
  16. Note: NT SERVICE\CitrixTelemetryService needs permission to login as a service.
  17. In the Diagnostics page, you can optionally check the box next to Collect diagnostic information, click Connect, enter your Citrix account credentials, and then click Next.
  18. In the Finish page, click Finish to restart the machine again.

  19. From CTX225819 When Launching an Application Published from Windows Server 2016, a Black Screen Appears for Several Seconds Before Application is Visible
    • HKLM\SOFTWARE\Citrix\Citrix Virtual Desktop Agent\DisableLogonUISuppression (DWORD) should be set to 0.

Microsoft FSLogix

If you need to roam the user’s Outlook .OST file (Outlook Cached Mode), Outlook Search Index, OneDrive cache, OneNote data, SharePoint data, Skype data, and/or Teams data, then download, install, and configure Microsoft FSLogix. FSLogix has more Office roaming features than Citrix Profile Management. A common architecture is to enable FSLogix Office Container for the Office cache files and use Citrix Profile Management for all other roaming profile files and registry keys.

Microsoft FSLogix is free for all Microsoft RDS CALs, Microsoft Virtual Desktop Access per-user CALs, and all Microsoft Enterprise E3/E5 per-user licenses. Notice that per-device licenses are excluded. See Licensing Requirements at Microsoft Docs.

Do the following to install Microsoft FSLogix on the VDA machine:

  1. Go to https://docs.microsoft.com/en-us/fslogix/install-ht and click the download link.
  2. Extract the downloaded .zip file.
  3. In the FSLogix \x64\Release folder, run FSLogixAppsSetup.exe.
  4. Check the box next to I agree to the license terms and conditions and click Install.
  5. In the Setup Successful page, click Restart.
  6. Make sure the Windows Search service is set to Automatic and Running.
  7. If Office is already installed, then repair the Office installation after installing and starting the Windows Search Service.

FSLogix is configured through Group Policy or by editing registry values on each FSLogix Agent machine.

Citrix Desktop Service

To prevent Citrix Desktop Service (BrokerAgent) from starting and registering with the Delivery Controllers before the boot process is complete, see Jeremy Saunders Controlling the Starting of the Citrix Desktop Service (BrokerAgent).

Customer Experience Improvement Program (CEIP)

Customer Experience Improvement Program (CEIP) is enabled by default. To disable it, create the registry value HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Telemetry\CEIP\Enabled (DWORD), and set it to 0 (zero). Also see CEIP at Citrix Insight Services at Citrix Docs.

See https://www.carlstalhood.com/delivery-controller-cr-and-licensing/#ceip for additional places where CEIP is enabled.

Connection Quality Indicator

The Connection Quality Indicator tells the user the quality of the connection. Position of the indicator is configurable by the user. Thresholds are configurable through group policy.

Download it from CTX220774 Connection Quality Indicator and install it. The article is very detailed.

Group Policy templates are located at C:\Program Files (x86)\Citrix\Connection Quality Indicator\Configuration. Copy the files and folder to <Sysvol>\Policies\PolicyDefinitions, or C:\Windows\PolicyDefinitions.

Find the Group Policy settings under Computer Config | Policies | Administrative Templates | Citrix Components | Virtual Desktop Agent | CQI

Version 1.2 adds the GPO settings to the user half of a GPO, which lets you disable CQI for some users and enable it for others.

Notification display settings lets you customize the user notifications, or disable them.

Connection Threshold Settings lets you set the notification thresholds.

Adaptive Transport

Adaptive Transport is a HDX/ICA protocol feature that tries to use UDP ports (EDT protocol) if they are open, and falls back to TCP ICA if UDP connection is not successful. On higher latency connections, EDT (UDP) tends to perform better than traditional TCP ICA.

The Citrix Policy setting HDX Adaptive Transport defaults to Preferred, which means Adaptive Transport is enabled by default.

The newer Citrix EDT protocol use¬†UDP Ports 1494/2598 for¬†HDX connections to¬†the VDA. The UDP ports should already be open in the VDA’s Windows Firewall. In other words, HDX/ICA uses both TCP and UDP ports.

For EDT (and Adaptive Transport) through Citrix Gateway, make sure your Citrix ADC firmware is up to date, preferably 12.1 or newer. Then make sure DTLS is enabled on the Gateway Virtual Server. DTLS is the UDP version of SSL/TLS.

Slow Logons

Citrix Discussions¬†Xenapp 7.9: Wait for local session manager: “I have a Xenapp 7.9 environment on Windows 2012 R2. When logging in through Citrix I got message “Wait for local session manager” for 20-30 seconds. When logging in to the server with RDS, I do not have to wait for this.”

“Add the following 2 registry keys to your VDA server – then try connecting to it using ICA to see if the issue still occurs:

Add reg keys in “HKLM\SOFTWARE\Citrix\GroupPolicy”
Dword: “CacheGpoExpireInHours” – Value = 5-24 (# of Hours) ***start with value of 5***
Dword: “GpoCacheEnabled” – Value = 1

Restart the machine after adding these registry keys and attempt an ICA connection (at least twice) to see if that helps the Login delay.”

 

Marvin Neys at XenApp slow logon times, user get black screen for 20 seconds at Citrix Discussions says that deleting HKCU\Software\Microsoft\Windows\CurrentVersion\UFH\SHC at logoff reduces logon times from 40 seconds to 6 seconds.

Remove-Item HKCU:\Software\Microsoft\Windows\CurrentVersion\UFH\SHC

 

For additional logon delay troubleshooting, see¬†Alexander Ollischer¬†XenApp/XenDesktop ‚Äď ‚ÄúPlease Wait For Local Session Manager‚ÄĚ message when logging into RDS. He found some Windows Updates that caused a logon delay.

 

VDA recalculates WMI filters on every reconnect. CTX212610 Session Reconnect 30 sec Delay РDisableGPCalculation РWMI Filters indicates that recalculation can be disabled by setting HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Reconnect\DisableGPCalculation (DWORD) to 1. Note: this registry value might stop Citrix Policies from being re-evaluated when users reconnect (source = Citrix Discussions).

Controller Registration Port

Some environments will not accept the default port 80 for Virtual Delivery Agent registration, even though registration is authenticated and encrypted on port 80. To change the port, do the following on the Virtual Delivery Agent:

  1. Open Programs and Features. If Windows 10 1703 or newer, or Windows Server 2019, then open Apps and Features.
  2. Find Citrix Virtual Apps and Desktops 7 2009 РVirtual Delivery Agent, and click Change or Modify (Windows 10 1703 and newer, or Windows Server 2019).
  3. Click Customize Virtual Delivery Agent Settings.
  4. Edit the Delivery Controllers, and click Next.
  5. On the Protocol and Port page, change the port number, and click Next.
  6. In the Summary page, click Reconfigure.
  7. If you see a Diagnostcis page, make a selection for Call Home, and click Next.
  8. In the Finish Reconfiguration page, click Finish.
  9. Restart the VDA machine.
  10. You must also change the VDA registration port on the Delivery Controllers by running "C:\Program Files\Citrix\Broker\Service\BrokerService.exe" -VDAPort
  11. For Local Host Cache, on the Delivery Controller, run "C:\Program Files\Citrix\Broker\Service\HighAvailabilityService.exe" ‚ÄďVdaPort <CORRECT PORT #>. (Source = CTX229493 VDAs Do Not Register in LHC Mode When Registration Port is Not Set To Default)

Verify that VDA registered with a Controller

  1. If you restart the Virtual Delivery Agent machine, or restart the Citrix Desktop Service
  2. In Windows Logs > Application log, you should see an event 1012 from Citrix Desktop Service saying that it successfully registered with a controller.
  3. If you don’t see successful registration, then you’ll need to fix the ListOfDDCs¬†registry key.
    1. See VDA registration with Controllers at Citrix Docs.
    2. See The Most Common VDA Registration Issues & Troubleshooting Steps at Citrix Blogs.
  4. You can also¬†run Citrix’s Health Assistant on the VDA.

  5. See CTX220772 Technical Primer: VDA Registration for a very detailed explanation of the VDA Registration process.

Citrix Workspace app 2009.6

If you want to run Workspace app on the VDA machine, then upgrade it to Workspace app 2009.6 (Current Release).

Download and install Workspace app:

  1. Download Workspace app 2009.6 (Current Release).
  2. On the VDA, as administrator, run the downloaded CitrixWorkspaceApp.exe.
  3. In the Welcome to Citrix Workspace page, click Start.
  4. In the License Agreement page, check the box next to I accept the license agreement, and click Next.
  5. In the Enable Single Sign-on page, check the box next to Enable single sign-on, and click Install.
  6. In the Installation successful page, click Finish.
  7. Click Yes when asked to restart now.
  8. Apps and Features or Programs and Features shows Citrix Workspace 2009 with version 20.9.6.34.

Citrix File Access 2.0.3 for Workspace app for Chrome

  1. If you support Workspace app for Chrome (Chromebook) and want published applicatons to open files on Google Drive, install Citrix File Access on the VDAs. Get it from the Workspace app for Chrome download page, in the Additional Components section.
  2. Go to the extracted Citrix_File_Access_2.0.3, and run FileAccess.msi.
  3. In the Please read the File Access License Agreement page, check the box next to I accept the terms, and click Install.
  4. In the Completed the File Access Setup Wizard page, click Finish.
  5. File Access is listed in Apps & Features or Programs and Features as version 2.0.3.33.

  6. File Access has a default list of supported file extensions. The list can be expanded by editing the registry on the VDA. See CTX219983 Receiver for Chrome Error: Invalid command line arguments: Unable to open the file as it has an unsupported extension.
  7. To open a file from Google Drive, right-click and and open the file using Citrix Workspace app.

Remote Desktop Licensing Configuration

On 2016 and newer RDSH, the only way to configure Remote Desktop Licensing is using group policy (local or domain). This procedure is not needed on virtual desktops.

  1. For local group policy, run gpedit.msc. Alternatively, you can configure this in a domain GPO.
  2. Go to Computer Configuration > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Licensing.
  3. Double-click Use the specified Remote Desktop license servers. Change it to Enabled, and enter the names of the RDS Licensing Servers (typically installed on Delivery Controllers). Click OK.
  4. Double-click Set the Remote Desktop licensing mode. Change it to Enabled and select Per User. Click OK.
  5. Optionally, you can install the Remote Desktop Licensing Diagnoser Tool. In the Server Manager > Add Roles and Features Wizard, on the Features page, expand Remote Server Administration Tools, expand Role Administration Tools, expand Remote Desktop Services Tools, and select Remote Desktop Licensing Diagnoser Tool. Then Finish the wizard.
  6. If it won’t install from Server Manager, you can install it from PowerShell by running¬†Install-WindowsFeature rsat-rds-licensing-diagnosis-ui.
  7. In Server Manager, open the Tools menu, expand Remote Desktop Services (or Terminal Services), and click Remote Desktop Licensing Diagnoser.

  8. The Diagnoser should find the license server, and indicate the licensing mode. If you’re configured for Per User licenses, then it‚Äôs OK if there are no licenses installed on the Remote Desktop License Server.

Several people in Citrix Discussions reported the following issue: If you see a message about RD Licensing Grace Period has expired even though RD Licensing is properly configured, see Eric Verdumen No remote Desktop Licence Server availible on RD Session Host server 2012. The solution was to delete the REG_BINARY in HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\RCM\GracePeriod only leaving the default. You must take ownership and give admin users full control to be able to delete this value.

C: Drive Permissions

This section is more important for shared VDAs like RDSH (Windows Server 2016, and Windows Server 2019).

The default permissions allow users to store files on the C: drive in places other than their profile.

  1. Open the Properties dialog box for C:.
  2. On the Security tab, click Advanced.
  3. If UAC is enabled, click Change permissions.
  4. Highlight the line containing Users and Create Folders, and click Remove.
  5. Highlight the line containing Users and Create files (or Special), and click Remove. Click OK.
  6. Click Yes to confirm the permissions change.
  7. If you see any of these Error Applying Security windows, click Continue. This window should appear multiple times.
  8. Click OK to close the C: drive properties.

Pagefile

If this image will be converted to a Citrix Provisioning vDisk, then you must ensure the pagefile is smaller than the cache disk. For example, if you allocate 20 GB of RAM to your Remote Desktop Session Host, and if the cache disk is only 15 GB, then Windows will have a default pagefile size of 20 GB, and Citrix Provisioning will be unable to move it to the cache disk. This causes Citrix Provisioning to cache to server instead of caching to your local cache disk (or RAM).

  1. Open System.
    1. In Windows Server 2016 and newer, you can right-click the Start button, and click System.
    2. In Windows 10 1703 or newer (or Windows Server 2019), search the Start Menu for advanced system settings.
    3. Another option is to open File Explorer, right-click This PC, and click Properties. This works in Windows 10 1703 and newer.
  2. Click Advanced system settings.
  3. On the Advanced tab, click the top Settings button.
  4. On the Advanced tab, click Change.
  5. Uncheck the box next to Automatically manage paging file size for all drives. Then either turn off the pagefile, or set the pagefile to be smaller than the cache disk. Don’t leave it set to System managed size. Click OK several times.

Direct Access Users

When Citrix Virtual Delivery Agent (VDA) is installed on a machine, non-administrators can no longer RDP to the machine. A new local group called Direct Access Users is created on each Virtual Delivery Agent. Add your non-administrator RDP users to this local group so they can RDP directly to the machine.

From CTX228128 What is the HKLM\Software\Citrix\PortICA\DirectAccessUsers registry function: The HKLM\Software\Citrix\PortICA\DirectAccessUsers registry key determines which Local group the VDA references to determine if a user should be allowed Unbrokered RDP access. Members of the Local Administrators group will always be granted access. If the Registry Key does not exist, or gets deleted, VDA will always allow the Unbrokered RDP Connection. The Registry key and local group are created as part of the VDA installation process.

Registry

EDT MTU Discovery

EDT MTU Discovery prevents EDT packet fragmentation that might result in performance degradation or failure to establish a session. This feature requires the following:

  • Citrix Workspace app 1911 for Windows or newer
  • Citrix ADC 13.0.52.24 or newer
  • Citrix ADC 12.1.56.22 or newer

Set the following registry value on the VDA:

  • Key = HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\icawd
    • Value (DWORD) = MtuDiscovery = 1

Black Screen when launch Published Apps on Windows Server 2016

From CTX225819 When Launching an Application Published from Windows Server 2016, a Black Screen Appears for Several Seconds Before Application is Visible: Citrix and Microsoft have worked together together to deliver code fixes for both Windows Server 2016 and Citrix Virtual Apps. Microsoft is targeting their KB4034661 patch for the third week of August 2017. This fix requires a registry edit to enable.

  • Key = HKLM\SOFTWARE\Citrix\Citrix Virtual Desktop Agent
    • Value (DWORD) = DisableLogonUISuppression = 0

Published Explorer

From Citrix CTX128009 Explorer.exe Fails to Launch: When publishing the seamless explorer.exe application, the session initially begins to connect as expected. After the loading, the dialog box disappears, and the Explorer application fails to appear. On the VDA, use the following registry change to set the length of time a client session waits before disconnecting the session:

  • Key = HKLM\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI
    • Value¬†(DWORD) = LogoffCheckerStartupDelayInSeconds¬†= 10 (Hexadecimal)

Screen Saver

From Citrix CTX205214 Screensaver Not Working in XenDesktop: By default, Screen Saver doesn’t work on Desktop OS. To enable it, on the VDA, configure the following registry value:

  • Key =¬†HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\Graphics
    • Value (DWORD) =¬†SetDisplayRequiredMode = 0

Smart Cards

From¬†CTX231942¬†Windows 10 April 2018 Update (v1803) ‚Äď Citrix Known Issues –¬†Smart Card Service (SCardSvr) will run only if a Smart Card reader is connected. As ICA sessions redirect the Smart Card, it finds the service not to be running and fails.

  • Key =¬†HKEY_LOCAL_MACHINE\Software\WOW6432Node\Microsoft\Cryptography\Calais
    • Value (DWORD) =¬†AllowServiceAccessWithNoReaders¬†= 1

Logon Disclaimer Window Size

From XenApp 7.8 РSession Launch Security/Warning Login Banner at Citrix Discussions: If your logon disclaimer window has scroll bars, set the following registry values:

  • Key = HKEY_LOCAL_MACHINE\Software\Wow6432node\Citrix\CtxHook\AppInit_DLLS\Multiple Monitor Hook
    • Value (DWORD) = LogonUIWidth¬†= 300
    • Value (DWORD) = LogonUIHeight¬†= 200

Login Timeout

From Citrix CTX203760 VDI Session Launches Then Disappears: VDA, by default, only allows 180 seconds to complete a logon operation. The timeout can be increased by setting the following:

  • Key = HKLM\SOFTWARE\Citrix\PortICA
    • Value (DWORD) = AutoLogonTimeout¬†= decimal 240 or higher (up to 3599).

Also see Citrix Discussions Machines in “Registered” State, but VM closes after “Welcome” screen.

From Citrix CTX138404 Application Connection Starts but Disappears after Timeout: after loading the application, the dialog box disappears and the application fails to appear.

  • ¬†Key =¬†HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\TWI
    • Value (DWORD) =ApplicationLaunchWaitTimeoutMS¬†= decimal 60000

Workspace app for HTML5/Chrome Enhanced Clipboard

From About Citrix Receiver for Chrome 1.9 at Citrix Docs: To enable enhanced clipboard support, create a REG_SZ registry value HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\wfshell\Virtual Clipboard\Additional Formats\HTML Format\Name=”HTML Format”. Create any missing registry keys. This applies to both virtual desktops and Remote Desktop Session Hosts.

Workspace app for HTML5/Chrome Upload Folder

The Workspace app for HTML5 (or Chrome) lets upload files.

By default, the user is prompted to select a upload location. If you use the Upload feature multiple times, the last selected folder is not remembered.

Citrix CTX217351 How to Customize File Upload and Download Using Receiver for HTML5 and Receiver for Chrome. You can specify a default uploads location by editing HKLM\Software\Citrix\FileTransfer\UploadFolderLocation on the VDA. Environment variables are supported. When this value is configured, users are no longer prompted to select an upload location. The change takes effect at next logon.

Note: HTML5/Chrome Workspace app also adds a Save to My Device location to facilitate downloads.

4K Monitors

From Citrix Knowledgebase article CTX218217 Unable to span across multiple monitors after upgrade to 7.11 VDA, Black/Blank screen appears on the monitors while connecting to ICA session:

  1. Calculate the video memory that is required for monitors using the following formula:
    SumOfAllMons (Width * Height) * 4 / 0.3, where width and height are resolution of the monitor. Note: There is no hard and fast rule that will work for all cases.
    Example: Consider the resolution of monitor 1 is 1920*1200 and monitor 2 is 1366*768. Then SumOfAllMons will be (1920*1200 + 1366*768)
  2. CTX115637 Citrix Session Graphics Memory Reference describes how multi-monitor resolution is determined.
  3. Open the registry (regedit) and navigate to: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vbdenum
  4. Increase the value of “MaxVideoMemoryBytes”¬†REG_DWORD value to the above calculated memory.
  5. Reboot the VDA.

Citrix Policies also control graphics performance.

COM Port Threads

CTX212090¬†COM Port Intermittently Inaccessible During ICA Sessions:¬†increase the default value of “MaxThreads” under the registry key HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\picaser\Parameters from 20 to a value greater than the number of COM port connections you want to support.¬†For example, if a VDA server supports 100 sessions and each session opens two COM ports, the value of “MaxThreads” should be greater than 200.

NVIDIA vGPU GRID License

Allow NVIDIA vGPU GRID License to apply after the session is started. (Source = Jan Hendrik Meier NVIDIA GRID license not applied before the user connects ‚Äď License Restriction will not be removed until the user reconnects)

  • Key =¬†HKLM\SOFTWARE\NVIDIA Corporation\Global\GridLicensing
    • Value (DWORD) =¬†IgnoreSP¬†= 1

Legacy Client Drive Mapping

Citrix CTX127968 How to Enable Legacy Client Drive Mapping Format on XenApp: Citrix Client Drive Mapping no longer uses drive letters and instead they appear as local disks. This is similar to RDP drive mapping.

The old drive letter method can be enabled by setting the registry value:

  • Key = HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\UncLinks (create the key)
    • Value (DWORD) = UNCEnabled¬†= 0

When you reconnect, the client drives will be mapped as drive letters (starts with V: and goes backwards).

Print Driver for Non-Windows Clients

From CTX140208 Client printing from Mac and Linux clients on Windows 10, Server 2012 R2, and Server 2016. By default, Non-Windows clients cannot map printers due to a missing print driver on the VDA machine.

  1. Requirements:
    • Internet Access
    • Windows Update service enabled
  2. In Windows 10 1803+, open Printers & scanners. On the right (or scroll down) is a link to Print Server Properties.
  3. In older versions of Windows, you can get to Print server properties from Devices and Printers.
    1. In Windows prior to Windows 10 1703, click Start, and run Devices and Printers.
    2. In Windows 10 1703, open Printers & scanners, then scroll down, and click Devices and printers.

  4. In the Printers section, highlight a local printer (e.g. Microsoft XPS Document Writer). Then in the toolbar, click Print server properties.
  5. Switch to the Drivers tab and click Change Driver Settings.
  6. Then click Add.
  7. In the Welcome to the Add Printer Driver Wizard page, click Next.
  8. In the Processor Selection page, click Next.
  9. In the Printer Driver Selection page, click Windows Update. The driver we need won’t be in the list until you click this button. Internet access is required.
  10. Once Windows Update is complete, highlight HP on the left, and then select HP Color LaserJet 2800 Series PS (Microsoft) on the right. Click Next.
  11. In the Completing the Add Printer Driver Wizard page, click Finish.

SSL for VDA

If you intend to use HTML5 Workspace app internally, install certificates on the VDAs so the WebSockets (and ICA) connection will be encrypted. Internal HTML5 Workspace app will not accept clear text WebSockets. External users don’t have this problem since they are SSL-proxied through Citrix Gateway.

Notes:

  • Each Virtual Delivery Agent needs a machine certificate that matches the machine name. This is feasible for a small number of persistent VDAs. For non-persistent VDAs, you‚Äôll need some automatic means for creating machine certificates every time they reboot.
  • As detailed in the following procedure, use PowerShell on the Delivery Controller to enable SSL for the Delivery Group. This forces SSL for every VDA in the Delivery Group, which means every VDA in the Delivery Group must have SSL certificates installed.

The following instructions for manually enabling SSL on VDA can be found at Configure TLS on a VDA using the PowerShell script at Citrix Docs.

  1. On the VDA machine, run certlm.msc.
  2. Right-click Personal, expand All Tasks, and click Request New Certificate to request a certificate from your internal Certificate Authority. You can use either the Computer template or the Web Server template.

    • You can also use group policy to enable Certificate Auto-Enrollment for the VDA computers.
  3. Browse to the Citrix Virtual Apps and Desktops ISO. In the Support\Tools\SslSupport folder, shift+right-click the Enable-VdaSSL.ps1 script, and click Copy as path.
  4. Run PowerShell as administrator (elevated).
  5. Run the command Set-ExecutionPolicy unrestricted. Enter Y to approve.
  6. In the PowerShell prompt, type in an ampersand (&), and a space.
  7. Right-click the PowerShell prompt to paste in the path copied earlier.
  8. At the end of the path, type in -Enable
  9. If there’s only one certificate on this machine, press Enter.
  10. If there are multiple certificates, then you’ll need to specify the thumbprint of the certificate you want to use. Open the Certificates snap-in, open the properties of the machine certificate you want to use, and copy the Thumbprint from the Details tab.

    In the PowerShell prompt, at the end of the command, enter ‚ÄĎCertificateThumbPrint, add a space, and type quotes (").
    Right-click the PowerShell prompt to paste the thumbprint.
    Type quotes (") at the end of the thumbprint. Then remove all spaces from the thumbprint. The thumbprint needs to be wrapped in quotes.
  11. There are additional switches to specify minimum SSL Version and Cipher Suites. Also see Citrix CTX226049 Disabling Triple DES on the VDA breaks the VDA SSL connection.
  12. Press <Enter> to run the Enable-VdaSSL.ps1 script.
  13. Press <Y> twice to configure the ACLs and Firewall.
  14. You might have to reboot before the settings take effect.
  15. Login to a Controller, and run PowerShell as Administrator (elevated).
  16. Run the command asnp Citrix.*
  17. Enter the command:
    Get-BrokerAccessPolicyRule -DesktopGroupName '<delivery-group-name>' | Set-BrokerAccessPolicyRule ‚ÄĎHdxSslEnabled $true

    where <delivery-group-name> is the name of the Delivery Group containing the VDAs.

  18. You can run Get-BrokerAccessPolicyRule -DesktopGroupName '<delivery-group-name>' to verify that HDX SSL is enabled.
  19. Also run the following command to enable DNS resolution.
    Set-BrokerSite ‚ÄďDnsResolutionEnabled $true

  20. Since the UDP-based EDT protocol is enabled by default, open port UDP 443 to the VDAs.

You should now be able to connect to the VDA using the HTML5 Workspace app from internal machines.

The Citrix blog post How To Secure ICA Connections in XenApp and XenDesktop 7.6 using SSL has a method for automatically provisioning certificates for pooled virtual desktops by enabling certificate auto-enrollment and setting up a task that runs after the certificate has been enrolled.

  • From¬†Russ Hargrove at¬†A note on VDA certificates in 7.14 at Citrix Discussions:¬†Citrix installs a new “Citrix XenApp/XenDesktop HDX Service” certificate in the Personal store which breaks the automation of the Enable-VdaSSL.ps1 script. To fix the problem, modify the task scheduler powershell script to:
    Enable-VdaSSL.ps1 -Enable -CertificateThumbPrint (Get-ChildItem -path cert:\LocalMachine\My | Where-Object -FilterScript {$_.Subject -eq ""} | Select-Object -ExpandProperty Thumbprint) -Confirm:$False
  • For certificate auto-enrollment on non-persistent Remote Desktop Session Hosts (aka Multi-session OS, aka Server OS VDAs), see Non-Persistent Server SSL to VDA by Alfredo Magallon Arbizu at CUGC.

Anonymous Accounts

If you intend to publish apps anonymously then follow this section.

  1. Anonymous accounts are created locally on the VDAs. When VDA creates Anon accounts, it gives them an idle time as specified at HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Citrix\AnonymousUserIdleTime. The default is 10 minutes. Adjust as desired.
  2. Pre-create the Anon accounts on the VDA by running "C:\Program Files\Citrix\ICAConfigTool\CreateAnonymousUsersApp.exe". If you don‚Äôt run this tool, then anonymous users can’t login.
  3. You can see the local Anon accounts by opening Computer Management, expanding System Tools, expanding Local Users and Groups and clicking Users.
  4. If you want profiles for anonymous users to delete at logoff, then you’ll need to add the local Anon users to the local Guests group.
  5. If you open one of the accounts, on the Sessions tab, notice that idle timeout defaults to 10 minutes. Feel free to change it.

Group Policy for Anonymous Users

Since Anonymous users are local accounts on each Virtual Delivery Agent, domain-based GPOs will not apply. To work around this limitation, you’ll need to edit the local group policy on each Virtual Delivery Agent.

  1. On the Virtual Delivery Agent, run mmc.exe.
  2. Open the File menu, and click Add/Remove Snap-in.
  3. Highlight Group Policy Object Editor, and click Add to move it to the right.
  4. In the Welcome to the Group Policy Wizard page, click Browse.
  5. On the Users tab, select Non-Administrators.
  6. Click Finish.
  7. Now you can configure group policy to lock down sessions for anonymous users. Since this is a local group policy, you’ll need to repeat the group policy configuration on every Virtual Delivery Agent image. Also, Group Policy Preferences is not available in local group policy.

Antivirus

Install antivirus using your normal procedure. Instructions vary for each Antivirus product.

Microsoft’s virus scanning recommendations (e.g. exclude group policy files) Рhttp://support.microsoft.com/kb/822158.

Citrix’s Recommended Antivirus Exclusions

Citrix Tech Zone Endpoint Security and Antivirus Best Practices: provides guidelines for configuring antivirus software in Citrix Virtual Apps and Desktops environments.

Citrix Blog Post Citrix Recommended Antivirus Exclusions: the goal here is to provide you with a consolidated list of recommended antivirus exclusions for your Citrix virtualization environment focused on the key processes, folders, and files that we have seen cause issues in the field:

  • Set real-time scanning to scan local drives only and not network drives
  • Disable scan on boot
  • Remove any unnecessary antivirus related entries from the Run key
  • Exclude the pagefile(s) from being scanned
  • Exclude Windows event logs from being scanned
  • Exclude IIS log files from being scanned

See the Blog Post for exclusions for each Citrix component/product including: StoreFront, VDA, Controller, and Citrix Provisioning. The Blog Post also has links to additional KB articles on antivirus.

Symantec

Symantec links:

Trend Micro

Trend Micro Slow login on Citrix environment after installing OfficeScan (OSCE): The following registries can be used to troubleshoot the issue. These registries will allow a delay on the startup procedure of OSCE until the system has launched successfully. This avoids deadlock situations during login.

Citrix¬†CTX136680 –¬†Slow Server Performance After Trend Micro Installation. Citrix session hosts experience slow response and performance more noticeable while users try to log in to the servers. At some point the performance of the servers is affected, resulting in issues with users logging on and requiring the server to be restarted. This issue is more noticeable on mid to large session host infrastructures.

Trend Micro has provided a registry fix for this type of issue. Create the following registry on all the affected servers. Add new DWORD Value as:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TmFilterParameters] “DisableCtProcCheck”=dword:00000001

Trend Micro Links:

Sophos

CTX238012 Logon process to VDAs is extremely slow when Citrix UPM is enabled. Set the following registry:

  • HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Sophos\SavService\Application
    • DisableAsyncScans (DWORD) = 1

Sophos Endpoint Security and Control: Best Practice for running Sophos on virtual systems:¬†we’ve amassed the following practical information about how you can optimize our software to work with this technology.

Sophos Endpoint Security and Control: Installation and configuration considerations for Sophos Anti-Virus on a Remote Desktop Services server: It maybe desirable to disable the Sophos AutoUpdate shield icon

Sophos Endpoint Security and Control: How to include current version of Sophos in a disk image for cloned virtual machines: This procedure will make sure that the produced target/cloned computers:

  • Get their distinct identity with Enterprise Console, under which they can be subsequently managed.
  • Have the desired version of Sophos Anti-Virus already installed and configured on the created image.

Palo Alto Traps

  • Install Traps Agent for Windows:
    • Virtual desktop infrastructure (VDI) installation‚ÄĒIntended for non-persistent endpoints that replicate (also referred to as spawn) from a golden image which has Traps installed.
    • Temporary session‚ÄĒIntended for either physical or virtual endpoints (such as a Remote Desktop Server) that repeatedly revert to a snapshot (or image) on which Traps is not installed.

Windows Defender Antivirus

Configuring Microsoft Defender Antivirus for non-persistent VDI machines – Microsoft Blog

Deployment guide for Windows Defender Antivirus in a virtual desktop infrastructure (VDI) environment – Microsoft Docs

Onboarding and servicing non-persistent VDI machines with Microsoft Defender ATP

Cylance

CTX232722 Unable to launch application with Cylance Memory Protection Enabled. Cylance must be run in compatibility mode in order to the VDA and Cylance to run on the same machine. See the article for detailed instructions.

Optimize Performance

VDA Optimizer

Installation of the VDA might have already done this, but there’s no harm in doing it again. This tool is only available if you installed VDA in Master Image mode.

  1. On the master VDA, go to C:\Program Files\Citrix\PvsVm\TargetOSOptimizer, and run TargetOSOptimizer.exe.
  2. Then click OK. Notice that it disables Windows Update.
  3. See CTX125874 How to Optimize XenDesktop Machines for the list of registry values changed by the TargetOSOptimizer tool. You can use Group Policy Preferences to set these values.

Windows 10 / Windows 2016 / Windows 2019 and newer

Download Citrix Optimizer and run it.

Citrix Daniel Feller links:

James Rankin Improving Windows 10 logon time:

David Wilkinson links:

Citrix Links:

Microsoft links:

Optimization Notes:

Seal and Shut Down

If this VDA will be a master image in a Machine Creation Services or Citrix Provisioning catalog, after the master is fully prepared (including applications), do the following:

  1. Go to the properties of the C: drive, and run Disk Cleanup.
  2. If Disk Cleanup is missing, you can run cleanmgr.exe instead.
  3. Windows 10 1703 and newer has a new method for cleaning up temporary files.
    1. Right-click the Start button, and click System.
    2. Click Storage on the left, and click This PC (C:) on the right.
    3. Click Temporary Files.
    4. Check boxes, and click Remove files.
  4. On the Tools tab of the local C: drive Properties, click Optimize to defrag the drive.
    `
  5. Run slmgr.vbs /dlv and make sure it is licensed with KMS and has at least one rearm remaining. It is not necessary to manually rearm licensing since MCS will do it automatically.
  6. Run Delprof2 to clean up local profiles. Get it from http://helgeklein.com/download/.
  7. Machine Creation Services and Citrix Provisioning require DHCP.
  8. Session hosts (RDSH) commonly have DHCP reservations.
  9. Base Image Script Framework (BIS-F) automates many sealing tasks. The script is configurable using Group Policy.
  10. Shut down the master image. You can now use Studio (Machine Creation Services) or Citrix Provisioning to create a catalog of linked clones.

Troubleshooting – Graphics

For Citrix Policies that control graphics codecs, see https://www.carlstalhood.com/citrix-policy-settings/#graphics

Citrix Blog post – Optimising the performance of HDX 3D Pro ‚Äď Lessons from the field

From Citrix Discussions: To exclude applications from Citrix 3D rendering, create a REG_DWORD registry value ‚Äúapp.exe‚ÄĚ with value 0 or a registry value ‚Äú*‚ÄĚ with value 0.

  • Both x86 and x64:
    • reg add hklm\software\citrix\vd3d\compatibility /v * /t REG_DWORD /f /d 0

Wildcards are not supported. The asterisk * here has a special meaning ‚Äúall apps‚ÄĚ but is not a traditional wildcard. To blacklist multiple apps e.g. both appa.exe and appb.exe must be done by creating a registry value for each app individually.

This is most problematic in Remote PC since most physical PCs have GPUs. I recently had to blacklist Internet Explorer to prevent lockup issues when switching back to physical.

Uninstall VDA

Uninstall the VDA from Apps & Features or Programs and Features.

Then see CTX209255 VDA Cleanup Utility.

To run the VDA Cleanup Tool silently:

  1. Execute VDACleanupUtility.exe /silent /noreboot to suppress reboot.
  2. Once the VDACleanupUtility has finished executing, setup Auto logon for the current user.
  3. Reboot.
  4. After reboot, tool will launch automatically to continue Cleanup.

Another option is to delete CitrixVdaCleanup value under HKLM\Software\Microsoft\Windows\CurrentVersion\RunOnce. Then after reboot, run¬†VDACleanupUtility.exe /silent /reboot to indicate that it’s running after the reboot.

Related Pages

51 thoughts on “Citrix Virtual Delivery Agent (VDA) 2009”

  1. Hi Carl, CQI no longer seems to work. I can’t install it as I get an error saying it needs VDA 7.6.300 or higher to be installed. I assume they have an issue with detecting the version correctly? Have you been able to get CQI installed with VDA 2009?

      1. Interesting – I can’t install it on Windows 10 2004 with VDA 2009.
        VDA is installed and works fine. Anyway, thanks for checking.

  2. Hi Carl,
    in the EDT MTU discovery section, the registry key should be:
    Key = HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\Wds\icawd

    (and not …\icaw)

    Thank you,
    bye
    Stefano

  3. Hey Carl,
    I am looking to upgrade our storefronts from 7.15 CU3 to CU6 (only the storefronts for now for mitigation purposes). My thoughts were to just upgrade them one by one, we have 2 primary and 1 secondary, but from what I’m reading it looks like I have to go through this whole ordeal of removing them from the server group one at a time, upgrade, point all traffic to the new group, then remove the others, upgrade them, then add to the group with the one I initially upgraded. Do I still have to do all that even though I’m not moving up major releases?

      1. Sounds good, either way I am taking vm snapshots, haha. Thank you for the info, I’ll try the in-place upgrade first and see how that goes.

  4. With hyper converged infrastructure like nutanix, would you still put the pagefile on a secondary drive? I know you don’t gain anything with MCSIO enabled on Nutanix..

    1. MCSIO generally isn’t needed if you have fast storage. However, it’s beneficial for slower storage, like Azure Standard Storage.

  5. Hi Carl,

    We are running a pooled VDA setup (Latest PVS version) in combination with SSL. We are not using a Netscaler. Connections are made, based on HTML5, so no receiver.

    I’ve ran the enable-vdassl.ps1 script and I can connect to the VDA without a problem over SSL. So everything works. But… after a reboot of the VDA the registry setting for SSL is back to 0. Eventhough the PVS image is in maintenance mode. So I am stuck running the enable-vdassl.ps1 script by hand every time the servers reboot. Could it be something in the VDA image, or is this by design?

  6. Hi Carl, Wanted to know when should we use optimizer, before running Imaging Wizard (when machine is still in vMDK format) or in after converting it to image and during preparation of final image(before sealing)

    1. I’m not sure it matters. The Imaging Wizard also has its own optimizer.

      Some would say to run Optmizer before every seal (e.g. BIS-F).

  7. Hey Carl, we have an issue when we enabled HDX Adaptive transport. We have Citrix policies that are based on client IP’s subnet. When we enable UDP, the client IP address is their public IP instead of their local LAN IP. Therefore the policies aren’t applied. If I disable UDP/HDX EDT then I get my policies without a problem. What could be the issue? Thanks!

  8. Carl,

    Have you heard of anyone else have issues with trying to convert a Windows 10 1909 into PVS? We had some problems with our domain trying to use the Citrix Imaging Wizard. It looks like Windows 10 1909 Network Discovery and File & Print Sharing are turned off by default even when joining a domain causing us issues with the image being able to join our domain.

  9. Hello Carl,

    I am trying to figure out how to create an SCCM unattended job to install VDA Agent 1909 .

    I created a job using following command, it does initiates the install but does not finishes until i login to the client machine and then it reboots and i have to login again and it reboot again so that it can finish the installation .

    VDAWorkstationSetup_1909.exe quiet /components VDA /virtualmachine /enable_hdx_ports /enable_hdx_udp_ports /exclude “Citrix Personalization for App-V – VDA”,”Machine Identity Service”,”Citrix User Profile Manager”,”Personal vDisk”,‚ÄúAppDisks VDA Plug-in‚ÄĚ,‚ÄúCitrix Files for Windows‚ÄĚ,‚ÄúCitrix Files for Outlook‚ÄĚ

    I even tried adding no reboot witch , but that makes things worse . Setup stuck in install process and never Finnish , looks like waiting for reboot to proceed further but doesn’t as command specifies not to reboot

    VDAWorkstationSetup_1909.exe /noreboot /quiet /components VDA /virtualmachine /enable_hdx_ports /enable_hdx_udp_ports /exclude “Citrix Personalization for App-V – VDA”,”Machine Identity Service”,”Citrix User Profile Manager”,”Personal vDisk”,‚ÄúAppDisks VDA Plug-in‚ÄĚ,‚ÄúCitrix Files for Windows‚ÄĚ,‚ÄúCitrix Files for Outlook‚ÄĚ

    And Does the client have to have .net 4.5.x or any version above 4.5 will work too.

  10. Dear Carl
    Upon installing a MCS golden image with FSLogix support for both profiles and doing a metric ton of improvements and gpo and other configuration I encountered a problem with MSRA.exe via Director. While googling for a solution I came across your blog and to my pleasant surprise your plan of steps was unintentionally followed to the teeth. (except several optional extras at the end). CVAD 1906.2 is used for server OS. Options checked as within your guide.

    However, when I try to shadow a user session I receive the remote assist file from director but it is unable to start the shadowing.

    The output of the errormessage is as follows:

    Windows Remote Assistance: msra.exe – Bad Image
    —————————
    C:\Program Files\Citrix\ICAService\PicaDdApi64.dll is either not designed to run on Windows or it contains an error. Try installing the program again using the original installation media or contact your system administrator or the software vendor for support. Error status 0xc0000428.

    I’m trying to shadow the session from within a VDI with windows 10 1909. The VDI itself running on the same citrix farm in a different delivery group and has 1906.2 running due to problem with the licensing version when combining the 1909 with XenApp 6.5 (unrelated pain in the butt issue).

    Any previous experience ringing a bell here?
    Something obvious I am missing?
    Other information you need me to look up and provide?

  11. Carl,

    Whats your thoughts on whether the My Doc’s/Download folders should be redirected if using FSLogix Profile containers?

    Thanks

    1. Redirected folders can be accessed by multiple concurrent sessions, whereas FSLogix Profile Containers usually don’t allow concurrent access. Also, UNC shares might be more reliable than VHDX files.

  12. Hi Carl,

    I am trying to register VDA installed system with Citrix controller. but i am getting below error in Event Viewer. Due to this i am unable to create delivery group in Studio.

    The Citrix desktop service was refused a connection to the delivery controller ”.
    This registration was refused due to ‘SingleMultiSessionMismatch’

    Could you please advise on this?

    1. When you create a Catalog, you can choose Server OS (aka MultiSession) or Desktop OS (Single Session). What kind of VDA (RDSH, or virtual desktop) did you build? Did you add it to the correct Catalog?

      What is your Citrix license?

  13. Hi Carl.

    We use VDA 1903 on W10 LTSC. Latest Windows update. WEM Agent 1903.
    Citrix optimizer 2.5 optimization taked (we use the 1809 template)

    With WEM we map network printers. The assigment of queue and defualt printer are taked with AD groups.
    Mapping of printer queue fail for some printer or changing the AD group not reflected to the queue mapped (es: change of group must change default printer).

    Next some troubleshooting we discover that the only if we run citrix optimizer on the master we get the wem printer problem.
    If we make a clean setup of W10 LTSC without running citrix optimizer, WEM agent map printer allways correctly.
    So some optimization of citrix optimizer 2.5 (1809 template) give problem to the printer mapping of wem agent 1903 on Windows 10.

    PS: on LTSC without runnng the citrix optimizer, fslogix don’t work.

  14. Carl, we recently upgraded to VDA 1903 and we are noticing that the graphics, words, etc are distorted or pixileted and then come into focus in a couple seconds. This occurs every time a new window is open, scrolling down a web page, going back to desktop etc. We’ve tried the latest version of Workspace App 1907 but that doesn’t help. The Delivery Controllers have not been upgraded yet. They’re still on 7.14 but will be updated soon. Any suggestions?

    1. Is Legacy Graphics Mode enabled? It should not be. What other graphics-related Citrix Policies are configured? Newer VDAs have a build to lossless feature.

      1. Thanks for the response Carl. Unfortunately we do not have Legacy Graphics Mode enabled. The only other graphics policies configured besides the default settings are:

        ICA\Graphics\Caching\Image Caching

        ICA\Graphics\Caching\Persistent cache threshold = 1024 Kbps

        However, both policies state that these only apply when Legacy Graphics mode is enabled.

        We just upgraded to 1906 hoping that would help but it hasn’t.

  15. Excellent write-up, once again! You mention, “A common architecture is to enable FSLogix Office Container for the Office cache files and use Citrix Profile Management for all other roaming profile files and registry keys.”

    Can FSLogix be used in parallel with Citrix Profile Management 7.15 LTSR CU3 or 4? What about handling roaming of the Shared Activation License Token? Does FSLogix offer any benefit or improvements here?

  16. Do you have to have a Platinum license to get the User Session Disconnect Hotfix? I get the content is restricted.

    1. You might need Customer Support Services Select. Did you log in with an account that is associated with an organization that has licenses?

  17. Carl,
    When reinstalling the VDA on MCS full clones, would you still select the MCS Master image option even though it is no longer the master image? Is there a breakdown anywhere that explains how the VDA install changes for each of these options? I can’ seem to find it.
    Thanks!

  18. Hi Carl,

    Do you happen to know whether the MCS IO is supported with Azure? I can’t find anything on this subject on a quick Google search at least.

  19. Hey Carl,

    Re: Virtual Machine Hardware: Bullet point 4 : Hypervisor support has been extended and updated to vSphere 6.7 Update 2. Great site, always the best place for the most useful information!

    Many thanks
    Andrew

  20. Again good article.

    Regarding slow logon. I have found that disabling cortana on server 2016 through GPO has improved our logon time by 6-8 seconds.

  21. Hi Carl,

    after Upgrading from VDA 7.17 to VDA 1903 my VDisks arent booting in Standard Mode. The Boot process is stuck right after the Vdisk Name is shown.

    1. I am receiving the same symptom when updating the VDA from 7.15 LTSR to 1903 on a Windows Server 2016 RDSH – Maintenance mode works, but the standard mode clones do not. Any ideas would be greatly appreciated!

  22. It looks like VDA 1811 is failing to register with controllers running version 7.15 LTSR. I’m getting the error:

    Exception ‘VDA Functional Level too low for Catalog’

    The Delivery Group and Machine Catalog is set to VDA version 7.6. VDA 1811 is newer but the installed VDA version is displayed as ‘1811.1.0.20099’ (doesn’t begin with a 7.x) so the controller is not able to correctly evaluate that it is a higher version than that. It thinks it is a lower version, and stops it from registering. Very irritating.

    Any workarounds for this?

      1. It’s already in the catalog. The VM was running Windows 10 1803. So before I upgraded it to 1809, I uninstalled the VDA (which was 7.18 at the time), upgraded W10 to 1809 and then installed the latest VDA, which is version 1811. This is the process I’ve followed in the past as sometimes Windows version updates can sometimes fail if the VDA is already installed.

        At that point, it refused to register with the controllers. Upon digging, I found that error message in the System event log of the Windows 10 machine. The controllers, as I’ve mentioned, are running 7.15 LTSR. Thanks!

        1. If you create a new catalog and add it to that, does it work? New Catalogs have VDA compatibility set to 7.9 instead of 7.6.

  23. Carl,
    I built a new VDI based VDA farm for high-end Nvidia Quadro 4000 and up 3D graphics use and have some learnings to give you to add for users. Email me and i will send you the details to add.

Leave a Reply to Jakubp Cancel reply