Devenv命令和密码

时间:2018-04-24 17:27:07

标签: visual-studio powershell ssis azure-pipelines

我在2017年的Visual Studio上有一个包含ssis的解决方案。 我正在尝试在vsts上构建自动构建和部署。 我在powershell脚本中使用了devenv,但我的问题是我的包是EncryptSensitiveWithPassword。我不知道如何添加密码。

这是我使用的,它会跳转一个窗口询问密码。

devenv“C:\ Users \ source \ repos \ LoadStageAreafromNap \ LoadStageArea \ LoadStageArea \ LoadStageArea.sln”/ build

2 个答案:

答案 0 :(得分:1)

您可以尝试通过ssis-build tool构建项目。

答案 1 :(得分:0)

修订回答

我重新创建了你描述的场景:

  1. 使用相应的解决方案创建了一个新的Integration Services项目。
  2. 创建了一个新的SSIS包。
  3. 在程序包中添加了一个脚本任务。
  4. 为项目添加了密码
    1. 右键单击项目。
    2. 从上下文菜单中选择属性
    3. ProtectionLevel 设置为“EncryptSensitiveWithPassword”
    4. 点击椭圆(...)
    5. 输入密码“test”。
    6. 点击确定
  5. 为包添加密码。
    1. 右键单击“控制流面”。
    2. 从上下文菜单中选择属性
    3. ProtectionLevel 设置为“EncryptSensitiveWithPassword”
    4. 点击 PackagePassword 字段中的椭圆。
    5. 输入密码“test”。
    6. 点击确定
  6. 文件菜单中选择全部保存

    注意:我的路径中有devenv.exe

  7. 从Powershell提示符处执行以下命令:

    &安培; devenv“$(pwd)\ troubleshooting.sln”/ Build Development / Project“$(pwd)\ troubleshooting \ troubleshooting.dtproj”

  8. enter image description here

    关于此提示,您无能为力。在Visual Studio中打开解决方案(或特定项目)时。你得到相同的提示。无法将此密码作为命令行devenv接口传递。

    我找到了article,其中作者使用MSBuild而不是DevEnv来构建启用了EncryptSensitiveWithPassword的SSIS项目。这篇文章有两个我想强调的片段:

      

    使用devenv.exe进行构建只要您的项目正常就可以正常工作   保护级别不是EncryptSensitiveWithPassword,或   EncryptAllWithPassword。

         

    ...如果您将保护级别更改为其中之一   EncryptSensitiveWithPassword或EncryptAllWithPassword,一个窗口会   弹出并要求您输入保护密码。没有开关   允许您从命令行提供密码。

    有很多事情要发生。如果你想走这条路,你可以为你做好工作。