param ( $Action, [hashtable] $Arguments ) . "$PSScriptRoot/../../../Common/Software/PowerShell/Module.ps1"; . "$PSScriptRoot/../../../Common/Scripts/Software.ps1"; $parameters = Get-ModuleInstallerComponents "PinnedItem" -NativeOnly; foreach ($key in $PSBoundParameters.Keys) { $parameters.Add($key, $PSBoundParameters.TryGetValue($key)); } $arguments = $parameters.arguments; $arguments.Add("Installer", $parameters.installer); Start-SoftwareInstaller @parameters -Installer { param( [scriptblock] $Installer, [hashtable] $Arguments ) $feature = "NetFx3"; if ((Get-WindowsOptionalFeature -Online -FeatureName $feature).State -ne "Enabled") { Write-Host "Enabling ``$feature`` featureā€¦"; choco install --source windowsFeatures -y $feature; } & $Arguments.Installer @PSBoundParameters; }