Preexportscript.ps1The PreExportScript is executed on the Core side prior to any export job.# receiving parameter from export jobparam([object]$ExportJobRequest)# building path to Core's Common.Contracts.dll and loading this assembly$regLM = [Microsoft.Win32.Registry]::LocalMachine$regLM =$regLM.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AppRecovery Core 5')$regVal = $regLM.GetValue('InstallLocation')$regVal = $regVal + 'CoreService\Common.Contracts.dll'[System.Reflection.Assembly]::LoadFrom($regVal) | out-null# Converting input parameter into specific object$ExportJobRequestObject = $ExportJobRequest -as[Replay.Core.Contracts.Export.ExportJobRequest]# Working with input object. All echo's are loggedif($ExportJobRequestObject -eq $null) {echo 'ExportJobRequestObject parameter is null'}else {echo 'Location:' $ExportJobRequestObject.Locationecho 'Priority:' $ExportJobRequestObject.StorageConfiguration}Postexportscript.ps1The PostExportScript is executed on the Core side after any export job.NOTE: There are no input parameters for the PostExportScript when used to execute once on the exported agentafter initial startup. The regular agent contains this script in the PowerShell script folder as PostExportScript.ps1.# receiving parameter from export jobparam([object]$ExportJobRequest)# building path to Core's Common.Contracts.dll and loading this assembly$regLM = [Microsoft.Win32.Registry]::LocalMachine$regLM = $regLM.OpenSubKey('SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\AppRecovery Core 5')$regVal = $regLM.GetValue('InstallLocation')$regVal = $regVal + 'CoreService\Common.Contracts.dll'[System.Reflection.Assembly]::LoadFrom($regVal) | out-null$regVal2 = $regLM.GetValue('InstallLocation')$regVal2 = $regVal2 + 'CoreService\Common.Contracts.dll'# Converting input parameter into specific object$ExportJobRequestObject = $ExportJobRequest -as[Replay.Core.Contracts.Export.ExportJobRequest]# Working with input object. All echo's are logged157