Paso de parámetros en PowerShell 2.0
-
21-09-2019 - |
Pregunta
Tengo el siguiente ensayo definido en un guión psake construcción:
task package -depends create_wix_content_fragment {
& $candle -dProductName=Foo `
-dVersion=$version `
-dProductID=0cd64670-5769-4e34-8b21-c6242e7ca5a2 `
-dUpgradeCode=307601e9-4eea-4b5c-938a-354115d5c419 `
-dAppPool=FooAppPool `
-dInstallDirectory=Foo `
-ext WixIISExtension `
-ext WixUIExtension `
$wix_shell `
$build_output_dir\WebContent.wxs
}
Por alguna razón Powershell pasa la variable $ version como una cadena "$ versión" literal en lugar del valor de "1.0.0.0".
¿Cómo puedo evitar esto?
Solución
¡Gracias, fue capaz de obtener los parámetros correctos mediante la modificación de la anterior como la siguiente:
task package -depends create_wix_content_fragment {
$version_parameter = "-dVersion={0}" -f $version
& $candle -dProductName=Foo `
$version_parameter `
-dProductID=0cd64670-5769-4e34-8b21-c6242e7ca5a2 `
-dUpgradeCode=307601e9-4eea-4b5c-938a-354115d5c419 `
-dAppPool=FooAppPool `
-dInstallDirectory=Foo `
-ext WixIISExtension `
-ext WixUIExtension `
$wix_shell `
$build_output_dir\WebContent.wxs
}
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow