我有以下兩行代碼會將相應的窗口放在前面,這將幫助我自動截屏。但問題是,有時候,它的作用就像是一種魅力,有時它不會。當我說它不起作用時,我並不是說它沒有任何錯誤信息或警告。什麼都沒發生。只是代碼運行,窗戶不在前面。AppActivate在Powershell中不一致地工作
我想知道這段代碼是否有任何隱藏的先決條件可以成功運行?在我運行這段代碼之前,有問題的窗口應該處於任何狀態嗎?
下面是代碼:
[void][System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic")
[Microsoft.VisualBasic.Interaction]::AppActivate("R")
確定'WindowTitle'在不起作用時沒有什麼不同?你有沒有嘗試過使用'ProcessID'? –
在兩種情況下,窗口標題都相同。我們如何使用ProcessID來做到這一點?當我啓動一個COM對象時,Powershell是否返回進程ID? –
如果進程ID是1580,那麼''[Microsoft.VisualBasic.Interaction] :: AppActivate(1580)' –