VMware Horizon 7.13.3 – Master Virtual Desktop

Last Modified: Mar 22, 2023 @ 6:00 am


Use this post to build a virtual desktop that will be used as the parent image or source image for additional virtual desktops. There’s a separate article for RDS Session Host.

This post applies to all VMware Horizon 7 versions including 7.13.3 (ESB).

💡 = Recently Updated

Change Log

Virtual Hardware

Lieven D’hoore has a desktop VM build checklist at VMware Horizon View – Windows 10 Golden Image Creation

  1. The virtual desktop pools will use the same hardware specs (e.g. vCPUs, memory size, network label) specified on the master virtual desktop. Adjust accordingly.
  2. For New Hard disk, consider setting Thin provision.
  3. Make sure the virtual desktop is using a SCSI controller.
  4. The master virtual desktop should be configured with a VMXNET 3 network adapter.
  5. When building the master virtual desktop, you will probably boot from an ISO.
  6. Before using View Administrator to create a pool, ensure the CD/DVD drive points to Client Device and is not Connected. The important part is to make sure ISO file is not configured.
  7. There’s no need for the Floppy drive so remove it.
  8. If you have any Serial ports, remove them.
  9. In Device Manager, after installing VMware Tools, make sure the video driver is VMware SVGA 3D.
  10. If not, you can use the driver at C:\Program Files\Common Files\VMware\Drivers\video_wddm.


VMware TechZone Creating an Optimized Windows Image for a VMware Horizon Virtual Desktop


Windows 7 VMXNET 3 Networking Hotfix

For Windows 7 machines:

  1. Ensure the vSphere network port group allows a sufficient number of connected virtual machines.
  2. Make sure Windows 7 Service Pack 1 is installed.
  3. The recommended hotfix for fixing VMXNET 3 is the 3125574 Convenience Rollup.

    1. Run windows6.1-kb3125574-v4-x64.msi.
  4. Or, the minimum hotfix is 2550978 http://support.microsoft.com/kb/2550978.

    1. Run Windows6-1-KB2550978.msu.
  5. Click Yes when asked to install the hotfix.
  6. Click Restart Now.
  7. After installing either hotfix, follow http://support.microsoft.com/kb/315539 to delete ghost NICs.

From Microsoft KB article http://support.microsoft.com/kb/235257: For desktop VMs using VMXnet3 NICs, you can significantly improve the peak video playback performance of your View desktop by simply setting the following registry setting to the value recommended by Microsoft:

  • HKLM\System\CurrentControlSet\Services\Afd\Parameters\FastSendDatagramThreshold to 1500

Windows 7 Black Screen Hotfix

For Windows 7 machines, request and install Microsoft hotfix 2578159: The logon process stops responding in Windows. More info at VMware 2073945 Reconnecting to the VDI desktop with PCoIP displays a black screen.

Windows 7 SHA2 Hotfix

For Windows 7 machines, install Microsoft Security Advisory 3033929, Availability of SHA-2 Code Signing Support for Windows 7 and Windows Server 2008 R2.

Windows 7 Hotfix for AppVolumes

For Windows 7 machines, install the Microsoft hotfix for mountmgr.sys.  More info at VMware 2126775 Logging in to a virtual machine fails or is slow at the Welcome Screen when using VMware AppVolumes,

Power Options

  1. Run Power Options. In Windows 8 and newer, right-click the Start Menu to access Power Options.
  2. Click the arrow to show more plans, and select High performance.
  3. Next to High performance, click Change plan settings.
  4. Change the selection for Turn off the display to Never, and click Save changes.

System Settings

  1. Domain Join. For linked clones, join the machine to the domain. For Instant Clones, see VMware 2150495 Computer-based Global Policy Objects (GPOs) that require reboot are not applied on instant clones.
  2. In System control panel applet (right-click the Start Menu > System), click Remote settings.
  3. Enable Remote Desktop.
  4. Activate Windows with a KMS license if not already activated. Note: only KMS is supported with View Composer.

Windows Profiles v3/v4 Hotfix

Roaming user profiles are tied to the operating system version so profiles on Windows 8.1-based, Windows 10-based, or Windows Server 2012 R2-based computers are incompatible with roaming user profiles in earlier versions of Windows.

Profiles are compatible only between the following client and server operating system pairs:

  • v6 = Windows 10 1607 and newer, Windows Server 2016, Windows Server 2019
  • v5 = Windows 10 1511 and older
  • v4 = Windows 8.1 and Windows Server 2012 R2
  • v3 = Windows 8 and Windows Server 2012
  • v2 = Windows 7 and Windows Server 2008 R2

If Windows 8, install hotfix http://support.microsoft.com/kb/2887239.

If Windows 8.1, ensure update rollup 2887595 is installed. http://support.microsoft.com/kb/2890783

After you apply this update, you must create a registry key before you restart the computer.

  1. Run regedit.
  2. Locate and then tap or click the following registry subkey:
  3. On the Edit menu, point to New, and then tap or click DWORD Value.
  4. Type UseProfilePathExtensionVersion.
  5. Press and hold or right-click UseProfilePathExtensionVersion, and then tap or click Modify.
  6. In the Value data box, type 1, and then tap or click OK.
  7. Exit Registry Editor.

After you configure the UseProfilePathExtensionVersion registry entry, you have to restart the computer. Then, Windows 8.1 creates a user profile and appends the suffix “.v4” to the profile folder name to differentiate it from version 2 of the profile in Windows 7 and version 3 of the profile in Windows 8. Then, Windows 8.1-based computers that have update rollup 2887595 installed and the UseProfilePathExtensionVersion registry entry configured use version 4 of the profile.

Windows 8 creates a new copy of the user profile and appends the suffix “.v3” in the profile folder name to differentiate it from the original version 2 profile for Windows 7. After that, Windows 8-based computers that have this hotfix installed and the UseProfilePathExtensionVersion registry entry configured use the version 3 profile for users.

Install Applications

Install applications locally if you want them to be available on all virtual desktops created based on this master virtual desktop.

Or you can use a Layering product (e.g. VMware App Volumes, Unidesk) or App Streaming (e.g. ThinApp, Microsoft App-V).


VMware Tech Paper Antivirus Considerations for VMware Horizon 7 contains exclusions for Horizon View, App Volumes, User Environment Manager, ThinApp, etc.

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

Carbon Black

Interoperability of VMware Carbon Black and Horizon (79180)


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 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


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.

Horizon Agent

Horizon Agent Installation/Upgrade

Install Horizon Agent on the master virtual desktop. Upgrades are performed in-place.

  1. See VMware 2149393 Supported versions of Windows 10 on Horizon Agent.
    1. Windows 10 version 1903 is supported by Horizon Agent 7.8 and newer.
    2. Windows 10 version 1809 is supported by Horizon Agents 7.5.1 and newer.
  2. VMware Tools – Only install Horizon Agent after you install VMware Tools.
    1. If you need to update VMware Tools, uninstall Horizon Agent, upgrade VMware Tools, and then reinstall Horizon Agent.
    2. See VMware Product Interoperability Matrices for supported versions of VMware Tools with different versions of Horizon Agent.
    3. If VMware Tools 11.x, VMware recommends running the following: (source = VMware 78434 Performance issues for Horizon 7 when using VMware VMTools 11.x)
      C:\Program Files\VMware\VMware Tools\VMwareToolboxCmd.exe" config set appinfo disabled true
  3. Check the video driver to make sure it is VMware SVGA 3D.
  4. Download Horizon 7.13.3 Agent.
  5. Run the downloaded VMware-Horizon-Agent-x86_64-7.13.3.exe.
  6. If you want the URL Content Redirection feature, then you must run the Agent installer with the the following switches: /v URL_FILTERING_ENABLED=1
  7. In the Welcome to the Installation Wizard for VMware Horizon Agent page, click Next.
  8. In the License Agreement page, select I accept the terms, and click Next.
  9. In the Network protocol configuration page, select IPv4, and click Next.
  10. In the Custom Setup page, there are several features not enabled by default. Feel free to enable them.
    1. If you want USB Redirection, then enable that feature.
    2. Horizon 7.2 and newer have VMware Virtualization Pack for Skype for Business. See Configure Skype for Business at VMware Docs for details.
    3. You can install Instant Clone Agent, or View Composer Agent, but not both.

    4. According to Instant-Clone Desktop Pools at VMware Docs, Persona is not supported with Instant Clones.

    5. If you want Scanner Redirection, then enable that feature. Note: Scanner Redirection will impact host density.
    6. Horizon 7.3 through Horizon 7.9 have HTML5 Multimedia Redirection. In Horizon 7.10 and newer, HTML5 Browser Redirection seems to be installed automatically. To enable and configure these features, see HTML5 Redirection in Horizon Group Policy.
    7. Horizon 7.6 and newer have an option for Geolocation Redirection. The feature requires a plugin for Internet Explorer 11 and Horizon Client 4.9. No other browsers are supported. See Configuring Geolocation Redirection at VMware Docs.
    8. Horizon 7.5 and newer have Horizon Performance Tracker, which adds a program to the Agent that can show the user performance of the remote session. You can publish the Tracker.

    9. Horizon 7.7 and newer have a VMware Integrated Printing or VMware Advanced Printing option, which replaces the older ThinPrint technology. VMware Integrated Printing requires Horizon Client 4.10 or newer.
    10. If you enable VMware Integrated Printing, then you must disable Virtual Printing, which is higher in the list.

  11. Click Next when done making selections.
  12. In the Ready to Install the Program page, click Install.
  13. In the Installer Completed page, click Finish.
  14. Click Yes when asked to restart.
  15. Horizon Agent 7.13 and newer let you Modify the features that were selected during installation. In older versions, you must uninstall Horizon Agent and reinstall it.
    • If you click Modify from Apps & features (or Programs and Features), it will tell you to open an elevated command prompt and run the command shown in the window.
    • You can’t change from Manual to Instant Clone or back again using this method.
  16. If you want to know what features were selected during installation, look in HKLM\Software\VMware, Inc.\Installer\Features_HorizonAgent. Or look in the installation log files as detailed at Paul Grevink View Agent, what is installed?

  17. For Horizon Persona (not with Instant Clones), enable the Microsoft Software Shadow Copy Provider service. See Windows 10 with Persona management not syncing at VMware Communities.
  18. If Windows 10 version 1709 with View Composer, you might have to delete HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\BFE\Security. See VMware 51518 Production Support for VMware Horizon 7.4, 7.3.2, and 7.2 with Win 10 1709 Semi-Annual Channel (SAC) Guest OS
  19. To verify installation of the URL Content Redirection feature, check for the presence of C:\Program Files\VMware\VMware View\Agent\bin\UrlRedirection.
  20. There’s also a new IE add-on.
  21. URL Content Redirection is configured using group policy.

Install/Upgrade Dynamic Environment Manager (DEM) Agent

Dynamic Environment Manager (DEM) is the new name for User Environment Manager (UEM).

If you are licensed for Dynamic Environment Manager (Horizon Enterprise Edition), install the Dynamic Environment Manager (DEM) Enterprise Agent.

  • DEM Enterprise has the same or more features that has always been included in Horizon Enterprise. DEM Standard is a reduced-feature version for Horizon 8 Standard Edition.
  • Note: UEM 9.1 and newer can also work without Active Directory (Group Policy); see VMware 2148324 Configuring advanced UEM settings in NoAD mode for details.

DEM 2006 and newer Agents (FlexEngines) require additional configuration to enable DEM Computer Settings. You can either configure registry settings on each DEM Agent machine, or in DEM Agent 2103 and newer you can use an installer command-line switch. Both are detailed at Perform Installation with Computer Environment Settings Support at VMware Docs.

  • Group Policy Preferences can push these registry keys to the Horizon Agent machines. Or you can manually modify the registry in your master images. The minimum registry values are Enabled and ConfigFilePath as detailed at Perform Installation with Computer Environment Settings Support at VMware Docs. For the list of additional registry values, see FlexEngine Configuration for Computer Environment Settings at VMware Docs.
  • Command line install looks something like below. The command line installer switch sets the same ConfigFilePath and Enabled registry values as shown above.
    msiexec /i "\fs01\bin\VMware\DEM\VMware-DEM-Enterprise-2212-10.8-GA\VMware Dynamic Environment Manager Enterprise 2106 10.3 x64.msi" /qn COMPENVCONFIGFILEPATH=\\fs01\DEMConfig\general

To install DEM Agent:

  1. Windows 10 Compatibility – See VMware 57386 VMware Dynamic Environment Manager and Windows 10 Versions Support Matrix
  2. Make sure Prevent access to registry editing tools is not enabled in any GPO since this setting prevents the FlexEngine from operating properly.
  3. Based on your entitlement, download either DEM 2212 (10.8) Enterprise Edition, or DEM 2212 (10.8) Standard Edition. For ESB Horizon, download the DEM version included with your ESB version of Horizon.

  4. Run the extracted VMware Dynamic Environment Manager Enterprise 2212 10.8 x64.msi.
  5. In the Welcome to the VMware Dynamic Environment Manager Enterprise Setup Wizard page, click Next.
  6. In the End-User License Agreement page, check the box next to I accept the terms, and click Next.
  7. In the Destination Folder page, click Next.
  8. The Choose Setup Type page appears. By default, the installer only installs the engine. You can click Custom or Complete to also install the Management Console. The Management Console is typically installed on an administrator workstation, not on a master image.

  9. In the Choose License File page, if installing on a Horizon Agent, then no license file is needed. Click Next.
  10. In the Ready to install VMware Dynamic Environment Manager Enterprise page, click Install.
  11. In the Completed the VMware Dynamic Environment Manager Enterprise Setup Wizard page, click Finish.
  12. If you have PCoIP Zero Clients that map USB devices (e.g. USB drives), then you might have to set the following registry value. (Source = VMware 2151440 Smart card SSO fails when you use User Environment Manager with a zero client)
    • HKLM\Software\VMware, Inc.\VMware VDM\Agent\USB
      • UemFlags (DWORD) = 1

Unity Touch

With the Unity Touch feature, tablet and smart phone users can quickly navigate to a Horizon View desktop application or file from a Unity Touch sidebar. Although end users can specify which favorite applications appear in the sidebar, for added convenience, administrators can configure a default list of favorite applications.

In the Unity Touch sidebar, the favorite applications and favorite files that users specify are stored in the user’s profile. For non-persistent pools, enable Roaming Profiles.

To set the default list of favorite applications:

  1. Navigate to HKLM\Software\Wow6432Node\VMware, Inc.\VMware Unity
  2. Create a string value called FavAppList.
  3. Specify the default favorite applications using format: path-to-app-1|path-to-app-2|path-to-app-3|…. For example:
Programs/Accessories/Accessibility/Speech Recognition.lnk|Programs/VMware/VMware vSphere Client.lnk|Programs/Microsoft Office/Microsoft Office 2010 Tools/Microsoft Office 2010 Language Preferences.lnk

Unity Touch can be disabled by setting HKEY_LOCAL_MACHINE\Software\VMware,Inc.\VMware Unity\enabled to 0.

For more information, see Configure Favorite Applications Displayed by Unity Touch at VMware Docs.

Composer – Rearm

By default, when View Composer creates linked clones and runs QuikPrep, one of the tasks is to rearm licensing. You can prevent rearm by setting the following registry key:

  • HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\vmware-viewcomposer-ga
    • SkipLicenseActivation  (DWORD) = 0x1

Dynamic PCoIP Policies

If you wish to change PCoIP Policies (e.g. clipboard redirection, client printers, etc.) based on how the user connects, see VMware Blog Post VMware Horizon View Secret Weapon. The article describes configuring VMware Horizon View Script Host service to run a script to change PCoIP configuration based on the Connection Server that the user connected through. Full script is included in the article.

Microsoft FSLogix

Why FSLogix?

Microsoft FSLogix has two major features:

  • Profile Container is an alternative to VMware DEM Personalization.
  • App Masking is an alternative to VMware App Volumes.

DEM has three categories of features: Personalization, User Settings, and Computer Settings. FSLogix Profile Container only replaces the Personalization feature set. You typically do FSLogix Profile Container for profiles and use DEM for User Settings and Computer Settings. Here are some advantages of DEM Profile Container over DEM Personalization:

  • FSLogix Profile Container saves the entire profile but DEM Personalization requires you to specify each setting location that you want to save. FSLogix is “set and forget” while DEM Personalization requires tweaking for each application.
  • At logon, DEM Personalization must download and unzip each application’s profile settings, which takes time. FSLogix simply mounts the user’s profile disk, which is faster than DEM Personalization.
  • FSLogix Profile Container has special support for roaming caches and search indexes produced by Microsoft Office products (e.g. Outlook .ost file).
  • FSLogix is owned, developed and supported by Microsoft.

Here are some FSLogix Challenges as compared to DEM Personalization:

  • FSLogix Profile disk consumes significant disk space. The default maximum size for a FSLogix profile disk is 30 GB per user.
  • High Availability for FSLogix Profile disks file share is challenging. The file server High Availability capability must be able to handle .vhdx files that are always open. DFS Replication is not an acceptable HA solution. One option is Microsoft Scale Out File Server (SOFS) cluster. Another option is Nutanix Files.

VMware App Volumes has some drawbacks, including the following:

  • Completely separate infrastructure that must be built, maintained, and troubleshooted.
  • Introduces delays during logon as AppStacks are mounted.
  • AppStacks can sometimes conflict with the base image or other AppStacks.

An alternative approach is to install all apps on the base image and use FSLogix App Masking to hide unauthorized apps from unauthorized users. No delays during logon.

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.

FSLogix Installation

Do the following to install Microsoft FSLogix on the Horizon Agent 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.

VMware OS Optimization Tool

  1. See VMware Windows Operating System Optimization Tool Guide for details on this tool.
  2. Download the VMware OS Optimization Tool VMware fling.
  3. Run the extracted VMwareOSOptimizationTool.exe.
  4. On the Optimize tab, choose a template.
  5. Then click Analyze on the bottom of the window.
  6. On the Optimize tab, review the optimizations, and make changes as desired. Then on the bottom left, click Optimize.
  7. The History tab lets you rollback the optimizations.
  8. The Finalize tab contains tasks that should be run every time you seal your master image.

Additional Optimizations

Additional Windows 10 Optimizations

Additional Windows 7 Optimizations

Microsoft has compiled a list of links to various optimization guides.

It’s a common practice to optimize a Windows 7 virtual machine (VM) template (or image) specifically for VDI use. Usually such customizations include the following.

  • Minimize the footprint, e.g. disable some features and services that are not required when the OS is used in “stateless” or “non-persistent” fashion. This is especially true for disk-intensive workloads since disk I/O is a common bottleneck for VDI deployment. (Especially if there are multiple VMs with the same I/O patterns that are timely aligned).
  • Lock down user interface (e.g. optimize for specific task workers).

With that said the certain practices are quite debatable and vary between actual real-world deployments. Exact choices whether to disable this or that particular component depend on customer requirements and VDI usage patterns. E.g. in personalized virtual desktop scenario there’s much less things to disable since the machine is not completely “stateless”. Some customers rely heavily on particular UI functions and other can relatively easily trade them off for the sake of performance or standardization (thus enhance supportability and potentially security). This is one of the primary reasons why Microsoft doesn’t publish any “VDI Tuning” guide officially.

Though there are a number of such papers and even tools published either by the community or third parties. This Wiki page is aimed to serve as a consolidated and comprehensive list of such resources.

Daniel Ruiz XenDesktop Windows 7 Optimization and GPO’s Settings

Microsoft Whitepaper Performance Optimization Guidelines for Windows 7 Desktop Virtualization


  1. Make sure the master virtual desktop is configured for DHCP.
  2. If connected to the console, run ipconfig /release.
  3. Run antivirus sealing tasks:
  4. Base Image Script Framework (BIS-F) automates many image sealing tasks. The script is configurable using Group Policy.
  5. Shutdown the master virtual desktop.
  6. Edit the Settings of the master virtual machine and disconnect the CD-ROM. Make sure no ISO is configured in the virtual machine.
  7. Take a snapshot of the master virtual desktop. View Composer requires a snapshot.

Related Pages

154 thoughts on “VMware Horizon 7.13.3 – Master Virtual Desktop”

  1. Hi Carl, a quick question regarding Appvolume Agent and Imprivata OneSign.

    In which order should I install it ?
    I agree to do it last (after View Agent, and DEM agent), but should I install OneSign first, and finalize with AppVolume ? Or the opposite ?

    KB https://kb.vmware.com/s/article/2118048 says :
    The App Volumes Agent will virtualise the root of the C drive and most registry keys. Therefore, before installing updates or new software, you should uninstall the App Volumes Agent and reboot the VM.

    If I interpret correctly, Appvolume must be installed last. And when you need to update the image, first remove Appvolume, do the update stuff, and install back Appvolume.

    What’s your experience ? So far with our Win7 image, I never uninstalled Appvolume before updating the image…

    1. For normal master image updates, just make sure you don’t have any AppStacks or Writable Volumes attached. Login as somebody that doesn’t have any volume assignments. Then you shouldn’t need to uninstall the agent.

  2. Hi Carl
    I have created golden image as per your instructions. Made one endpoint image from the same. But from thin client I am unable to connect to horizon desktop pool image. It says “The view agent reports that this desktop source is unable to accept connections. Please contact your system administrator”. I could see the desktop pool in the thin client. Any suggestions will be highly appreciated.

      1. We are having the same issue. We have many free desktops that say Available. Users just started reporting this. Can’t think of anything that’s changed.

      2. Hello, I have 1 manual desktop pool, with 1 dedicated assignment and the assigned user keeps getting the following error: “The view agent reports that this desktop is unable to accept connections…” I assigned myself to that dedicated desktop and was able to connect with no issue and I tested a different user and it worked, but when I placed the original user back to that desktop, I get the same error. Any ideas?

  3. Hi Carl,
    After I ran OSOT in win 10 master image it removed Calculator and some other apps. I am able to get them back but when published in desktop pools they disappeared again even though present in the master image. Have you ever encountered this ? If yes then can you please suggest something that might fix it ? Thanks.

    1. Store apps don’t work very well in non-persistent. The app you installed was probably only for you and nobody else.

      I usually install Old Calculator, enable old Photo Viewer, etc. and skip the store apps.

      1. Thanks Carl. btw which old calculator you usually install on Non-persistant VDI and where do you get it from ? Thanks.

  4. Hi Carl, After I ran OS Optimization tool in windows 10 1909 Internet explorer in not able to open some websites. Are there any settings that I need to check ? All pages are opening correctly on same windows version in persistant pool. Thanks.

  5. Hellow Carl ,I have a problem, I implemented horizon 7.12, now I’m trying to create pools linked clones, and the virtual machines are in the status of customize and it doesn’t come out after a while that it was not possible to communicate with connection servers, there I did the procedure to remove the security key, but it didn’t work, I’m using Windows 10 1909, would you have any suggestions.

    1. Are they connected to the correct port group? Do they get a DHCP address? If you login to the machine, go to C:\Programdata\VMware\VDM\logs and there are debug logs that can show you the problem with customization.

  6. Hey Carl,
    You referenced Lieven’s website for the virtual hardware link. Should all of the settings listed on his page be applied in addition to yours or just the virtual hardware portion?

      1. There is no “one-size-fits-all” procedure. Read the guides, understand what they are saying, and then make your own judgement based on your requirements. You usually pick and choose from multiple guides.

  7. Hi Carl,

    Have you had this issue with corrupt ntuser.dat files after users log out of a desktop session?
    I have found this to be more common when the Horizon agent has been updated and in the past few days it has happened for no reason, with no updates or settings being made.

    Do you have any ideas, what could be the reason and how it could be solved?

    According to VMware the Horizon agent 7.12 is supported with our Windows 10 version (1809 LTSC), but according to your post (part Profiles v6) is our Windows 10 version not listed. Maybe does it seem to be the reason or is it just not up to date?


    1. Are you using Persona? 7.12 has several Persona fixes so I’m guessing they re-introduced Win10 support. I generally prefer FSLogix Profiles over Persona.

      1. Yes, we use Persona. We also thought 7.12 could be the help, but maybe something is missing.
        Unfortunately, I don’t know FXLogix. Is it better than UPD, which has limitations?

          1. Sounds good, I’ll take a closer look and maybe even we can implement it.
            Thanks for your inputs.

  8. Hey Carl, thanks for your great posts!

    I’m having an issue installing Windows updates on an optimized master image and for the life of me can’t recall how to enable it.

  9. Hi Carl,
    I have one query, can we keep static and dynamic persistent vdi under the same pool name for same VLAN ?

    1. Same network name (port group name), yes. But each pool needs unique pool IDs. I’m not sure if the display name can be identical. If you want to combine multiple pools into a single icon, you can use Cloud Pod Architecture but only if the pools are the same type (e.g. both are floating).

  10. For the Windows Horizon Agent, I haven’t been able to find the proper syntax for adding the silent install options for the Horizon Performance Tracker or the Help Desk Plugin. Does anyone know by chance?

  11. Hi Carl,

    I have horizon view 7.5, Vsphere 6.5 and FSLogix.

    I have a windows 10 1709 vdi working OK, but I am not able to get 1903 working.
    I have followed the vmware guide to the gold image and also tried https://www.ituda.com/vmware-horizon-view-windows-10-golden-image-creation/

    The problem I have is that the search just brings up a black box, edge does nothing, cant get to proxy settings. Looks OK, but does not work properly.

    Am I the only one experiencing these problems? Am I doing something wrong?


      1. Thanks for getting back Carl,
        Yes I did run the Optimiser….I thought it may cause issues, so I snapped it before I ran it. If I recompose without running the Optimiser then I cannot connect to the VMs at all.
        Ill have another go..

        1. rolled the image back to before the optimisation and it was exactly the same. Then I decided to delete my test users fslogix disks to clear any profile and office settings. This worked!!
          The only thing that worries me is do I need to reset every user every time a new version of Windows 10 is released?


        2. @Steven I have a VMware Optimizer template I can share that I created and has worked for me on Win 10 1709,1803,1809 and 1903. This is if you are not leveraging mandatory profiles.

  12. When building a new version of a VDI template for an existing pool, that template is not visible using the Horizon HTML5 client (/newadmin/)
    We have found that we need to load the old Flash client (/admin/) in order to see the updated template and select it.

    Is this something you have noticed ?

  13. Hi Carl,
    Just one suggestion.
    If some of us are new to the game and want to follow your blog and the “Creating an Optimized Windows Image for VMware Horizon VIrtual Desktop by VMware” documentation, maybe you should leave the Network to use E1000E first so the desktop can get to the internet and do windows update.
    And then change it to VMXnet3 after the VMware Tools is installed.
    Or they might get confused as to why they can’t get to the internet if they just followed your blog.

    Other than that, I love your blog!
    I’ve been following it for a while now.
    Thank you for what you do to us on the interweb.

  14. Hi Carl,

    Excellent job. I’ve a question for you. I’m trying to deploy a full clone pool. Which type of agent (VMware Horizon View Composer Agent or VMware Horizon Instant Clone Agent) should i install in the base image?

    Thanks in advace

    1. Full Clones don’t use either linked clone method and instead they are the same thing as going to vCenter, right-click the VM, and click Clone. Full Clones also run sysprep in the form of a customization specification.

  15. Hi Carl, one question, we have infrastructure with small amount of VMs that users are connecting via Thin clients, requirement is that all VMs must be powered off before user connect in. Problem is that when i use smartcard, logs to session, VM is obviously not ready and i get error what is expected, BUT! i am looking for solution with something like Delayd start or something like that, i was looking for some Thin Client for solution but no still no success. Thank you

  16. Hi Carl,
    We currently have windows 7 environment setup and we are using instant clones with UEM Profiles. Now we are planning to migrate to Windows 10 soon. I created new GPO for Windows 10 Computers OU with UEM Configs and User profiles settings and pointed them to new file shares created exclusively for Windows 10. I also configured 2 environments in UEM one for win 7 and other for win 10. The issue we are facing is that when users who are already there on win 7 VDIs when assigned a win 10 desktop pool as well don’t see their Start Menu when they left click on start button (right click works okay) and Task bar also doesn’t work properly, but when I create a fresh user account and give it windows 10 desktop pool, it works perfectly. I already added windows 10 start menu configuration in UEM windows settings but still have the same issue. Not sure if it’s the correct approach to migrate to windows 10 or not. Let me know what you think. Many Thanks.

    1. You’re not sharing profile archives between the two OSs?

      If you delete a user’s Windows 7 archives, does it work?

      Or are you thinking it’s an issue with the Active Directory user account?

      1. No, we are not sharing profile archives between the two. I tried deleting user profiles for win 7 and win 10 to make sure there aren’t any conflicts but we are still having same issue.

        1. I have this same issue, it’s very frustrating. I’ve written a script to copy user’s documents/downloads/etc from their Win7 profile share but that’s not good enough unfortunately.

    2. Hi we experienced this, do you use AppVolumes? When we had W7 app stacks attach to W10 machines the start menu broke. We recreated on a 10 capture machine and it works fine.

  17. Carl,

    What is the best practice for Office ( 2016 ) and activation in the master image?

    1. Horizon will rearm Windows, but I don’t think it rearms Office automatically. You could add that to your sealing script. Then you might need a computer start script to force each clone to activate again.

  18. Hello, carl! I would like to ask you a question, our current environment uses the horizon view 7, shared storage architecture, the experience is very poor. Now that we want to migrate to the VSAN hyper-converged architecture to improve the experience, do you have a workable approach?

  19. Carl,

    Has anyone tested playing windows media player video files after installing Horizon 7.5.1,7.6 or 7.7. we have been running into issues where Agent installation breaks windows media player.

  20. Hi Carl

    im facing problems with horizon view 7.7, so here is what i did: i created multiple parent machines with different setups and they are good but the problem is when i create the pool for any of these machines it stuck on customizing and the machines never get joined to the domain i tried win 7 and 10 with the same results
    Then i tried to join the parent machine and did not add the customization template from vcenter it also got stuck on customizing but when i reset the machines manually it worked. And yes one more thing when i created the pool with the pre joined machine, it starts creating the machines but when its time to power on the machines only the the one that shares the same parent machine host run and the other gives me error that “no host is compatible with the virtual machine”
    But it run the machines if i added the customization template from vcenter your help is much appreciated

  21. Following up from the Comment on August 8, 2017 at 10:36 am
    “You will need to Direct connect the speech mic to the master so it can install the hardware”

    We are having the same issue with a Philips SpeechMike. Using VCentre to open a gold image and install the USB device using USB passthrough on a local PC. However after the gold image snapshot and deploying to horizon. Upon connecting the Phillips Speechmike USB device, the Windows 7 OS downloads the drivers again and requests a reboot.

    We are wondering what it was meant by Direct Connect the speechmike to the master? Also how this was accomplished and if there were any issues with USB redirection.

    Similar issues are listed on the following site but there seems to be no resolution to this issue.


    1. @Dan

      We have the Philips Speech Mic as well and to get the device working correctly I had to add a USB controller to the GM via vcenter Edit machine settings, connect the microphone to my pc, then from the Console of the GM in vcenter connect that USB device to the VM (similar to how you would connect a ISO or cd drive) . The GM then installed the drivers as expected and were maintained through the composing process.

      I’ve found this process to be the same with most usb devices that need special configurations like signature pads as well.

  22. Hi Carl,

    We are using VMware Horizon 7.4 and having issues with processes. Sometimes IE,Firefox or others applications are frozen and we want to kill the process however we have and error message “access denied, process locked..”
    We must execute several times end task and wait… until the process disappear or reboot the Virutal desktop.
    Do you have any ideas on what is wrong ? It seems that due to the virtualization, processes are locked even if we use admin account,


      1. But we are not using security software on the machine.. The only thing is VMTools introspection for the vShield Endpoint. OS is still Windows 7 . Maybe we have to start thinking migrate to Win10..

  23. I have another situation on Start Menu as well. After the instant clone session is launched, it take at least 5 – 7 seconds for start menu to work. Also my whole session startup takes 45 – 50 seconds. Any inputs to consider to improve this. UEM flex engine takes 17 seconds.

      1. This is due to the Optimization Tool breaking something with the toolbar. Check out the comments in the Fling: https://labs.vmware.com/flings/vmware-os-optimization-tool#comments

        The last two releases of OT have been breaking multiple things depending on Windows release. For the Taskbar, I’ve found that the Windows Settings > Privacy changes and the HKCU registry edits both seem to play a part in it. Still trying to dig into which specific one settings are the culprit, but for now, I just copy and edit the template and remove those sections.

        1. I’m fairly confident that it’s tied to the Windows Settings and HKCU changes to Windows Settings that start with “Let Apps”. This turns off allowing some of the applications to access contacts, calendars, and other services. Not entirely sure why that would break the taskbar, but I’d recommend creating a template without those settings and take out anything else that you don’t need.

          All of this pertains to 1803 specifically; you may need to test for whichever release you use in your environment. 1809 still seems mostly broken in Horizon even without OT.

    1. Uem taking 45-55 secs for me and taskbar and start menu is frozen unresponsive for 5-6 seconds after that. Sounds like same problem. Ever find a fix? I messed with system performance settings , check a few things OT turned off. Helped a little. I still have the long login EUM though.

      1. If you enable UEM debug logging, it should show how long it takes for each UEM action. For Personalization, enable DirectFlex as much as possible.

  24. Hi Carl. I added a printer to the master and when publish instant clones with UEM, i am not seeing the printer added in the master. Anything I am missing?

  25. Carl,

    Question.. Have you heard any issues with CPU spikes and cpu pegged at 100% on random VM’s with previous versions of Horizon view client and Agent (7.3, 7.5) that 7.6 would fix? Just wondering because we are seeing that currently..

  26. Hello Carl,

    We have Horizon View environment with 2 ESXi hosts and 35 VM’s on each host. Each host has 52Ghz CPU power in. What will be the best practice to set a limit on Golden Image or leave it without limit? Currently we have setup the limit to 6000 Mhz on all VM’s. In the past we had some performance degradation when limit was removed. Can you please advice.

    Thank you in advance.

    1. Are you saying that you’ve oversubscribed CPU, but CPU-heavy users are impacting CPU-normal users? Hypervisor limits and reservations can certainly help. Larger environments have more options like workload balancing and user segmentation. Another option is to throttle in-guest processes, or reduce CPU over-provisioning.

  27. Hi Carl, very useful guide 🙂 I am using View Agent 7.5 and Windows Server 2016 (1607 datacenter) as RDSH, however, in my view administration console, it show this registered machine is unreachable. Is that necessary to upgrade to View Agent 7.5.1 for supporting Windows Server 2016?

    Many thanks to you.

    1. There are many causes for that error. Have you looked in the View Agent logs? C:\ProgramData\VMware\VDM\logs

  28. Hi Carl,

    We are having this issue with a few users when they logon to Vmware VDI desktops, they get the error saying their user account is disabled. Have you seen the error before?


    1. This occurs when their AppVolumes Writables and AppStacks still getting detached from the previous log-off. Is it still happening?

  29. Hi Carl, on AppVolume provisioning/capture machine. Should it only contain the same desktop OS, service packs as the target machines? Is it recommended to install core applications on App Volume provisioning/capture image even though you have it installed on the standard master image.

  30. any solution to migrate windows 7 persona profiles to windows 10 writable vol profiles? Im hitting a dead end

    1. Most companies write a script to backup essential profile settings (e.g. Outlook signature) to a folder, when run run another script to restore it on the new machine. It’s the same process to move profile settings from one physical PC to another physical PC.

    1. Mandatory profiles are normally stored in a file share (e.g. Netlogon) and configured using group policy.

          1. Hi Carl,

            Apologies if my first question wasn’t clear.

            We use VMWare UEM and I’ve built a Windows 10 Gold Image and optimized it.
            What I want to know is part of the imaging steps, do you create the mandatory profile on the base image or should you do this separately?

  31. Why is the “VMware Horizon View – Windows 10 Golden Image Creation” link crossed out? Is it not applicable anymore?

    1. It shouldn’t be crossed out any more. The destination site was down. I told it to check again that should have removed the cross out.

  32. Hi Carl, very useful article that I revise often. Thanks again. I have a question, in the latest VMWare tools (10.2.5) VMware enables RSS and Receive Throttle (30) by default with VMXNET3 driver. How do you think this will impact the VDI pools? Do you think that leaving them on by default will be ok or should we think about disabling them during master image creation?

  33. Thanks for this amazing blog. Is there a blog page on windows 2012 r2 installed with desktop experience for virtual desktop?

  34. Just curious – why domain join the master image? I’m trying to figure out a best practice and am curious if joining the domain is necessary or a preference.

    1. You can’t do much in Horizon without domain joining. What’s the alternative?

      If you do any Linked Clones, then domain joined is required. For Full Clones, you might be able to use SysPrep (Customization Specification) to join the domain.

        1. I’ve never considered not joining the domain. One advantage of joining the master to the domain is that you can put the master in the same OU as the clones so the master gets Computer GPOs burned into it.

          1. I’m aware this is an old thread but I was wondering why there seems to be a certain preference elsewhere for the master not being domain joined. Like here (https://techzone.vmware.com/creating-optimized-windows-image-vmware-horizon-virtual-desktop#1150983) where they say “When preparing the master image, we do not join the machine to a domain. Joining a machine to a domain is part of the deployment process, not part of image creation and optimization”. Or in this discussion (https://communities.vmware.com/thread/613049).
            Coming from XenDesktop I was not aware that this is an issue at all.

          2. I always join to the domain. I prefer computer-based group policies applied to my master so I can avoid GPO timing issues when updating a pool. I think Instant Clones requires domain join.

  35. Hello

    When i install VMware Horizon Agent 7.4 on VDI i am not able to RDP to VDI getting error “An Internal Error has Occurred”, soon as i remove VMware Horizon Agent 7.4 from VDI i am able to RDP. Is anyone can help on this if i missing anything during installation of 7.4 Horizon Agent?

  36. Hello Carl,
    I work in education sector providing desktop (Win 7 & Win 10) resources in classroom environment. I want to present/provision a floating pool with auto login as well as a dedicated pool that will prompt for credential on the same screen using Dell Wyse zero client. Any idea on how to do this?

    Any help would be greatly appreciated, I also want to take this time to thank you for your Blog, absolutely awesome!

  37. Carl, When using Horizon View 7.2 and Windows 10, we have been previously unable to use persistent disks with the Windows 10 linked clones. This has caused tremendous stability issues on a day to day basis due to the mandatory usage of roaming profiles which does not address all issues of ours. Do we know if there is a workaround or if this has been resolved as it is causing a tremendous problem for one of my customers? Thank you!

  38. Hey Carl, I also wanted to point out the Windows 7 Black Screen Hotfix you have linked above is broken. Has been for some time now. Actually, the LINK isn’t broken, but the download button once you get to the page you linked is broken. Perhaps Microsoft removed it? Just and FYI. Thank you for all you do!

    1. Windows? Or Office? In both cases, KMS is the answer. For Office 365 click-to-run, you’ll want Shared Computer Activation.

  39. Hi,

    We have an issue with a USB redirected device. We have installed the driver package for the Philips Speechmike on the Parent VM and snapshotted it, but when we deploy clones of it and the users plug in the USB device the desktop sees it for the first time and loads the drivers and then asks for a reboot.

    As we have lots of desktops and users this gets frustrating.

    Is there a way to connect the USB device the Parent VM before snapshotting it?


        1. We have the same issue reported on July 27th:
          “An issue with a USB redirected device. We have installed the driver package for the Philips Speechmike on the Parent VM and snapshotted it, but when we deploy clones of it and the users plug in the USB device the desktop sees it for the first time and loads the drivers and then asks for a reboot.

          As we have lots of desktops and users this gets frustrating.

          Is there a way to connect the USB device the Parent VM before snapshotting it?”

          The reply was “August 8, 2017 at 10:36 am
          You will need to Direct connect the speech mic to the master so it can install the hardware.”

          Our query is what do they mean by Direct Connect the speech mike to the master? How is that accomplished?
          We have had a look at the direct connect plug in and installed that on our gold image. We have used horizon view client to connect to the gold image but cant get any USB pass through. I am not sure if that’s what is required.

          Any ideas?

    1. The article says “In Horizon 7.0, instant clones have the following restrictions:”. I assume the restrictions also apply to 7.1?

  40. Hi, Carl. I have problems with a Windows 7 VM. I installed the Horizon Agent and the Horizon Direct Connetion Plugin, but when I try to connect from a Horizon View Client or from a ThinClient, I get a black screen.
    I have installed the fixes, and all possible updates but I still do not have good results. How can i fix this.


  41. Hi Carl,
    I have seen here you suggesting to install Windows 7 Hotfixes. Is it needed for Windows 10 master VM?

    1. Windows 10 gets Hotfixes through Windows Update. Windows 7 does not. But the important ones should have been fixed in Windows 10.

    1. I think you have to exclude usrclass.dat* from your roaming profiles. James Rankin has good info on how to roam the Start Menu in various UEM products.

Leave a Reply

Your email address will not be published. Required fields are marked *