无法从PowerShell静默安装VSTO

时间:2018-05-29 07:15:15

标签: powershell vsto

尝试使用/silent开关安装VSTO但不安装vsto

这是有效的

$installerPath = Join-Path $env:CommonProgramFiles 'microsoft shared\VSTO\10.0\VSTOInstaller.exe' $parameter = @('/install', 'file:///C:\Users\dummy.vsto') & $installerPath @parameter

但这不会......没有任何反应(请注意附加的/silent开关)

$installerPath = Join-Path $env:CommonProgramFiles 'microsoft shared\VSTO\10.0\VSTOInstaller.exe' $parameter = @('/install', 'file:///C:\Users\dummy.vsto', '/silent') & $installerPath @parameter

我一直在使用此answer作为参考

2 个答案:

答案 0 :(得分:0)

看起来您正在尝试安装基于VSTO的加载项,而不是VSTO本身。

在这种情况下,我建议为您的VSTO加载项创建一个MSI安装程序,您可以使用Standard Installer Command-Line Options页面上列出的命令行参数静默运行(请参阅/quiet)。

Deploy an Office solution by using Windows Installer文章介绍了所有必需的步骤。

答案 1 :(得分:0)

为什么这不起作用的基本答案(无论这是否是在MSI安装中执行此操作的正确方法)是该解决方案不受信任。 Windows必须信任用于发布它的证书 - 该证书需要位于该计算机或运行该计算机的用户的受信任发布者列表中。信任链(查看证书时的“证书路径”)也必须一直有效到根CA.

如果所有这些都设置正确,那么当您手动运行* .vsto文件时,安装程​​序将自动开始安装。这就是静默安装不起作用的原因;由于该解决方案不受信任,因此需要用户输入。您可能会在事件查看器和/或信任中心登录%USERPROFILE%\Local Settings\Application Data\Microsoft\Office\TCDiag中找到此效果的错误。

进一步阅读:Granting Trust to Office Solutions