Managing MED-V Workspace Configuration Settings

Microsoft Enterprise Desktop Virtualization (MED-V) 2.0 stores its configuration settings in the registry. The information we include here about the registry may help you better manage your MED-V services.

MED-V uses the following search path when looking for the resultant settings values:

MED-V first looks in the machine policy.

If the value is not found, MED-V looks in the user policy.

If the value is not found, MED-V looks in the HKEY_LOCAL_MACHINE\System hive.

If the value is not found, MED-V looks in the HKEY_CURRENT USER registry hive.

If the value is still not found, MED-V uses the default.

A general best practice is to set the value in the HKEY_LOCAL_MACHINE\System hive or in the machine policy. But if you want the end user to be able to configure a particular setting, then you should leave it out.

Note Before you deploy your MED-V workspaces, you can use a script editor to change the Windows PowerShell script (.ps1 file) that the MED-V workspace packager created. For more information, see Configuring Advanced Settings by Using Windows PowerShell.

After you have deployed your MED-V workspaces, you can change certain MED-V configuration settings by editing the registry entries.

This section lists all the configurable MED-V registry keys and explains their uses.

Diagnostics Key

The following table provides information about the registry values associated with the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Medv\v2\Diagnostics key.

Name Type Data/Default Description

EventLogLevel

DWORD

Default=3

The type of information that is logged in the event log. Levels include the following: 0 (None), 1 (Error), 2 (Warning), 3 (Information), 4 (Debug).

Fts Key

The following table provides information about the registry values associated with the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Medv\v2\Fts key.

Name Type Data/Default Description

AddUserToAdminGroupEnabled

DWORD

Default=0

Configures whether first time setup automatically adds the end user to the administrator's group. 0 = false; 1 = true.

0 = false: First time setup does not automatically add the end user to the administrator's group.

1 = true: First time setup automatically adds the end user to the administrator's group.

ComputerNameMask

SZ

MEDV*

The computer name mask that is used to create the guest virtual machine's computer name.

The mask can contain a %username% tag to insert the username as part of the computer name. Likewise, the %hostname% tag inserts the name of the host computer.

Every "#" character in the mask is replaced by a random digit. An asterisk (*) character at the end of the mask is replaced by random alphanumeric characters.

A specific number of characters from %hostname% and %username% can be captured by using square brackets. For example, "%username%[3]" would use the first three characters of the username.

DeleteVMStateTimeout

DWORD

Default=90

The time-out value, in seconds, when first time setup tries to delete the virtual machine. Range = 0 to 2147483647.

DetachVfdTimeout

DWORD

Default=120

The time-out value, in seconds, when first time setup tries to detach the virtual floppy disk from the virtual machine. Range = 0 to 2147483647.

DialogUrl

SZ

Customizable URL that links to internal webpage and is displayed by first time setup dialog messages.

ExplorerTimeout

DWORD

Default=900

The time-out value, in seconds, that first time setup waits for Windows Explorer. Range = 0 to 2147483647.

FailureDialogMsg

MULTI_SZ

Message is found in resource file

Customizable message that is displayed to the end user when first time setup cannot be completed.

GiveUserGroupRightsMaxRetryCount

DWORD

Default=3

The maximum number of times that MED-V tries to give an end user group rights. Exceeding the specified retry value without being able to successfully give an end user group rights most likely causes a virtual machine preparation failure that is then subject to the MaxRetryCount value. Range = 0 to 2147483647.

GiveUserGroupRightsTimeout

DWORD

Default=300

The time-out value, in seconds, when giving a user group rights. Range = 0 to 2147483647.

LogFilePaths

MULTI_SZ

A list of the log file paths that MED-V collects during first time setup.

MaxPostponeTime

DWORD

Default=120

The maximum number of hours that first time setup can be postponed by the end user. Range = 0 to 2147483647.

MaxRetryCount

DWORD

Default=3

The maximum number of times that MED-V tries to prepare a virtual machine if each attempt ends in a failure other than a software error. When virtual machine preparation fails and the number of first time setup retries is exceeded, then MED-V informs the end user about the failure and does not give the option to retry. The count is re-set every time that MED-V is started. Range = 0 to 2147483647.

Mode

SZ

Default=Unattended

Configures how first time setup interacts with the user. Possible values are as follows:

Attended. The end user must enter information during first time setup.

Note

If you created the Sysprep.inf file so that Mini-Setup requires user input to complete, then you must select Attended mode or problems might occur during first time setup.

Unattended. The virtual machine is not shown to the end user during first time setup, but the end user is prompted before first time setup starts.

Silent. The virtual machine is not shown to the end user at all during first time setup.

NonInteractiveRetryTimeoutInc

DWORD

Default=15

The time-out value, in minutes, that first time setup must be completed in first time setup interactive mode when re-attempting setup. Range = 0 to 2147483647.

NonInteractiveTimeout

DWORD

Default=45

The time-out value, in minutes, that first time setup must be completed in first time setup interactive mode. Range = 0 to 2147483647.

PostponeUtcDateTimeLimit

SZ

The date and time, in UTC DateTime format, that first time setup can be postponed. Enter in the format "yyyy-MM-dd hh:mm" with hours specified by using the 24-hour clock standard.

RetryDialogMsg

MULTI_SZ

Message is found in resource file

Customizable message that is displayed to the end user when first time setup must re-attempt setup.

SetComputerNameEnabled

DWORD

Default=0

Configures whether the ComputerName entry under the [UserData] section of the Sysprep.inf file in the guest should be updated according to the specified ComputerNameMask. 0 = false; 1 = true.

0 = false: The ComputerName entry in the Sysprep.inf file is not updated according to the ComputerNameMask.

1 = true: The ComputerName entry in the Sysprep.inf file is updated according to the ComputerNameMask.

SetJoinDomainEnabled

DWORD

Default=0

Configures whether the JoinDomain setting under the [Identification] section of the Sysprep.inf file in the guest should be updated to match the settings on the host. 0 = false; 1 = true.

0 = false: The JoinDomain setting in the Sysprep.inf file is not updated to match the settings on the host.

1 = true: The JoinDomain setting in the Sysprep.inf file is updated to match the settings on the host.

SetMachineObjectOUEnabled

DWORD

Default=0

Configures whether the MachineObjectOU setting under the [Identification] section of the Sysprep.inf file in the guest is updated to match the host. 0 = false; 1 = true.

0 = false: The MachineObjectOU setting in the Sysprep.inf file is not updated to match the settings on the host.

1 = true: The MachineObjectOU setting in the Sysprep.inf file is updated to match the settings on the host.

SetRegionalSettingsEnabled

DWORD

Default=0

Configures whether the settings under the [RegionalSettings] section of the Sysprep.inf file in the guest are updated to match the host. 0 = false; 1 = true.

Note

By default, the setting for TimeZone in the guest is always synchronized with the TimeZone setting in the host.

0 = false: The settings under the [RegionalSettings] section of the Sysprep.inf file in the guest are not updated to match the host.

1 = true: The settings under the [RegionalSettings] section of the Sysprep.inf file in the guest are updated to match the host.

SetUserDataEnabled

DWORD

Default=0

Configures whether the FullName and the OrgName settings under the [UserData] section of the Sysprep.inf file in the guest are updated to match the settings on the host. 0 = false; 1 = true.

0 = false: The FullName and OrgName settings in the Sysprep.inf file are not updated to match the settings on the host.

1 = true: The FullName and OrgName settings in the Sysprep.inf file are updated to match the settings on the host.

StartDialogMsg

MULTI_SZ

Message is found in resource file

Customizable message that is displayed to the end user when first time setup is ready to start.

TaskCancelTimeout

DWORD

Default=30

The time-out value, in seconds, that first time setup waits for a response from the virtual machine for a Cancel operation. Range = 0 to 2147483647.

TaskVMTurnOffTimeout

DWORD

Default=60

The time-out value, in seconds, that first time setup waits for the virtual machine to shut down. Range = 0 to 2147483647.

UpgradeTimeout

DWORD

Default=600

The time, in seconds, before an attempted upgrade of the MED-V Guest Agent software times out. Range = 0 to 2147483647.

UserExperience Key

The following table provides information about the registry values associated with the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Medv\v2\UserExperience key and the HKEY_CURRENT_USER\Software\Microsoft\Medv\v2\UserExperience key.

Name Type Data/Default Description

AppPublishingEnabled

DWORD

Default=1

Configures whether application publication from the guest to the host is enabled. 0 = false; 1 = true.

0 = false: Disables application publishing from the guest to the host.

1 = true: Enables application publishing from the guest to the host.

AudioSharingEnabled

DWORD

Default=1

Configures whether the sharing of the audio I/O device between the guest and the host is enabled. 0 = false; 1 = true.

0 = false: Disables the sharing of the audio I/O device between the guest and the host.

1 = true: Enables the sharing of the audio I/O device between the guest and the host.

ClipboardSharingEnabled

DWORD

Default=1

Configures whether the sharing of the Clipboard between the guest and the host is enabled. 0 = false; 1 = true.

0 = false: Disables the sharing of the Clipboard between the guest and the host.

1 = true: Enables the sharing of the Clipboard between the guest and the host.

DialogTimeout

DWORD

Default=300

The time, in seconds, before the first time setup Start Dialog times out. Range = 0 to 2147483647.

HideVmTimeout

DWORD

Default=30

The time-out value, in minutes, that the full-screen virtual machine window is hidden from the end user during a long logon attempt.

LogonStartEnabled

DWORD

Default=1

Configures whether the guest should be started when the end user logs on to the desktop or when the first guest application is started. 0 = false; 1 = true.

0 = false: The guest is started when the first guest application is started.

1 = true: The guest is started when the end user logs on to the desktop.

PrinterSharingEnabled

DWORD

Default=1

Configures whether the sharing of printers between the guest and the host is enabled. 0 = false; 1 = true.

0 = false: Disables the sharing of printers between the guest and the host.

1 = true: Enables the sharing of printers between the guest and the host.

RebootAbsoluteDelayTimeout

DWORD

Default=1440

The time-out value, in minutes, that first time setup waits for a restart. Range = 0 to 2147483647.

RedirectUrls

MULTI_SZ

Specified URL list

Specifies a list of URLs to be redirected from the host to the guest.

SmartCardLogonEnabled

DWORD

Default=0

Configures whether smart cards can be used to authenticate users to MED-V. 0 = false; 1 = true.

0 = false: Does not let Smart Cards authenticate end users to MED-V.

1 = true: Lets Smart Cards authenticate end users to MED-V.

Important

If SmartCardLogonEnabled and CredentialCacheEnabled are both enabled, SmartCardLogonEnabled overrides CredentialCacheEnabled.

SmartCardSharingEnabled

DWORD

Default=1

Configures whether the sharing of Smart Cards between the guest and the host is enabled. 0 = false; 1 = true.

0 = false: Disables the sharing of Smart Cards between the guest and the host.

1 = true: Enables the sharing of Smart Cards between the guest and the host.

USBDeviceSharingEnabled

DWORD

Default=1

Configures whether the sharing of USB devices between the guest and the host is enabled. 0 = false; 1 = true.

0 = false: Disables the sharing of USB devices between the guest and the host.

1 = true: Enables the sharing of USB devices between the guest and the host.

VM Key

The following table provides information about the registry values associated with the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Medv\v2\VM key and the HKEY_CURRENT_USER\Software\Microsoft\Medv\v2\VM key.

Name Type Data/Default Description

CloseAction

SZ

Default=HIBERNATE

The action that the virtual machine performs after the last application that is running is closed. This setting is ignored if the LogonStartEnabled value is enabled. Possible options are as follows:

HIBERNATE . This option releases all physical resources that the virtual machine is using, such as memory and CPU, and saves the state of all running applications and operations.

SHUTDOWN . This option shuts down the guest operating system safely and then releases all physical resources that the virtual machine is using, such as memory and CPU.

TURN-OFF. This option can cause data loss because it is the same as turning off the power button or pulling out the power cord on a physical computer. Use this option only if you cannot use one of the other two options.

GuestMemFromHostMem

MULTI_SZ

378, 512, 1024, 1536, 2048

A list of memory (MB) values for the guest. This value is used to determine how much RAM is available to the guest. Combined with HostMemToGuestMem, a lookup table is created to determine how much RAM to allocate on the guest virtual machine. Possible values can be from 128 to 3712.

GuestUpdateDuration

DWORD

Default=240

The number of minutes that MED-V should keep the guest awake for automatic updating, starting at the time specified in the GuestUpdateTime value. Range = 0 to 1440. Setting this value to zero (0) disables the guest patching functionality.

For more information about guest patching for automatic updating, see Managing Automatic Updates for MED-V Workspaces.

GuestUpdateTime

SZ

Default=00:00

The hour and minute each day when MED-V should wake up the guest for automatic updating, by using the 24-hour clock standard. Specify the time in the format HH:MM

For more information about guest patching for automatic updating, see Managing Automatic Updates for MED-V Workspaces.

HostMemToGuestMem

MULTI_SZ

1024, 2048, 4096, 8192, 16384

A list of memory (MB) values for the guest, determined by the RAM available on the host. Combined with GuestMemFromHostMem, a lookup table is created to determine how much RAM to allocate on the guest virtual machine. Possible values can be from 1024 to 16384.

HostMemToGuestMemCalcEnabled

DWORD

Default=1

Configures whether the memory allocated for the guest is calculated from the memory present on the host. 0 = false; 1 = true.

0 = false: The memory allocated for the guest is not calculated from the memory present on the host.

1 = true: The memory allocated for the guest is calculated from the memory present on the host.

Memory

DWORD

Default=512

The RAM (MB) that should be allocated for the guest virtual machine. This setting is ignored if the HostMemToGuestMemEnabled setting is enabled. Range=128 to 2048.

MultiUserEnabled

DWORD

Default=0

Configures whether multiple users share the same MED-V workspace. 0 = false; 1 = true.

0 = false: Multiple users do not share the same MED-V workspace.

1 = true: Multiple users share the same MED-V workspace.

NetworkingMode

SZ

Default=NAT

The kind of network connection used on the guest. Possible values are as follows:

Bridged. MED-V has its own network address, typically obtained through DHCP.

NAT. MED-V uses Network Address Translation (NAT) to share the host's IP for outgoing traffic.

TaskTimeout

DWORD

Default=600

A general time-out value, in seconds, that MED-V waits for a task to be completed, such as restarting and shutting down. Range = 0 to 2147483647.

Guest Registry Settings

This section lists the configurable MED-V guest registry keys and explains their uses.

v2

The following table provides information about the guest registry value associated with the HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Medv\v2\ key.

Name Type Data/Default Description

EnableGPWorkarounds

DWORD

Default=1

Configures how MED-V handles the keys BufferPolicyReads and GroupPolicyMinTransferRate.

By default, MED-V sets these keys as follows:

BufferPolicyReads=1 and GroupPolicyMinTransferRate=0.

Create the EnableGPWorkarounds key, if it is necessary, and set the key to zero if you do not want MED-V to change the default settings of BufferPolicyReads and GroupPolicyMinTransferRate.

Note

If your MED-V workspace is running in NAT mode, EnableGPWorkarounds affects the registry keys BufferPolicyReads and GroupPolicyMinTransferRate. If your MED-V workspace is running in BRIDGED mode, EnableGPWorkarounds only affects the registry key BufferPolicyReads.

1=true: MED-V sets the keys BufferPolicyReads=1 and GroupPolicyMinTransferRate=0 (if running in NAT mode) or just BufferPolicyReads=1 (if running in BRIDGED mode).

0=false: MED-V does not make any changes to the keys BufferPolicyReads and GroupPolicyMinTransferRate.

Manage MED-V Workspace Applications

Manage MED-V URL Redirection

Manage MED-V Workspace Settings