我遇到了我的腳本的問題,旨在遠程安裝可執行文件。我的腳本的所有預備工作都很好。我從文本文件中獲取大約十幾臺電腦的主機名。我使用PSExec來啓用PSRemoting。然後將安裝程序複製到遠程計算機上的臨時目錄中。一切都很好,除了重要的部分。我無法安裝它。Powershell:遠程exe安裝
我已經試過如下:
Invoke-Command -ComputerName remoteComp -ScriptBlock {C:\temp\installer.exe} -ArgumentList /SILENT
Invoke-Command -ComputerName remoteComp {Start-Process C:\temp\installer.exe -ArgumentList /SILENT -Wait}
我一直在使用新的PSSession這樣的嘗試:
$s = New-PSSession -ComputerName remoteComp
Invoke-Command -Session $s -ScriptBlock {C:\temp\installer.exe} -ArgumentList /SILENT
沒有發送任何類型的錯誤,他們只是什麼也不做。有 - 只會永遠掛起的命令。如果我放了一個-Sleep,它只是等待所需的秒數,然後完成,完成任何事情。我不知道這是否重要,但是當我使用/ SILENT開關在本地計算機上運行可執行文件時,它不會請求任何提示,但會打開一個資源管理器窗口。
我試圖使用PSExec.exe,但我得到了類似的結果。它只是永遠掛起而沒有任何錯誤。預先感謝任何幫助!
我在各種安裝程序上試過這個,有些工作取決於UAC級別。我最終寫了一些東西來執行在使用我所有的靜默安裝命令運行批處理文件的目標機器上創建計劃任務。 'SCHTASKS' – ssaviers
在您的腳本塊示例中沒有將參數傳遞給您的exe。 '-ScriptBlock {C:\ temp \ installer.exe $ args [0]} -ArgumentList/SILENT'雖然可能會有更多的事情發生。這將解釋爲什麼它會永遠持續下去,因爲它無法與任何用戶交互。有免費的軟件可以處理像PDQ Deploy這樣的事情,而不是試圖做自己的事情。 – Matt
出現的資源管理器窗口可能會導致安裝過程不結束,這就解釋了爲什麼當你使用'-Wait'時,它永遠不會結束。您可以在本地計算機上進行測試...打開任務管理器並使用無聲開關運行安裝程序,在任務管理器中快速找到'installer.exe'進程。當安裝程序打開資源管理器窗口時,「installer.exe」進程會消失嗎? –