Installing and Configuring VMware Dynamic Environment Manager. VMware Dynamic Environment Manager 9.9
Installing and Configuring VMware Dynamic Environment Manager. VMware Dynamic Environment Manager 9.9
You can find the most up-to-date technical documentation on the VMware website at:
https://docs.vmware.com/
VMware, Inc.
3401 Hillview Ave.
Palo Alto, CA 94304
www.vmware.com
©
Copyright 2019 VMware, Inc. All rights reserved. Copyright and trademark information.
VMware, Inc. 2
Contents
VMware, Inc. 3
Installing and Configuring VMware Dynamic Environment Manager
VMware, Inc. 4
About Installing and Configuring VMware
Dynamic Environment Manager
Installing and Configuring VMware Dynamic Environment Manager provides information about installing
and configuring VMware Dynamic Environment Manager™ on Terminal Services or Windows desktop
environments.
Intended Audience
This information is intended for experienced Windows administrators who want to deploy VMware
Dynamic Environment Manager in their Terminal Services or Windows desktop environments to provide
dynamic management of desktop, user, and application settings.
VMware, Inc. 5
Introduction to VMware
Dynamic Environment Manager 1
VMware Dynamic Environment Manager provides end users with a personalized and dynamic Windows
desktop. Through VMware Dynamic Environment Manager, you can customize the desktop by providing
access to IT resources based on the role, device, and location of the user. In this way, you can create a
desktop that adapts to the specific needs of the user.
VMware Dynamic Environment Manager manages user and Windows settings and dynamically
configures the desktop. For example, it can create drive and printer mappings, file type associations, and
shortcuts. VMware Dynamic Environment Manager can also manage and provide shortcuts to
applications such as ThinApp to users.
You can also use VMware Dynamic Environment Manager to manage certain user environment settings
when an application starts. For example, you can configure drive and printer mappings, apply custom
settings for files and folders, and registry, and run custom tasks. You can also define settings and
configurations for all users to guarantee compliance and provide a consistent environment.
You can use the VMware Dynamic Environment Manager Application Profiler to capture predefined
settings for an application. You can run the application on a reference system that Application Profiler
monitors and configure the settings that you want.
VMware, Inc. 6
Installing and Configuring VMware Dynamic Environment Manager
For example, a multinational corporation has end users from multiple countries. The company can
centrally manage the different display languages, wallpapers, keyboard configurations, and other regional
settings.
By using VMware Dynamic Environment Manager, you can manage the following settings:
n ADMX-based settings
n Application blocking
n Display language
n Environment variables
n Folder redirection
n Hide drives
n Privilege Elevation
n Triggered tasks
Personalization works independent from the Windows user profile management and facilitates the
management of virtualization technologies and application delivery mechanisms. VMware Dynamic
Environment Manager personalization integrates seamlessly with natively installed and virtualized
applications, providing a consistent user experience across Windows platforms that are physical or virtual,
local, or remote.
VMware Dynamic Environment Manager personalization lets users create their own personal settings. For
example, developers might want to configure Eclipse according to their own habits and apply that
configuration across multiple environments. Quality engineers might want to set the bug tracking Web site
as the home page of all browsers.
VMware, Inc. 7
Installing and Configuring VMware Dynamic Environment Manager
VMware Dynamic Environment Manager also provides an XML-based mechanism for settings migration
between application versions. In this way, you can avoid situations where personalized data is lost during
application upgrade, because it is stored at different location after the upgrade.
The VMware Dynamic Environment Manager download package contains XML migration file samples for
migrating between different versions of Microsoft Office.
For example, by using conditions you can provide access to a network printer that is based on the current
physical location of the user, or create an application shortcut on the desktop that is based on the user's
identity.
You can re-evaluate conditions when users unlock their workstation or reconnect to a remote session.
You can manage conditions from the VMware Dynamic Environment Manager console and apply them to
all configurable items within VMware Dynamic Environment Manager.
VMware, Inc. 8
VMware Dynamic Environment
Manager Scenario
Considerations 2
You can use VMware Dynamic Environment Manager to optimize the experience of Windows users with
all types of user profiles: mandatory, roaming, and local.
VMware, Inc. 9
Installing and Configuring VMware Dynamic Environment Manager
When using VMware Dynamic Environment Manager with mandatory profiles, you can address the
disadvantages in the following ways:
n Select the settings that users are allowed to personalize within their environment. Settings that you do
not manage with VMware Dynamic Environment Manager are discarded when the user logs out.
n Configure specific settings for applications or Windows settings by using the Predefined Settings
feature of VMware Dynamic Environment Manager. By using predefined settings, you do not need to
customize a mandatory profile. A mandatory profile that is based on the Default User profile is
sufficient.
n Customize the user environment by creating shortcuts, drive mappings, and so on.
Avoid using roaming profiles with VMware Dynamic Environment Manager for a longer time. Typically,
VMware Dynamic Environment Manager only runs with roaming profiles when you start migrating from
the roaming profile to either local or mandatory profiles being managed by VMware Dynamic Environment
Manager. The VMware Dynamic Environment Manager best practice is to use either local or mandatory
profiles.
n Personalized settings roam with the user across different machines that
are running the same operating system.
Disadvantages n Limited control over the settings that the users can change. Everything
is saved by default.
n Large roaming profiles might get corrupted and cause the individual
roaming profile to reset completely. As a result, users might spend a lot
of time getting all personalized settings back.
VMware, Inc. 10
Installing and Configuring VMware Dynamic Environment Manager
You can address many of the disadvantages of roaming profiles by using VMware Dynamic Environment
Manager.
n You can use the Profile Cleanup feature to clean up unimportant or obsolete parts of each user profile
at logout.
n Create a mandatory set of settings for business-critical applications by using the Predefined Settings
feature. You can also use Predefined Settings to disallow personalized settings for certain
applications.
n Decouple and segment personalized application and Windows settings from the roaming profile by
using the Import / Export and the Profile Cleanup features.
n Compress all settings that VMware Dynamic Environment Manager manages including files and
folders to provide shorter login times.
n Save all settings for roaming profiles in a central place that makes the settings available after a total
reset.
n Reset certain application or Windows settings without performing a complete reset of the roaming
user profile.
n Provide roaming for personalized application and Windows settings across different operating
systems for a consistent user experience.
n Provide different application and Windows settings depending on a user's business case by using
Condition Sets.
VMware, Inc. 11
Installing and Configuring VMware Dynamic Environment Manager
n Each desktop a user logs on to is polluted with a local profile for that
specific user.
n If local disk failure or corruption occurs, all user settings are lost.
With VMware Dynamic Environment Manager, you can eliminate the disadvantages of local profiles.
n Introduce roaming functionality for application and Windows settings that VMware Dynamic
Environment Manager manages.
n Create redundancy for application and Windows settings by managing these settings with VMware
Dynamic Environment Manager when local disk failure or corruption occurs.
VMware, Inc. 12
Installation and Deployment
Prerequisites 3
To install and deploy VMware Dynamic Environment Manager, your environment must meet certain
infrastructure, system, access, and licensing requirements. You must also get familiar with the VMware
Dynamic Environment Manager terminology.
n Infrastructure Requirements
n Software Requirements
n Licensing Requirements
Flex configuration file A configuration file where you define all application, Windows,
and user environment settings. You create and manage Flex
configuration files by using the Management Console.
VMware Dynamic Environment Manager configuration share The UNC path to the share where the Management Console
configuration and VMware Dynamic Environment Manager
configuration files are stored.
VMware, Inc. 13
Installing and Configuring VMware Dynamic Environment Manager
Profile archives Profile archives are ZIP files where FlexEngine stores the
personalized settings of users, based on the content of Flex
configuration files. For each Flex configuration file that you
create, FlexEngine creates a profile archive for each user.
Profile archives path The path that FlexEngine uses to store the profile archives for
individual users.
Profile archives backup path The path that FlexEngine uses to store backups of the profile
archives.
General folder A folder that is named General, that the Management Console
creates in the VMware Dynamic Environment Manager
configuration share. This folder is the location where Flex
configuration files are created, managed, and used from by
FlexEngine.
VMware Dynamic
Environment
Manager GPO
SMB SMB
Laptops Desktops
VMware, Inc. 14
Installing and Configuring VMware Dynamic Environment Manager
n Create the VMware Dynamic Environment Manager Group Policy by using the administrative
template that is provided in the VMware Dynamic Environment Manager package.
After you install and configure the VMware Dynamic Environment Manager components, you can start
managing personalization and application management settings by creating Flex configuration files. You
can use the VMware Dynamic Environment Manager Application Profiler to capture application settings in
Flex configuration files.
Note The VMware Dynamic Environment Manager MSI file has a digital signature, which the Windows
Installer infrastructure validates when the installation starts. The installation process includes a certificate
revocation check for which the system requires Internet access. If the Internet connectivity is not
sufficient, the installation continues, but only after several timeouts. During the process, the installer
seems to hang without providing any feedback.
Infrastructure Requirements
To deploy VMware Dynamic Environment Manager, your environment must meet certain infrastructure
requirements.
VMware, Inc. 15
Installing and Configuring VMware Dynamic Environment Manager
Requirement Description
VMware Dynamic Environment Manager configuration share A central share on a file server, which can be a replicated share
for multiple sites. In such a case, you can use multiple Active
Directory GPOs to configure the path to the share for all client
devices, based on the location. This share uses the Server
Message Block (SMB) protocol for communication. For more
information about the configuration share requirements, see
VMware Dynamic Environment Manager Configuration Share.
Profile archives share You must consider a location to store the profile archive ZIP files
for the user settings and the profile backups. The profile
archives share also uses SMB. For details about the profile
archives share, see Profile Archives Share.
Folder Structure
The VMware Dynamic Environment Manager configuration share has a predefined structure. The first
time when you start the Management Console, the General folder is automatically created in the
configuration share. The General folder contains the Flex configuration files that you use to define
settings for personalization and application configuration management.
The General folder also contains the mandatory FlexRepository folder. The Management Console
creates the FlexRepository folder the first time you configure a user environment setting, such as a
printer mapping. The FlexRepository folder contains all the configuration files for the user environment
settings and condition sets.
VMware, Inc. 16
Installing and Configuring VMware Dynamic Environment Manager
Requirements
Requirement Description
Networking To optimize login times, the computer where the user logs in
should have a 1-Gbps connection to the configuration share.
In a typical deployment, profile archive backups and log files are stored on the same share, but you can
configure different locations in the FlexEngine GPO.
You should use a share that is dedicated to the profile archives. A dedicated share improves
performance, simplifies configuring the VMware Dynamic Environment Manager SyncTool, and makes it
easier to configure permissions for the Helpdesk Support Tool.
Note Do not use the Home drive share. Using this share can cause synchronization conflicts between
Offline Files and the VMware Dynamic Environment Manager SyncTool, and lets users delete their profile
archives.
Folder Structure
The profile archives share has a one-on-one relation to the naming and folder structure of the VMware
Dynamic Environment Manager configuration share and the Management Console.
VMware, Inc. 17
Installing and Configuring VMware Dynamic Environment Manager
Requirements
Requirement Description
Networking requirements For best performance and to optimize login times, the computer
where the end user logs in should have a 1-Gbps connection to
the profile archives share. If an end user has limited bandwidth
or has a laptop that is often offline, use the SyncTool. This tool
improves connectivity to the profile archives share under these
conditions.
NTFS security permissions Setting the following NTFS security permissions on the profile
archives share automatically creates a folder for each user on
first login and limits the user to their own folder.
n For VMware Dynamic Environment Manager administrators
and help desk: Full control, applied to this folder, sub
folders, and files.
n For End users: Create folders and append data, applied to
this folder only.
n For Creator owner: Full control, applied to sub folders and
files only.
The minimum share permissions for all users should be Change
and Read.
Software Requirements
The system on which you plan to install VMware Dynamic Environment Manager must meet certain
software requirements.
n Windows 8.1 Professional and Enterprise x86 and x64 with Update
n Windows 10 Version 1903 (May 2019 Update) Professional and Enterprise x86 and x64
VMware, Inc. 18
Installing and Configuring VMware Dynamic Environment Manager
n App-V 5.1
n ThinApp 5.2
VMware Dynamic Environment Manager might not work properly on some Windows versions if access to
Regedit.exe is disabled through Group Policy, unless the option Disable regedit from running
silently? is set to No. However, this setting is insufficient for Reg.exe. This means that if Regedit.exe
cannot run due to UAC, this policy must remain unset.
If users are not allowed to run Regedit.exe silently, an error message might appear when they log in. An
error message is also written to the FlexEngine log file.
Licensing Requirements
FlexEngine requires a valid license file. To switch from an evaluation license file to a production license
file, reinstallation of any VMware Dynamic Environment Manager component is not required. You must
only replace the old license file with the new license file, retaining both license filename and location in
the file system.
Note A license file is not required on Horizon 7 for installation. A license file is required only when you
install VMware Dynamic Environment Manager as a standalone installation.
VMware, Inc. 19
Installing VMware Dynamic
Environment Manager 4
You must install VMware Dynamic Environment Manager on your environment to manage personalization
and application configuration settings. The VMware Dynamic Environment Manager MSI consists of
several installation features that you can install on your environment.
VMware DEM FlexEngine Client component that you must install on each desktop or Terminal Server that you want to
manage by using VMware Dynamic Environment Manager.
If you are deploying FlexEngine to physical machines, you can use any software deployment tool
to perform batch deployment or use Active Directory Group Policy software deployment.
If you deploy FlexEngine in a VDI or RDSH environment, such as VMware Horizon, you can
manually install FlexEngine in the template or parent virtual machines and then deploy pools and
farms of VMware Horizon® View™ desktops and RDSH servers based on these templates.
®
Important When you are deploying FlexEngine in virtual machines used in VMware Horizon
Cloud Service™, some differences apply, such as installation paths and other specifics related to
use in the Horizon Cloud environment. For details about deploying FlexEngine when using a
Horizon Cloud environment, see the administration documentation that is appropriate for your
Horizon Cloud deployment mode. Horizon Cloud documentation is available from the Horizon
Cloud documentation landing page.
VMware DEM Management Administration console that you can install on any desktop or Terminal Server where you want to
Console manage VMware Dynamic Environment Manager.
Application Migration Optional. You can install Application Migration on desktops or Terminal Servers if you want to
migrate application settings across application versions. This feature depends on FlexEngine and
cannot work standalone.
Self-Support Optional. You can install the Self-Support tool on desktops or Terminal Servers where you want
users to support their application settings by themselves, without administrator intervention. This
feature depends on FlexEngine and cannot work standalone.
VMware, Inc. 20
Installing and Configuring VMware Dynamic Environment Manager
n Create the VMware Dynamic Environment Manager Group Policy by using the administrative
template that is provided in the VMware Dynamic Environment Manager package.
After you install and configure the VMware Dynamic Environment Manager components, you can start
managing personalization and application management settings by creating Flex configuration files. You
can use the VMware Dynamic Environment Manager Application Profiler to capture application settings in
Flex configuration files.
Note The VMware Dynamic Environment Manager MSI file has a digital signature, which the Windows
Installer infrastructure validates when the installation starts. The installation process includes a certificate
revocation check for which the system requires Internet access. If the Internet connectivity is not
sufficient, the installation continues, but only after several timeouts. During the process, the installer
seems to hang without providing any feedback.
Prerequisites
®
n Verify that you have a valid license file. If you install on VMware Horizon 7, you do not need a
separate license file.
n Verify that you have administrative privileges on the account where you will run the MSI file.
n Download and extract the MSI file package for your operating system.
VMware, Inc. 21
Installing and Configuring VMware Dynamic Environment Manager
Procedure
1 Run the MSI that corresponds to your OS architecture, and click Next.
Option Description
2 Read and accept the End User License Agreement and click Next.
3 Select the destination folder where you want to install the application and click Next.
VMware recommends you install VMware Dynamic Environment Manager in the default folder.
Option Description
What to do next
n Create the VMware Dynamic Environment Manager Group Policy by using the administrative
template that is provided in the VMware Dynamic Environment Manager package. See Configuring
the FlexEngine Group Policy Object.
n Add FlexEngine command to logoff script. See Configure FlexEngine to Run From a Logoff Script.
n Configure the Management Console. See Configuring the VMware Dynamic Environment Manager
Management Console.
VMware, Inc. 22
Installing and Configuring VMware Dynamic Environment Manager
Property Description
INSTALLDIR The absolute path to the installation directory. The default value is %ProgramFiles%\Immidio\Flex
Profiles
ADDLOCAL The features that you want to install. The default values are FlexEngine, FlexMigrate, and
FlexProfilesSelfSupport.
The following values are supported:
n ALL.
n FlexEngine. Installs FlexEngine.
n FlexMigrate. Installs Application Migration and FlexEngine.
n FlexProfilesSelfSupport. Installs the Self-Support tool and FlexEngine.
n FlexManagementConsole. Installs the Management Console.
To install multiple features, separate the values with commas, without any spaces. For example, to
select FlexMigrate and FlexProfilesSelfSupport:
ADDLOCAL="FlexMigrate,FlexProfilesSelfSupport"
LICENSEFILE The path to the location of the VMware Dynamic Environment Manager license file. The installer
copies that license to the installation folder.
Note If LICENSEFILE only contains the name of the license file, the installer looks for that file in the
folder where the MSI resides.
msiexec.exe /i "VMware Dynamic Environment Manager 9.9 x64.msi" /qn INSTALLDIR="D:\Apps\VMware DEM"
ADDLOCAL="FlexProfilesSelfSupport" LICENSEFILE="\\filesrv1\share\VMware DEM.lic" /l* InstallDEM.log
The following is an example of a typical unattended installation that installs FlexEngine, Application
Migration, and Self-Support in the default installation directory:
To upgrade VMware Dynamic Environment Manager, you must upgrade FlexEngine, the Management
Console, and the ADMX templates in the given order.
VMware, Inc. 23
Installing and Configuring VMware Dynamic Environment Manager
Prerequisites
Verify that you have an appropriate license file. If you install on VMware Horizon 7, you do not need a
separate license file.
Procedure
Option Description
2 Read and accept the End User License Agreement and click Next.
3 Select the destination folder where you want to install the application and click Next.
4 Select only FlexEngine and its subfeatures to upgrade and click Next.
6 Click Upgrade.
What to do next
Prerequisites
Upgrade FlexEngine.
Procedure
Option Description
2 Read and accept the End User License Agreement and click Next.
VMware, Inc. 24
Installing and Configuring VMware Dynamic Environment Manager
3 Select the destination folder where VMware Dynamic Environment Manager is installed and click
Next.
4 Select only the Management Console feature to upgrade and click Next.
6 Click Upgrade.
7 Select all Flex configuration files that contain Application Templates or Windows Common Settings to
have them automatically updated to the new definitions. If an updated template is available, you are
prompted for your approval of the update.
What to do next
Prerequisites
n Upgrade FlexEngine.
Procedure
1 Remove the previous ADMX templates from the Central Store on the Windows domain controller.
3 Copy the new ADMX templates from the download package to the Central Store on the Windows
domain controller.
VMware, Inc. 25
Configuring VMware Dynamic
Environment Manager 5
After you install VMware Dynamic Environment Manager on Windows desktops or Terminal Services, you
must configure FlexEngine and the Management Console.
To have VMware Dynamic Environment Manager running correctly, you must configure FlexEngine.
n Create and configure an Active Directory GPO for VMware Dynamic Environment Manager. You must
configure Group Policies to enable FlexEngine to run when the users log on to their Windows
machines, and set up the locations of the configuration and profile archives shares. The rest of the
VMware Dynamic Environment Manager Group Policies are optional.
If you do not use a GPO to configure FlexEngine, you can configure it by using command-line arguments.
See Chapter 7 FlexEngine Command-Line Arguments. Or, you can use the NoAD mode. See Chapter 6
Installing and Configuring FlexEngine in NoAD Mode.
If you want to provide different FlexEngine configurations, you can use multiple GPOs. For example, you
can manage multiple VMware Dynamic Environment Manager environments such as test and production.
VMware, Inc. 26
Installing and Configuring VMware Dynamic Environment Manager
FlexEngine runs during Windows logon to get all the settings for the client device and apply them as soon
as the user logs in.
You can configure FlexEngine in the following ways to run during Windows logon process:
n By setting Group Policy Run FlexEngine as Group Policy Extension. See Configure
FlexEngine to Run as Group Policy Extension Setting.
n By configuring a logon script in Group Policy. Use this method if you prefer to write a logon script. See
Configure FlexEngine to Run from a Logon Script.
FlexEngine runs again during Windows logoff to save all the settings for the client device to the profile
archives share. To run FlexEngine during Windows logoff, configure a logoff script in Group Policy. See
Configure FlexEngine to Run From a Logoff Script.
You must also configure the path to the configuration share and the profile archives share in the GPO.
See Configure the Flex Configuration Files Setting and Configure Profile Archives Setting.
n Use the Profile Archives Backups setting to configure the location and number of backups. Users can
restore their settings from a backup using the Self-Support Tool or help desk personnel can do this by
using the Helpdesk Support tool.
n Use the FlexEngine Logging setting to configure the location and filename of the log file, the level of
log detail, and the maximum file size. The log file helps with troubleshooting.
For more information on all FlexEngine GPO settings, see Configure the VMware Dynamic Environment
Manager Group Policy Object for details.
You can create a new GPO for VMware Dynamic Environment Manager or use an existing one that is
applied to the users for which you want to configure FlexEngine.
Procedure
1 Copy the VMware Dynamic Environment Manager ADMX files and their corresponding ADML files
from the download package to the correct PolicyDefinitions folder on your Windows Domain
Controller.
The VMware Dynamic Environment Manager ADMX files are located in the Administrative
Templates (ADMX) folder in the download package, and their corresponding ADML files are located
in the Administrative Templates (ADMX)\en-US folder. For more information about the location
of the PolicyDefinitions folder, go to the Microsoft Web site.
VMware, Inc. 27
Installing and Configuring VMware Dynamic Environment Manager
What to do next
n Configure the appropriate VMware Dynamic Environment Manager Group Policy settings. See
Configure the VMware Dynamic Environment Manager Group Policy Object.
n Configure FlexEngine to run during logout by configuring a logoff script. See Configure FlexEngine to
Run From a Logoff Script.
Prerequisites
n Profile archives.
If you do not configure Run FlexEngine as Group Policy Extension, you must configure FlexEngine to run
using a logon script. See Configure FlexEngine to Run from a Logon Script.
The rest of the VMware Dynamic Environment Manager GPO settings are optional and enabling them
depends on your infrastructure and requirements.
Note Many of the FlexEngine settings that you configure through a GPO can be overridden by
command-line arguments. Command-line arguments have higher priority than GPO settings. See Chapter
7 FlexEngine Command-Line Arguments.
Procedure
VMware, Inc. 28
Installing and Configuring VMware Dynamic Environment Manager
VMware, Inc. 29
Installing and Configuring VMware Dynamic Environment Manager
14 Configure VMware Dynamic Environment Manager Logon and Logoff Progress Information
You can configure Show VMware DEM logon and logoff progress information to show a splash
screen with progress bar when FlexEngine runs.
Prerequisites
Create a GPO for FlexEngine. See Create a VMware Dynamic Environment Manager Group Policy
Object.
Procedure
2 Right-click the VMware Dynamic Environment Manager GPO that you created and select Edit.
3 To access the VMware Dynamic Environment Manager administrative templates, navigate to User
configuration > Policies > Administrative Templates > VMware DEM > FlexEngine.
What to do next
n Profile archives.
n Run FlexEngine as Group Policy Extension. Either enable this setting or configure FlexEngine to run
from a logon script. See Configure FlexEngine to Run from a Logon Script.
n Configure FlexEngine to run from a logoff script. See Configure FlexEngine to Run From a Logoff
Script.
VMware, Inc. 30
Installing and Configuring VMware Dynamic Environment Manager
Procedure
1 In the Group Policy Management Editor, double-click the Flex config files setting.
2 Select Enabled.
3 In the Central location of Flex config files text box, enter the location of the central configuration
share.
Use a UNC path for this setting. Typically, this path points to the General folder created by the
Management Console in the VMware Dynamic Environment Manager configuration share.
For example: \\Filesrv\DemConfig$\General
4 Select Process folder recursively to also enable processing Flex configuration files that are located
in subfolders of the specified path.
By running FlexEngine as Group Policy Extension, settings that VMware Dynamic Environment Manager
manages are applied earlier during the logon phase rather than when running FlexEngine from a logon
script. This way, the range of settings that can be managed by VMware Dynamic Environment Manager is
extended, such as the Windows Multilanguage User Interface or slideshow backgrounds.
Prerequisites
n Enable the Always wait for the network at computer startup and logon Computer Group Policy
setting to ensure that the FlexEngine Group Policy client-side extension runs during each logon.
Apply this setting to an OU in Active Directory where all the Windows clients are located.
n Configure a logon script through Group Policy to run FlexEngine with the -OfflineImport argument.
This is needed to ensure that FlexEngine still runs at logon when a computer is offline and a user logs
on with cached credentials, because Group Policy client-side extensions do not run in such a
scenario. See Additional FlexEngine Operations.
n Configure FlexEngine logout commands through a Group Policy logoff script as described in
Configure FlexEngine to Run From a Logoff Script. FlexEngine Group Policy client-side extension
runs only during logon.
Procedure
1 In the Group Policy Management Editor, double-click the Run FlexEngine as Group Policy
Extension setting.
2 Select Enabled.
VMware, Inc. 31
Installing and Configuring VMware Dynamic Environment Manager
Procedure
1 In the Group Policy Management Editor, double-click the FlexEngine Logging setting.
2 Select Enabled.
Option Description
Path and name of log file Enter a location that is unique for each user, for example:
\\Filesrv\DemUsers$\%username%\Logs\FlexEngine.log
If you enter a subdirectory that does not exist, FlexEngine automatically creates it
when a user logs in.
Log level Set the amount of detail that is logged. Do not use Debug or Info in production
environments, because the amount of logging information might slow down the
logon and logoff process.
Maximum log file size in kB Set the maximum size of the log file. If you set a maximum log file size, the log file
is created again after that size is reached. If you set the maximum size to 0, the log
file grows indefinitely.
Log total size of profile archive and FlexEngine logs the number of profile archives and profile archives backups, and
profile archive backups folders their file sizes at the end of a path-based export.
Note You should avoid using Debug log level in production, but it is extremely helpful when
troubleshooting issues.
Procedure
1 In the Group Policy Management Editor, double-click the Profile Archives setting.
2 Select Enabled.
Option Description
Location for storing user profile Enter the location of the profile archives share. Use a location that is unique for
archives each user, for example:
\\Filesrv\DemUsers$\%username%\Archives
Hide profile archives folder Mark the specified profile archives folder as hidden after FlexEngine performs a
path-based export.
Compress profile archives Enable ZIP compression for the user profile archives.
Retain file modification dates Restore last modified dates when FlexEngine imports profile archives. This setting
is required if you want to use the Do not export files older than ... days function.
VMware, Inc. 32
Installing and Configuring VMware Dynamic Environment Manager
Procedure
1 In the Group Policy Management Editor, double-click the Profile Archive Backups setting.
2 Select Enabled.
Option Description
Location for storing user profile Provide a unique location to store the profile archives backups for every user. For
archive backups example:
\\Filesrv\DemUsers$\%username%\Backups
If you enter a subdirectory that does not exist, FlexEngine automatically creates a
subdirectory when a user creates a backup for the first time.
Hide backup folder Mark the specified profile archives backup folder as hidden after a path-based
export.
Number of backups per profile Specify the number of backups you want to create for each profile archive for each
archive user.
Note You can override this setting in the Flex configuration files by setting a
different value on the Backups tab in the Management Console.
Create single backup per day Treat the number of backups as the number of days for which to keep backups.
This prevents DirectFlex from overwriting backups from the previous day or older
days.
Procedure
1 In the Group Policy Management Editor, double-click Application blocking logging to the Windows
event log.
2 Select Enabled.
VMware, Inc. 33
Installing and Configuring VMware Dynamic Environment Manager
The default behavior of this setting is to log the details of the following events to the Windows event log.
Procedure
1 In the Group Policy Management Editor, double-click Privilege elevation logging to the Windows
event log.
2 Select Enabled.
3 (Optional) If you do not want VMware Dynamic Environment Manager to log de-elevated child
processes, deselect Log de-elevated application launches.
4 Click OK.
Note Do not enable this setting when you are using roaming or local profiles.
Procedure
1 In the Group Policy Management Editor, double-click Certificate Support for Mandatory Profiles.
2 Select Enabled.
Procedure
2 Select Enabled.
Option Description
Only export at logoff By default, DirectFlex exports profile information when an application is closed.
When you enable this setting, the export action runs when the user logs out.
Note This setting can be overridden through the DirectFlex settings in the
Management Console.
Show DirectFlex notifications Enable this option to display a message in the notification area when DirectFlex
performs an import or export.
VMware, Inc. 34
Installing and Configuring VMware Dynamic Environment Manager
Option Description
Notification delay in seconds If the DirectFlex import or export takes less time than the configured delay, no
message appears. Configure this setting to only display messages when the
access to the profile archives path is slow. If the delay is set to 0, messages are
shown immediately.
Hide DirectFlex exit notification Enable this option to only show a message when DirectFlex is performing an
import.
Procedure
1 In the Group Policy Management Editor, double-click the FlexEngine logging to the Windows
Event Log setting.
2 Select Enabled.
Option Description
Asynchronous user environment Enable these options to instruct FlexEngine to log start and finish events for these
actions features.
DirectFlex refresh
User environment refresh
Warn if size of single profile archive If you set a size other than 0, FlexEngine logs an event whenever a profile archive
exceeds this size in kB that is exported is larger than the specified size in kB. This behavior applies both to
DirectFlex exports and path-based exports.
Warn if size of profile archive folder If you set a size other than 0, FlexEngine logs an event whenever the total size of
exceeds this size in kB profile archives in the profile archives folder is larger than the specified size in kB.
This size check only takes place after a path-based export.
Include profile archive backup folder When set, the size of profile archive backups in the backup folder is included when
when determining folder size computing the size of the profile archives folder.
Procedure
1 In the Group Policy Management Editor, double-click the Paths Unavailable at Logon setting.
2 Select Enabled.
VMware, Inc. 35
Installing and Configuring VMware Dynamic Environment Manager
Option Description
If Flex config files path is not Select one of the following options when the Flex configuration files path is not
available available at login.
n Skip import. Allows the user to log in. The user profile archives are not
imported and the user environment settings are not applied.
n Logoff. Automatically logs off the user.
If profile archive path is not available Select one of the following options when the profile archives path is not available at
login.
n Skip import. Allows the user to log in. The user profile archives are not
imported and the user environment settings are not applied.
n Apply user environment settings. Applies the user environment settings. The
user profile archives are not imported.
n Logoff. Automatically logs off the user.
Optional message to display Use this setting to display a message in case the path is missing. You can
configure this setting separately for the Flex configuration files path, if Skip import
is selected, and for the profile archives path, if Skip import or Apply user
environment settings is selected.
Timeout after which to dismiss Use this setting to configure how long the message remains displayed. The user
message can dismiss the message manually at any time.
Note If the Flex configuration files path is not available, the user is immediately logged out by
default. If the profile archives path is not available, only the user environment settings are applied by
default and no user profile archives are imported.
Procedure
1 In the Group Policy Management Editor, double-click Prevent access to VMware DEM Self-
Support.
2 Select Enabled.
Procedure
1 In the Group Policy Management Editor, double-click Show VMware DEM logon and logoff
progress information.
2 Select Enabled.
VMware, Inc. 36
Installing and Configuring VMware Dynamic Environment Manager
For information about how to run FlexEngine as Group Policy client-side extension, see Configure
FlexEngine to Run as Group Policy Extension Setting.
Tip The example path to FlexEngine.exe is based on the default installation directory. The default
directory does not apply in the following cases.
n You selected a different directory when you installed VMware Dynamic Environment Manager.
For example, if you used the Horizon Cloud Import Image workflow or the Horizon Agent Installer to
install VMware Dynamic Environment Manager for a virtual machine located in Microsoft Azure, the
installation path is different. For details, see Creating Desktop Images for a Horizon Cloud Pod in
Microsoft Azure.
If VMware Dynamic Environment Manager is installed in a non-default directory, adjust the path
accordingly.
If you configure FlexEngine to run as a Group Policy client-side extension, you do not need to configure
FlexEngine to run from a logon script. See Configure FlexEngine to Run as Group Policy Extension
Setting.
However, in case a computer is offline and a user logs in with cached credentials, Group Policy client-side
extensions do not run. If FlexEngine is configured to run as a Group Policy extension, no import takes
place. Therefore, configure a logon script with the -OfflineImport argument to enable importing of user
settings at login even when the user's computer is offline.
You can add the FlexEngine logon command to an existing logon script or call it directly as a logon script.
For this purpose, use User Configuration\Windows Settings\Scripts.
This command reads the settings that are configured through the VMware Dynamic Environment
Manager Group Policy Object and performs the path-based import accordingly.
To run FlexEngine as a logon script from a GPO, use the following settings.
VMware, Inc. 37
Installing and Configuring VMware Dynamic Environment Manager
Option Value
Script Parameter -r
VMware Dynamic Environment Manager manages profile information that often must be imported before
the Windows shell is initialized. To make sure that the shell initialization waits until the logon script has
completed, enable the Run logon scripts synchronously Windows Group Policy setting. This setting is
located at User Configuration\Policies\Administrative Templates\System\Scripts.
Note On Windows 7 and Windows Server 2008 R2, the Microsoft Windows GPO ignores the Run logon
scripts synchronously policy setting when using mandatory profiles. When using local or roaming
profiles, the policy setting is ignored the first time a user logs in. Microsoft hotfix 2550944 addresses this
issue.
Tip The example path to FlexEngine.exe is based on the default installation directory. The default
directory does not apply in the following cases.
n You selected a different directory when you installed VMware Dynamic Environment Manager.
For example, if you used the Horizon Cloud Import Image workflow or the Horizon Agent Installer to
install VMware Dynamic Environment Manager for a virtual machine located in Microsoft Azure, the
installation path is different. For details, see Creating Desktop Images for a Horizon Cloud Pod in
Microsoft Azure.
If VMware Dynamic Environment Manager is installed in a non-default directory, adjust the path
accordingly.
Configure the following logoff command that will run during the logoff process:
This command reads the settings configured through the VMware Dynamic Environment Manager Group
Policy Object and performs the path-based export accordingly.
To run FlexEngine as a logoff script from a GPO, use the following settings.
Option Value
Script Parameter -s
VMware, Inc. 38
Installing and Configuring VMware Dynamic Environment Manager
Initial Configuration
When you start the Management Console for the first time, you must specify the location of the
configuration share. With the configuration share set, you can start using the Management Console.
Management Console searches for the Immidio Flex Profiles Configuration.xml configuration file
at the specified location. If the file exists, this central file is read and used as configuration for the
Management Console. Otherwise, a new configuration file, with default values, and a General folder is
created.
Note Management Console configuration is stored in the central configuration share. Any changes that
you make to the configuration affect all Management Console installations that are configured to use this
share.
Further Configuration
You can control which features you want to manage through the Management Console by configuring the
Management Console settings. You can display the settings by clicking Configure in the Management
Console.
n Personalization features. Each check box from the Personalization features corresponds to a tab in
the Management Console, except the Silo support check box. Silo support lets you use
Management Console to manage both General configuration files and silo-specific ones. When
enabled, a Silos folder is created in the VMware Dynamic Environment Manager configuration share.
Within the Silos folder, you can create subfolders for each silo, and within these subfolders you can
create and manage silo-specific Flex configuration files.
n App-V configuration. The App-V tab contains settings for application virtualization support. For more
information, see the VMware Dynamic Environment Manager Administration Guide.
n Configuration Changelog. You can view a log of changes to personalization or user environment
settings files. See information about the configuration changelog in the VMware Dynamic
Environment Manager Administration Guide.
VMware, Inc. 39
Installing and Configuring
FlexEngine in NoAD Mode 6
NoAD mode is an alternative to configuring the client component, FlexEngine, with Active Directory Group
Policy. You do not need to create a GPO, logon and logoff scripts, or configure Windows Group Policy
settings.
In NoAD mode, FlexEngine ignores all VMware Dynamic Environment Manager GPO settings. If settings
from a previous GPO-based deployment are encountered, no actions are performed and a message is
logged to the FlexEngine log file.
Procedure
u To install FlexEngine in NoAD mode, specify the path to the General folder in the VMware Dynamic
Environment Manager configuration share through the NOADCONFIGFILEPATH MSI property at the
time of installation.
This command inserts the basic NoAD configuration in the HKLM registry hive and enables the NoAD
mode.
Note To disable the NoAD mode, uninstall VMware Dynamic Environment Manager, and reinstall without
the NOADCONFIGFILEPATH MSI property.
VMware, Inc. 40
Installing and Configuring VMware Dynamic Environment Manager
The XML file is called NoAD.xml and must reside in the …\General\FlexRepository\NoAD subfolder.
The NoAD.xml is a UTF-8-encoded XML file with an explicit UTF-8 BOM. You can create this file by using
Notepad and selecting the UTF-8 encoding when saving. The file must have the following basic structure:
Setting Value
LogFileName Set a location that is unique for each user, for example:
\\Filesrv\DemUsers$\%username%\Logs\FlexEngine.log
If you enter a subdirectory that does not exist, FlexEngine creates it when a user logs in.
LogLevel Configure the amount of details to log by setting this property to one of the following values:
n 0 (DEBUG)
n 1 (INFO)
n 2 (WARN)
n 3 (ERROR)
n 4 (FATAL)
Note Do not use 0 (DEBUG) or 1 (INFO) in production environments, because the amount of
logging information might slow down the logon and logoff process.
MaximumLogFileSize Set the maximum size of the log file in kB. If you set a maximum log file size, the log file is
created again after that size limit is reached. If you set the maximum size to 0, the log file
expands indefinitely.
LogProfileArchiveFolderSize To enable this setting, set the value to 1. If enabled, FlexEngine logs the number of profile
archives and profile archives backups, and their sizes, at the end of a path-based export.
VMware, Inc. 41
Installing and Configuring VMware Dynamic Environment Manager
Setting Value
ProfileArchivePath Set the location of the profile archives share. Use a location that is unique for each user. For
example:
\\Filesrv\DemUsers$\%username%\Archives
HideProfileArchiveFolder To enable this setting, set the value to 1. This setting marks the specified profile archives
folder hidden after FlexEngine performs a path-based export.
RestoreLastModified To enable this setting, set the value to 1. If enabled, FlexEngine restores last modified dates
when it imports profile archives. This setting is required if you want to use the Do not export
files older than ... days option.
Setting Value
BackupPath Set a unique location to store the profile archives backups for every user. For example:
\\Filesrv\DemUsers$\%username%\Backups
If you enter a subdirectory that does not exist, FlexEngine creates a subdirectory when a
user creates a backup for the first time.
HideBackupFolder To enable this setting, set the value to 1. Marks the specified profile archives backup folder as
hidden after a path-based export.
BackupCount Set the number of backups that you want to create for each profile archive for each user.
Note You can override this setting in the Flex configuration files by setting a different value
on the Backups tab in the Management Console.
BackupDaily To enable this setting, set the value to 1. Treats the number of backups as the number of
days for which to retain backups. This prevents DirectFlex from overwriting backups from the
previous day or recent days.
Setting Value
VMware, Inc. 42
Installing and Configuring VMware Dynamic Environment Manager
The default behavior of the PrivilegeElevationEventLog setting is to log the details of the following
events to the Windows event log.
Setting Value
DeElevationEventLog If the value of the PrivilegeElevationEventLog setting is 1 but you do not want VMware
Dynamic Environment Manager to log de-elevated child processes, too, set this value to 0.
Setting Value
Note Do not enable this setting when you are using roaming or local profiles.
Setting Value
OnlyExportAtLogoff To enable this setting, set the value to 1. By default, DirectFlex exports profile information
when an application is closed. When you enable this setting, the export action runs when the
user logs out.
Note This setting can be overridden through the DirectFlex settings in the Management
Console.
DirectFlexNotification To enable this setting, set the value to 1. When enabled, a message is displayed in the
notification area when DirectFlex performs an import or export.
DirectFlexNotificationDelay Set the number of seconds to delay. If the DirectFlex import or export takes less time than
the configured delay, no message appears. Configure this setting to display messages only
when the access to the profile archives path is slow. If the delay is set to 0, messages are
shown immediately.
DirectFlexHideExitNotification To enable this setting, set the value to 1. Enable this option to show a message only when
DirectFlex is performing an import.
VMware, Inc. 43
Installing and Configuring VMware Dynamic Environment Manager
Setting Value
EventLog To enable this setting, set the value to 1. If enabled, FlexEngine logs events for path-based
import and export actions.
EventLogAsync To enable this setting, set the value to 1. If enabled, FlexEngine also logs events for
asynchronous VMware Dynamic Environment Manager actions.
EventLogDirectFlexRefresh To enable this setting, set the value to 1. If enabled, FlexEngine also logs events for
DirectFlex refresh actions.
EventLogUEMRefresh To enable this setting, set the value to 1. If enabled, FlexEngine also logs events for user
environment refresh actions.
EventLogMaxFileSize Set to profile archive file size in kB. If you set a size other than 0, FlexEngine logs an event
when a profile archive that is exported is larger than the specified size in kB. This applies
both to DirectFlex exports and path-based exports.
EventLogMaxFolderSize Set to profile archive folder size in kB. If you set a size other than 0, FlexEngine logs an
event whenever the total size of profile archives in the profile archives folder is larger than
the specified size in kB. This size check only takes place after a path-based export.
EventLogIncludeBackupFolder To enable this setting, set the value to 1. When set, the size of profile archives backups in the
backup folder is taken into account when computing the size of the profile archives folder.
Note EventLog must be set to 1 for any of the other settings to take effect.
Setting Value
ConfigPathMissingAction Set to one of the following values when the Flex configuration files path is not available
at login.
n 0 (Skip import). Allows the user to log in. The user profile archives are not
imported and the user environment settings are not applied.
n 1000 (Logoff). Automatically logs out the user.
ConfigPathMissingMessage Set a message to display. Use this setting to display a message in case the Flex
configuration path is missing and ConfigPathMissingAction is set to 0 (Skip import) .
ConfigPathMissingMessageTimeout Set a timeout in seconds. Use this setting to configure how long the message remains
displayed. The user can close the message manually at any time.
ArchivePathMissingAction Set to one of the following values when the profile archives path is not available at
logon:
n 0 (Skip import). Allows the user to log in. The user profile archives are not
imported and the user environment settings are not applied.
n 1 (Apply user environment settings). Applies the user environment settings. The
user profile archives are not imported.
n or 1000 (Logoff). Automatically logs off the user.
VMware, Inc. 44
Installing and Configuring VMware Dynamic Environment Manager
Setting Value
ArchivePathMissingMessage Set a message to display. Use this setting to display a message in case the profile
archives path is missing and ArchivePathMissingAction is set to 1 (Apply user
environment settings).
ArchivePathMissingMessageTimeout Set a timeout in seconds. Use this setting to configure how long the message remains
displayed. The user can close the message manually at any time.
Note If the Flex configuration files path is not available, the user is immediately logged off by default. If
the profile archives path is not available, only the user environment settings are applied by default and no
user profile archives are imported.
Setting Value
Setting Value
DisableForAdmin Set this value to 1 to disable all VMware Dynamic Environment Manager functionality for
local administrators.
DisableForGroupMembers Set this value to a comma-separated list of groups in Domain\GroupName format. All
VMware Dynamic Environment Manager functionality is disabled for members of those
groups.
VMware, Inc. 45
Installing and Configuring VMware Dynamic Environment Manager
ConfigPathMissingAction="0"
ArchivePathMissingAction="1"
AppBlockingEventLog="1"
EventLog="1"
EventLogAsync="1"
EventLogDirectFlexRefresh="1"
EventLogUEMRefresh="1"
/>
</userEnvironmentSettings>
Note This sample configuration file is available in the NoAD Mode folder in the download package.
VMware, Inc. 46
FlexEngine Command-Line
Arguments 7
When FlexEngine starts, it first reads its Group Policy configuration and then FlexEngine reads the
command-line arguments specified.
Note Command-line arguments override the settings provided through Group Policy.
n Operation Modes
FlexEngine Operations
FlexEngine can perform two main operations:
FlexEngine Arguments
You can further configure the operations by using additional arguments, some of which are optional (●),
some of which mandatory (x):
Argument -s -r Description
-S ●² ●² First argument value silo path specifies silo-specific configuration files to use. Second
argument value suffix specifies suffix to use in profile archives and backup folders, if suffix is
an empty string, the last folder of silo path is used as suffix.
VMware, Inc. 47
Installing and Configuring VMware Dynamic Environment Manager
Argument -s -r Description
-R ● ● Indicates that the config directory (and the silo path directory, if configured) should be
processed recursively; that is, also processes Flex configuration files in subfolders. Ignored for
file-based operations.
-b ● Argument value backup path specifies the location for profile archives backups. If not specified,
no backups are created.
-C ● Enables compression for profile archives. FlexEngine can read both compressed and
uncompressed archives regardless of this setting. This switch only controls the creation of
archives.
-F ●² ●² Indicates that export of the settings should be performed always, regardless of whether the
previous import was successful.
-M ●² ●² Argument value log size specifies the maximum size of the log file in kB. If the log file is larger
than that size at the start of an import or export action, the log file is cleared.
-H ●² Marks the profile archives folder and the backup folder, if configured, as hidden after a path-
based export.
-f ● ● Argument value log file specifies the name of the log file.
-l ● ● Argument value log level specifies what information should be logged. log level can be
DEBUG, INFO, WARN (the default), ERROR, or FATAL.
Legend:
x Mandatory.
● Optional.
Operation Modes
The -s and -r operations can operate on a single profile archives, which is called file-based mode. They
can also operate on a directory of profile archives, which is called path-based mode. This operation mode
VMware, Inc. 48
Installing and Configuring VMware Dynamic Environment Manager
is determined from the path that is specified as the next argument, –s \\...\ie.zip as compared to –s
\\...\...\Archives for instance. If no path is specified, the profile archives policy setting is used.
For a particular operation mode, some of the other arguments must follow the same pattern:
You can also reset an argument that is configured through policy, in effect making it unconfigured, by
appending a hyphen (-) to the command-line argument. For instance, if you have configured a backup
path through policy, but want to run an export without creating backups, you can specify -b-.
You can reset the following arguments: -S, -R, -b, -B, -Bd, -C, -c, -F, -M, -L, -H, -v, -f, -l, -rw, -rk,
-rm, and -ra.
To correctly apply Horizon Smart Policies in such a situation, configure logon and logoff scripts with an
extra command-line argument.
VMware, Inc. 49
Installing and Configuring VMware Dynamic Environment Manager
-OfflineImport
When a computer is offline and a user logs in with cached credentials, Group Policy client-side extensions
do not run. If FlexEngine is configured to run as a Group Policy extension, no import takes place in such a
situation.
As a fallback approach (where a user logs on when the computer is offline), configure a logon script but
instead of the -r script parameter, specify -OfflineImport. For information about configuring a logon
script see Configure FlexEngine to Run from a Logon Script.
If FlexEngine runs with this argument, it checks whether an import already took place. If so, it exits quietly.
If not, a path-based import is performed by using the configuration from the VMware Dynamic
Environment Manager Group Policy.
-DirectFlexRefresh
Tip The example path to FlexEngine.exe is based on the default installation directory. The default
directory does not apply in the following cases.
n You selected a different directory when you installed VMware Dynamic Environment Manager.
For example, if you used the Horizon Cloud Import Image workflow or the Horizon Agent Installer to
install VMware Dynamic Environment Manager for a virtual machine located in Microsoft Azure, the
installation path is different. For details, see Creating Desktop Images for a Horizon Cloud Pod in
Microsoft Azure.
If VMware Dynamic Environment Manager is installed in a non-default directory, adjust the path
accordingly.
DirectFlex configuration is processed during logon. If you add Flex configuration files with DirectFlex
enabled, or modify DirectFlex-related settings of existing files while a user is logged on, these changes
are not automatically picked up during the session.
This might not be a problem, but you can force an update by running the following command in the user's
session:
-UemRefresh
User environment settings are applied at logon. For certain types of settings, you can perform a refresh
while the user is logged in.
-UemRefresh Refresh the VMware Dynamic Environment Manager file type associations, shortcuts,
and printer mappings.
-UemRefreshFtas Refresh the VMware Dynamic Environment Manager file type associations.
VMware, Inc. 50
Installing and Configuring VMware Dynamic Environment Manager
-UemRefreshApplicationBlocking Refresh the VMware Dynamic Environment Manager application blocking settings.
-UemRefreshHorizonPolicy Refresh the VMware Dynamic Environment Manager Horizon Smart Policies.
Note You can refresh Horizon Smart Policies at any time. However, the Horizon
remote desktop experience components determine if the changes actually take effect
at that time.
-UemRefreshPrivilegeElevation Refresh the VMware Dynamic Environment Manager privilege elevation settings.
VMware, Inc. 51