The PostTransferScript is run on the protected machine after transferring a snapshot.
Sample PostTransferScript
# receiving parameter from transfer job param([object] $TransferPostscriptParameter) # building path to Agent's Common.Contracts.dll and loading this assembly $regLM = [Microsoft.Win32.Registry]::LocalMachine $regLM = $regLM.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AppRecovery Agent 5') $regVal = $regLM.GetValue('InstallLocation') $regVal = $regVal + 'Common.Contracts.dll' [System.Reflection.Assembly]::LoadFrom($regVal) | out-null # Converting input parameter into specific object $TransferPostscriptParameterObject = $TransferPostscriptParameter -as [Replay.Common.Contracts.PowerShellExecution.TransferPostscriptParameter]; # Working with input object. All echo's are logged if($TransferPostscriptParameterObject -eq $null) { echo 'TransferPostscriptParameterObject parameter is null' } else { echo 'VolumeNames:' $TransferPostscriptParameterObject.VolumeNames echo 'ShadowCopyType:' $TransferPostscriptParameterObject.ShadowCopyType echo 'ForceBaseImage:' $TransferPostscriptParameterObject.ForceBaseImage echo 'IsLogTruncation:' $TransferPostscriptParameterObject.IsLogTruncation }