2016-03-22 85 views
0

我試圖建立一個Powershell腳本,以便自動化我正在使用的程序的安裝(不幸的是程序沒有靜默安裝程序)。 問題是安裝程序窗口不會接收由sendkeys發送的密鑰:如果我只是按Enter鍵就可以工作,並且使用sendkeys將回車發送到任何其他窗口也可以,但是使用sendkeys發送輸入到特定的安裝程序窗口什麼都不做。有沒有人遇到過這個問題,並知道如何解決它?我試圖使用腳本如下:爲什麼窗口不能通過sendkeys發送密鑰?

add-type -AssemblyName microsoft.VisualBasic 
add-type -AssemblyName System.Windows.Forms 

./installer.exe 

start-sleep 1 

[Microsoft.VisualBasic.Interaction]::AppActivate('select setup language') 
start-sleep 1 

[System.Windows.Forms.SendKeys]::SendWait('~'); 

P.S 它不是一個時機的問題:我試圖改變睡眠時間,但這樣做沒有任何好處。

謝謝!

+0

安裝程序是否升高而powershell腳本不是?請注意,您不能在具有不同權限級別的窗口之間拖放(例如)。 – briantist

+0

@briantist - 感謝您的評論。我不確定我是否理解你的意思 - 當腳本發送回車鍵時,安裝程​​序已關注。 – shayelk

+0

您的腳本是否以管理員模式運行?如果不是,請以管理員權限運行該腳本,即使您是該系統上的管理員也是如此。 –

回答

0

你只需要以管理員身份運行該腳本。因爲很多時候,即使我們擁有管理員權限,腳本也無法在winForms或其他方面執行功能。 因此,以管理員身份運行該腳本(以管理員身份運行)是一種很好的做法。

相關問題