Powershell write action with one overridable parameter

Microsoft.Windows.SystemCenterDPM2010.ClientAutoDeployment.PowerShellWriteActionWithOneOverridableParam (WriteActionModuleType)

Element properties:

TypeWriteActionModuleType
IsolationAny
AccessibilityInternal
RunAsDefault
InputTypeSystem.BaseData

Member Modules:

ID Module Type TypeId RunAs 
PowerShellWriteAction WriteAction Microsoft.Windows.PowerShellWriteAction Default

Overrideable Parameters:

IDParameterTypeSelector
PGSettingsXmlstring$Config/PGSettingsXml$

Source Code:

<WriteActionModuleType ID="Microsoft.Windows.SystemCenterDPM2010.ClientAutoDeployment.PowerShellWriteActionWithOneOverridableParam" Accessibility="Internal" Batching="false">
<Configuration>
<IncludeSchemaTypes>
<SchemaType>Windows!Microsoft.Windows.PowerShellSchema</SchemaType>
</IncludeSchemaTypes>
<xsd:element minOccurs="1" name="PGSettingsXml" type="xsd:string"/>
</Configuration>
<OverrideableParameters>
<OverrideableParameter ID="PGSettingsXml" Selector="$Config/PGSettingsXml$" ParameterType="string"/>
</OverrideableParameters>
<ModuleImplementation Isolation="Any">
<Composite>
<MemberModules>
<WriteAction ID="PowerShellWriteAction" TypeID="Windows!Microsoft.Windows.PowerShellWriteAction">
<ScriptName>ModifyPGSettings.ps1</ScriptName>
<ScriptBody><Script>param($dpmServerName,$pgSettings)

#Get the DPM bin path
$installPath = Get-ItemProperty "HKLM:\SOFTWARE\Microsoft\Microsoft Data Protection Manager\Setup" | ForEach-Object {Get-ItemProperty $_.InstallPath}
$autoDeploymentScriptPath = $installPath.FullName + "bin\AutoDeployment-UpdateProtection.ps1"

#prepare the argument list
$localArgs = "-File `" " + $autoDeploymentScriptPath + "`" -DPMServerName " + $dpmServerName + " -PGSettingsXML `"" + $pgSettings + "`""
#configure clients for protection
Start-Process Powershell.exe -ArgumentList $localArgs -NoNewWindow -Wait

</Script></ScriptBody>
<Parameters>
<Parameter>
<Name>DPMServerName</Name>
<Value>$Target/Property[Type="Microsoft.Windows.SystemCenterDPM2010.ClientAutoDeployment.DPMServer"]/DPMServerName$</Value>
</Parameter>
<Parameter>
<Name>PGSettings</Name>
<Value>$Config/PGSettingsXml$</Value>
</Parameter>
</Parameters>
<TimeoutSeconds>10800</TimeoutSeconds>
</WriteAction>
</MemberModules>
<Composition>
<Node ID="PowerShellWriteAction"/>
</Composition>
</Composite>
</ModuleImplementation>
<InputType>System!System.BaseData</InputType>
</WriteActionModuleType>