You can configure svdriver with registry keys and optionally by configuring the values in the HKLM\SYSTEM\CurrentControlSet\Services\svdriver\Parameters registry key.

Configure svdriver with the following registry keys:

Registry Key Type Description
AllowInstallerModification REG_DWORD When the value is 0, an end user is not allowed to modify, update, or uninstall an application, which is either installed on the base image or delivered as an application package, from Add or remove programs in the Control Panel.

By default, the value of the registry key is 0.

When the value is 1, the user is allowed to modify, update, or uninstall the applications.

For more information about the protection mechanism where an end user is not allowed to perform any of the operations on an application which is installed on the base or delivered as an application package, see Uninstalling Applications: This action is not allowed for application <application_name>.

DriveLetterSettings REG_DWORD The value for DriveLetterSettings is in a hexadecimal format, and any number of flags might be combined to implement multiple parameters.
EnableHookInjection REG_DWORD Use this parameter to allow or disallow injecting svhook**.dll to a process.

By default, the value of EnableHookInjection is 1.

To determine which process svhook**.dll must be injected to, use the HookInjectionWhitelist parameter.

To deactivate EnableHookInjection parameter, set the value to 0.

Note: Any changes to EnableHookInjection takes effect only after the agent computer reboots.

For more information about the HookInjectionWhitelist parameter, see the corresponding row for the parameter in this table.

EnableRegValueMerging REG_DWORD If this value is 1, merge certain registry values such as AppInitDlls across volumes. This action is additive across the volumes.
EnableShortFileName REG_DWORD For legacy AppStacks created earlier than App Volumes 2.3, set this parameter to 0 to deactivate DOS short names.
HookInjectionWhitelist REG_MULTI_SZ App Volumes agent uses this parameter to determine the process to which svhook**.dll must be injected to.
Use the following syntax for this parameter:
<process_path> | <DLL_path> | <command-line_arguments>
  • <process_path> - App Volumes agent injects svhook**.dll to the process as mentioned in the <process_path>.

    svhook32.dll is injected to a 32-bit process and svhook64.dll is injected to a 64-bit process.

  • <DLL_path> - when the DLL present in the <DLL_path> is loaded by the process as specified in the <process_path>, then only svhook**.dll is injected to the process.
    Note: <DLL_path>-based injection affects process start time.

    <DLL_path> argument is optional. You can leave the argument blank (| |).

  • command-line_arguments - command-line arguments used when running the process as mentioned in the <process_path>.

    App Volumes agent injects svhook**.dll only if the command as mentioned in this syntax is used when running the process.

Note: <process_path>, <DLL_path>, and command-line_arguments support wildcard pattern matching.
Consider the following example:
*\svchost.exe | *\user32.dll | -netsvc
*\svchost.exe is the process path, *\user32.dll is the DLL path, and -netsvc is the command-line argument. Both the process path and DLL path contain the wildcard character (*) for pattern matching. This usage indicates that svchost.exe process is run from any location in the file system and user32.dll located any where in the file system is loaded by the process. Here are some scenarios:
  • *\svchost.exe | *\user32.dll | -netsvc

    App Volumes agent injects svhook**.dll to svchost.exe only if user32.dll is loaded by svchost.exe and -netsvc is the command-line argument used when running svchost.exe.

  • *\svchost.exe | *\user32.dll | *

    App Volumes agent injects svhook**.dll to svchost.exe only if user32.dll is loaded by svchost.exe for any command-line argument used when running svchost.exe.

    * - indicates any command used during process creation

  • *\svchost.exe | *\user32.dll

    App Volumes agent injects svhook**.dll to svchost.exe only if user32.dll is loaded by svchost.exe and no command-line arguments are provided.

  • *\svchost.exe | | -netsvc

    App Volumes agent injects svhook**.dll to svchost.exe only if -netsvc is used when running svchost.exe.

  • *\svchost.exe | | *

    App Volumes agent injects svhook**.dll to svchost.exe for any command-line argument used when running svchost.exe.

  • *\svchost.exe | |

    App Volumes agent injects svhook**.dll to svchost.exe only if no command-line arguments are provided.

Note: Any changes to HookInjectionWhitelist takes effect only after the agent computer reboots.
MinimizeReplication REG_DWORD Configure how changes are preserved in a writable volume. If this value is 1, only changes to data are preserved in a writable volume. If this value is 0, changes to data and file attributes (hidden, Read Only, and, so on) permissions are preserved in writable volume.
ReorderTimeOutInSeconds REG_DWORD Configure the wait time for all volumes to be attached and processed based on Order Precedence set from within App Volumes Manager. The timeout value is in seconds.