2012-05-03 5 views
1

私はいくつかのタスクを自動化するためにPowerShellスクリプトに取り組んでいます。スクリプトは私のテスト環境で動作しましたが、私がプロダクションに移ったときにスクリプトが動作しませんでした。私はすぐにSilverlightがIE8のプロダクションでロードされていないことに気付きました(WebアプリケーションはSilverlightのインストールを促しました)。PowerShellでタスクを自動化する際にIE8でSilverlightを読み込む方法は?

は当初、このコードが使用を開始するものである。残念ながら$ie = new-object -comobject "InternetExplorer.Application"

、Silverlightはここでロードされませんでした。

私はその後、(実際にSilverlightをロードする)これを行うことにより、IE8でSilverlightをロードしよう:Start-Process iexplore.exe

問題は、私は、オブジェクトをキャプチャ問題が発生したし、その後のようなものを実行して...そこからナビゲートしています、次のとおりです。 $ie = Start-Process iexplore.exe$ie.navigate("blah")

もっと良い方法がありますか?ありがとう。

+0

私はこのポストを単純化するために、32ビットバージョンのInternet Explorerを起動しようとしています... 64ビットバージョンを開いているようですシルバーライト)。 – Josh

答えて

1

あなたはちょうど私が意味のPowerShellの32ビットバージョンを使用してスクリプトを起動していない理由はIE8の32ビット版を開始するには:私の知る限り、それはで32ビットCOMオブジェクトを見つける手助けUACを理解するよう%SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe

をレジストリの32Bits部分。

+0

ありがとうございます。それはうまくいくようです...私の次の質問は:コマンドラインでこのスクリプトを実行するとIEがポップアップ(32ビット版)し、期待どおりにタスクを実行します...タスクスケジュールとして実行すると、実行されますが、私は実際にUIを介してブラウザを表示しません。それは期待されていますか? OSはこの仕事を事実上実行していますか?残念ながら、実際にはブラウザを開く必要があります。 – Josh

+0

私は、「ユーザーがログインしているときのみ」タスクを実行しなければならないことに気付きました。ユーザーがログオフしたときに対話型タスクを実行することはできません。ありがとう。 – Josh

関連する問題