0

私はこのように簡単に試しました:

'Start-Process "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -Wait' 
Start-Sleep -s 20
Start-Process "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" imacros://run/?m=MyJS.js -Wait'

ただし、次に進む前にスクリプトを終了するわけではありません。

そして-PassThru、 、-Wait-Start -Sleepおよびキーの組み合わせを使用して、次のように jscript を開始するさまざまな試み:

'start-process "C:\Program Files (x86)\Mozilla Firefox\firefox.exe" -PassThru; Start-Sleep -s 20;[void] [System.Reflection.Assembly]::LoadWithPartialName("'Microsoft.VisualBasic");[Microsoft.VisualBasic.Interaction]::AppActivate("Login - Mozilla Firefox");[void] [System.Reflection.Assembly]::LoadWithPartialName("'System.Windows.Forms");[System.Windows.Forms.SendKeys]::SendWait("%5")'

最終的に、私がやろうとしているのは、Firefox を起動し、imacros jscript を実行し、終了するのを待ってから Firefox を閉じることです。

4

1 に答える 1

0

なぜ最初にFirefoxを起動し、次に指定されたimacroを使用してFirefoxを再度実行するのかわかりません。だから私は私のソリューションではそれをスキップしています。私はこのようなことをします:

$cmdLine = "C:\Program Files (x86)\Mozilla Firefox\firefox.exe"
$args = "imacros://run/?m=MyJS.js"
start-process $cmdLine $args
Start-Sleep -Seconds 30
Get-Process | ? {$_.Name -like "firefox"} | %{$_.Close()}
于 2012-07-02T12:27:42.447 に答える