我需要安静地安装具有功能选择的.msi。我已经确定了功能名称(通过记录详细输出并查找ADDLOCAL值),但在PowerShell中使用start-process或msiexec似乎不起作用。
我可以安装.msi没有使用start-process进行功能选择而没有问题。
以下是安装包含功能选择的.msi的PowerShell:
Start-Process "C:\packages\msodbcsql13_1x64.msi" /qn ADDLOCAL=SQL_SQLODBC_CORE -Wait
我收到的错误如下:
Start-Process:找不到接受的位置参数 参数'/ ADDLOCAL = SQL_SQLODBC_CORE'。在行:1个字符:1 + Start-Process“C:\ packages \ msodbcsql13_1x64.msi”/ qn / ADDLOCAL = SQL_SQL ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~ + CategoryInfo:InvalidArgument:(:) [Start-Process],ParameterBindingException + FullyQualifiedErrorId:PositionalParameterNotFound,Microsoft.PowerShell.Commands.StartProcessCommand
答案 0 :(得分:2)
不要太努力。 PowerShell是一个shell。只需键入命令即可运行命令,例如msiexec
。
msiexec /i C:\packages\msodbcsql13_1x64.msi ADDLOCAL=SQL_SQLODBC_CORE /qb
当然,引用任何包含空格的参数。