ニュース一覧VBScriptでIE10を互換モードに変更するInternetExplore10を起動の際に互換モードで動作させるVBスクリプトを作成してみました。InternetExplore10(IE10)はWindows8では標準、Windows7ではWindowsアップデートによってマイクロソフト社すすめる標準のブラウザになろうとしています。IE向けに対応されたWEBシステムなどで、互換性の問題が出てくる例もあるようです。この互換性の問題を解決するために、IE10には開発者ツールを開いて、ドキュメントモードの変更を行うことで無事動作するという事例もありますが、このドキュメントモードの変更は、毎回ブラウザ起動のたびに手動で変更する必要があります。この手動での変更をVBスクリプトを利用して、自動化してみます。VBスクリプト例ソースは下記の通りです。DEVMODEkey[/vb]VBスクリプト解説IE10で開発者モードに入るにはF12キーを押します。そこから各互換性モードに入るためには、Altキーとバージョン番号の組み合わせになります。Quirksというモードが用意されていますが、これはAlt+Uの組み合わせになります。このキーの組み合わせを、SendKeysというメソッドで擬似的にキー入力させています。Quirksというモードをデフォルトで選択するようになっています。Quirksにモードを変更して、開発者モードを終了します。このSendkeysを使う都合で、IEが立ち上がるまで、立ち上がった後キー入力を受け付けるまでの二回、待ち時間を設けています。標準では3秒みていますが、早いパソコンであれば、1秒ほどの待ち時間でも十分実行できます。この辺りはパソコンや、ページを開くまでの時間によって、適切な時間は変わってきます。SendKeysはアクティブなウィンドウに対して、キー入力を送るメソッドですので、途中でIE10からフォーカスが移ってしまうと正常に動作しません。このスクリプトでは積極的にフォーカスを取りに行っていないので、待ち時間中にフォーカスが移ってしまう場合は、改良する必要があるでしょう。VBスクリプトに引数を与える方法このVBスクリプトは三つの引数をとるように作成しています。引数は、最初に開くwebサイトのURL。第二引数は、待ち時間。第三引数は、互換モード。標準という感じになっています。詳しくはスクリプトをご覧いただけるるとご理解いただけると思います。このスクリプトファイルのショートカットを作り、プロパティのリンク先に、vbsファイル名に引き続くようにして半角スペースで区切りながら三つの引数を入力します。上記スクリーンショットを例に挙げると、弊社コーポレートサイトを、3秒の待ち時間(合計6秒)を設けて開き、Quirksモードに変更する、というショートカットになります。終わりに本スクリプトは、動かないWebシステムをIE10で動作させるという保証はできません。スクリプトでIE10の互換性モードを変更する、ということを実現するためのものです。動作させる環境によって正常に動作しない場合や、スクリプト実行により何らかの損害を被った場合も一切の責任を負わないものとします。スクリプトを精査したうえでのご利用をお願いいたします。IE10で既存のWebシステムが正常に動作しないのは、さまざまな原因があり、システム側の問題、システムが利用しているライブラリの問題、IE10がこれまでのIEとの互換性よりも機能性をとった部分など、数えればいくらでもある可能性と、その組み合わせになっています。単純にIE10の互換性モードを変更すれば動作するのであれば、このスクリプトもいくらか役に立つ場面もあるかもしれません。Windows7でいつまでIE9がサポートされるのかはわかりませんが、Windows8では標準のブラウザでもあるので、IEのバージョンダウンだけでは解決できない時はやがてやってくるでしょう。そのときシステムをIE10にむけて対応するのか、あるいはIE10が変化しているのか、他のブラウザで動作する場合は、他のブラウザを推奨するのか、対応として考えられることは様々ですが、一つの変わった解決策として参考にしていただければと思います。▲お問い合わせフォームはこちらお客様のビジネスの規模・内容に従い、最適なアプリケーションをご紹介します。アプリケーションの導入・連携支援は、ぜひ、システムキューブにお任せください。