2011-07-27 9 views
2

Watirの宝石を使っているRubyスクリプトのいくつかのインスタンスを実行する必要があり、それらはすべてIEフルスクリーンモードで実行できる必要があります。Watirを使用しているときに-fパラメータをiexplore.exeに渡すことはできますか?

明確化:彼らは、がフルスクリーンをトリガ必ずしも、フルスクリーンモードで動作するIEの複数インスタンスを可能にするモードでIEを開くことができるようにする必要があります。 IEを開くと、通常、1つのインスタンスだけがフルスクリーン(最大化されていない)を開くことができます。

これは、iexplore.exeで '-f'パラメータを指定することで、手動で行うことができます。 Watirからブラウザオブジェクトを作成するときにこれを行う方法はありますか?

これは何らかのランタイムパラメータとして発生することができない場合、IEを開く基本Watir呼び出しを変更しても問題ありません。

require 'watir' 
browser = Watir::Browser.new <--- adding '-f' somehow here? 
+0

不思議なことに、なぜスクリプトをフルシーンで実行する必要がありますか? –

+0

彼らはウェブサイト上の特定の地図をナビゲートしており、鉄道の大きなコントロールセンターで走っていて、地図を完全に全画面にしたいと考えています。 – rfusca

答えて

2

これを試してみて、それはIE 9の上に私のために働きました。

browser = Watir::Browser.new 
browser.goto 'http://www.google.com' 
browser.getIE.parent.FullScreen = true 

編集:あなたが試していることを行う可能性のあるregistry settingが見つかりました。

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main] 
Fullscreen = "yes" (Default = "no") 
+0

これは*全く*同じ事ではありません。フルスクリーンモードで実行し、フルスクリーンモードで実際に開くことができる* able *は少し異なります。彼らはスクリプトを実行し、必要なモニタにマップを配置し、フルスクリーンボタンを押します。しかし、通常、IEは一度に1つの画面しか全画面表示できないように開きます。したがって、フルスクリーンで*実行できる方法が必要です。 – rfusca

+0

IEを常にフルスクリーンモードで起動するようにレジストリを変更するオプションを追加しました。 –

0

はハック感じが、私はような何かを行うことができます考え出した(しかし、私はより良い方法をみたい):

require 'watir' 
IO.popen('C:\\Program Files\\Internet Explorer\\iexplore.exe -f "newwindow"') 
browser = Watir::IE.attach(:title,/newwindow/) 
1

あなたはそれはIEのみで動作しますが、それはあなたが考慮するかもしれない必要がある。もちろん、しばらくの間、文書化されていますオプション(watir cheat-sheetを参照)

ある

browser.maximize 

を試してみましたブラウザがフルスクリーンを実行する必要があるのはなぜですか?また、スクリプトをデフォルトの画面サイズが異なるシステムに移動するとどうなりますか。あなたは、あなたも「後藤は」それはURL

browser.goto('javascript:resizeTo(800,600)') 

としても「があることができ、簡単なJavaScriptでresizeTo機能を行うことができ、特定のサイズにブラウザを設定する方が良いかもしれませんmoveTo 'と同じ方法で使用できます。ウィンドウを既知の点に置くことができます。

ブラウザを特定の場所とサイズにする必要がある場合は、適切なJavaScriptを使用してページを作成し、必要なものを設定してデフォルトのホームページにして、ブラウザが開きます。あなたのgoogleが 'javascript maximize browser'または 'javascript resize browser'の場合、このようなページのサンプルコードが見つかる可能性があります。

= - = - = - = 編集(「フルスクリーン」は、望んでいただけでを最大化されていないものをあることを明確に基づいて

最後に、あなたが単に「F11」キー入力などをシミュレートすることで見ることができますほとんどのブラウザではフルスクリーントグルです。あなたは、これはのSendKeysメソッドを介して

browser.send_keys :f11 

を行うことができますワチール-webdriverをを使用している場合しかし、それはトグルされ、スクリプトにして起動する右の状態にあるものに依存することになります。同期が外れて何かがフルスクリーンになることがあります。

新しいフルスクリーンウィンドウを生成し、そのコードを新しいウィンドウにアタッチするローカルシステム上の特定のページの考え方を調べることもできます。この種の 'フルスクリーンモードでの新しいウィンドウのポップアップ'は、一部のブラウザではまだ使用されていない場合に、ブロックされたり、廃止されることが予想されるものです(下記参照)。

警告:はHTMLからフルスクリーンモードにブラウザを投げることができること、それがセキュリティ脆弱性とみなされているため、やや眉をひそめているものです。これは、誰かが特定の画像を作成して、URLバーやその他のコントロールが表示されているように見せかけることができ、フィッシングサイトを作成するときに正当なサイトにいるユーザがいるためです。そのようなサイトは現在、ウェブコミュニティが現在直面しているより大きな問題の1つです(私のスパムフィルタの内容は約20%のフィッシングで急速に増加しています)。過去にその方法があるかもしれないが、新しいより安全なバージョンのブラウザによって。これは、sendkeysオプションを、クロスブラウザーで動作するはずのものの中で最善の策にする傾向があります。

+0

最大化はフルスクリーンではありません。異なるもの。 – rfusca

+0

@rfusca、True。私は数日前に全体の「フルスクリーン」のことを扱うために反応を編集しました。 –

1

-k以上F11でフルスクリーンキオスクモードにIEを置く(私はフルスクリーントグルの利用F11の知っているほぼ全てのこと)。等の一切のツールバー、メニュー、アイコン、あなたはそれを閉じるためにAltキー + F4をヒットする必要があり、あなたが他のオープンタスクにAltキー + タブをすることができますがありません。

関連する問題