Users Guide
else {
echo 'VolumeNames:' $TransferPostscriptParameterObject.VolumeNames
echo 'ShadowCopyType:' $TransferPostscriptParameterObject.ShadowCopyType
echo 'ForceBaseImage:' $TransferPostscriptParameterObject.ForceBaseImage
echo 'IsLogTruncation:' $TransferPostscriptParameterObject.IsLogTruncation
}
PreExportScript.ps1
Das Skript PreExportScript wird auf dem Core vor einem Exportjob ausgeführt.
Beispiel: PreExportScript
# receiving parameter from export job
param([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 logged
if($ExportJobRequestObject -eq $null) {
echo 'ExportJobRequestObject parameter is null'
}
else {
echo 'Location:' $ExportJobRequestObject.Location
echo 'Priority:' $ExportJobRequestObject.Priority
}
PostExportScript.ps1
Das Skript PostExportScript wird auf dem Core nach einem Exportjob ausgeführt.
ANMERKUNG:
Es gibt keine Eingabeparameter für PostExportScript, wenn es für die einmalige Ausführung auf der exportierten
geschützten Maschine nach der Inbetriebnahme verwendet wurde. Reguläre geschützte Maschinen sollten dieses Skript im
PowerShell-Skriptordner als PostExportScript.ps1 enthalten.
Beispiel: PostExportScript
# receiving parameter from export job
param([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 logged
if($ExportJobRequestObject -eq $null) {
echo 'ExportJobRequestObject parameter is null'
}
Erweitern des Rapid Recovery-Jobs über Scripting
473










