App Volumes agent runs batch scripts either when an application package or a Writable Volume is enabled. Applications are enabled during user login or computer startup. In App Volumes 4, scripts are application-centric.
If certain actions must be performed at appropriate stages of application enablement, administrators can add batch scripts.
Batch Scripts Supported in the Latest Version of App Volumes
App Volumes triggers these batch scripts at various events as described in the table. Batch scripts are run in the security context of SYSTEM
account.
Script Name | Description |
---|---|
OnPreLoadApp.bat | Called before an application is initialized for the first user session. |
OnPostLoadApp.bat | Called after an application is initialized for the first user session. |
OnPreEnableApp.bat | Called before an application is enabled for each user session. |
OnPostEnableApp.bat | Called after an application is enabled for each user session. |
OnPreDisableApp.bat | Called before an application is disabled for each user session. |
OnPostDisableApp.bat | Called after an application is disabled for each user session. |
OnPreUnloadApp.bat | Called before an application is uninitialized for the last user session. |
OnPostUnloadApp.bat | Called after an application is uninitialized for the last user session. |
Scope of Batch Script Files
The following table shows the scope, location, and behavior of the batch scripts when present in the computer (where the App Volumes Agent is installed).
Scope | Scope Location | Behavior of batch script files in each scope |
---|---|---|
Global | %SVAgent%\Custom %SVAgent%\Custom\system %SVAgent%\Custom\provisioning %SVAgent%\Custom\app |
Batch scripts when present at any of these locations are run for every Application. |
User Writable Volume | \[Writable VolumeID GUID]\Config\Writable | Batch scripts when present at \Config\Writable are run for the assigned user. |
Application Package | \[AppID GUID]\Config\app | Batch scripts when present at this location are run only for that particular Application. |
Batch Scripts Timeout
Batch scripts run serially and a new script does not start until an existing script has run to completion. To prevent a script from blocking login or logout processes, you can specify a timeout.
Wait times are defined in seconds and can be specified by creating a corresponding registry value of type REG_DWORD
, in the following registry key: HKLM\SYSTEM\CurrentControlSet\services\svservice\Parameters.