Вопрос

У меня есть следующий тест, определенный в скрипте сборки psake:

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
}

По какой-то причине Powershell передает переменную $version как литеральную строку «$version» вместо значения «1.0.0.0».

Как я могу это предотвратить?

Это было полезно?

Решение

Понял, смог получить правильные параметры, изменив приведенное выше следующим образом:

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
}
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top