我有以下PowerShell脚本来安装应用程序而无需用户干预:
Start-Process -FilePath "C:\Temp\UpgradeClientInstaller\setup.exe" -ArgumentList "/S /v/qn"
通过在参数列表中提供/s
,它应该静默安装,无需用户干预,但弹出窗口显示
即使我尝试使用winrar.exe
和zip.exe
文件也能获得相同的结果。这是正确的方法吗?
答案 0 :(得分:5)
请试试这个:
$pathvargs = {C:\Temp\UpgradeClientInstaller\setup.exe /S /v/qn }
Invoke-Command -ScriptBlock $pathvargs
答案 1 :(得分:2)
您是否尝试过以下操作:
Start-Process -Wait -FilePath" C:\ Setup.exe" -ArgumentList" / S" -PassThru
答案 2 :(得分:1)
我知道这个帖子很旧,但我觉得我可以分享一些关于这个问题的见解
几年前我不得不做类似的事情。当您在提示上单击“安装”时,它所做的就是将证书添加到 TrustedPublisher 存储中。如果您在运行安装程序之前手动将其添加到证书管理器,则可以避免该提示。
我发现如果你在测试机器上安装程序,你可以从 certmgr.msc 中导出 Cert。然后您可以使用以下方法安装证书:
NOT NULL
这会将证书安装到 TrustedPublisher 存储,因此无需显示该消息。
我希望这能帮助 Ramesh 以及将来发现它的任何人
答案 3 :(得分:0)
您的问题似乎是Windows UAC,而不是脚本本身。
这可能有风险 - 但它确实有效。
答案 4 :(得分:0)
尝试一下:
Start-Process -FilePath C:\setup.exe -Args '/silent /install' -Verb RunAs -Wait;
答案 5 :(得分:0)
Start-Process -Wait -FilePath "\full\path\setup.exe" -ArgumentList '/S','/v','/qn' -passthru
执行文件的引号不一定。
答案 6 :(得分:0)
使用此命令,它不会要求您单击下一步并安装软件。
启动过程-等待-ArgumentList“ / silent” -PassThru -FilePath'C:\ Users \ filename.exe'
答案 7 :(得分:-1)
添加-NoNewWindow以停止弹出窗口