タブブラウザ Sleipnir オンラインデータベース
http://www.sleipnir-wiki.jp/index.php?IE%20%A4%C8%20IE%20%A5%B3%A5%F3%A5%DD%A1%BC%A5%CD%A5%F3%A5%C8%20%A4%CE%B0%E3%A4%A4

  [ リロード ]   [ トップ | 一覧 | 単語検索 | 最終更新 | バックアップ | ヘルプ ]

IE と IE コンポーネントの違い †


目次


始めに †

IE にできるからといって IE コンポーネントすべてで実現できるとは限りません。
よく勘違いされたりするのですが IE コンポーネント=IE ではありません。
IE コンポーネント≒IE*1です。
その関係を詳しく説明します。
ただし、勘違いや足りないところなど間違っている可能性もあるのでご注意下さい。
より正しく、詳しく、簡潔に説明できる方は修正お願いします。

IE コンポーネントとは何か †

IE コンポーネント(正式名: Trident エンジン, 別名: Microsoft WebBrowser Control)とはレンダリングエンジン(ブラウジングエンジン)の一種で、 IE が使用しているものです。
ここで注意なのは IE の正体が IE コンポーネントなのではなく、単純に IE も IE コンポーネントを使用しているだけということです。
で、例えるとすれば絵画を思い浮かべてみましょう。
を飾る際にフレーム(額縁)に入れますが、 IE は正しくこのフレームに相当する部分です。
逆に IE コンポーネントとはこの場合においては絵そのものを指します。 IE コンポーネントブラウザとはこの IE が担っているフレーム部分を IE 以外の他のフレームに差し替えているだけです。
Sleipnir も同様にフレーム部分でこの中に IE コンポーネントという絵を入れているだけです*2

IE にできて IE コンポーネントにできないこと †

IE はほぼ IE コンポーネントの機能しか使用していないため機能が貧弱ですが、 IE 単独で独自実装している部分もあります。

IE 用拡張ツールバー †

これは、 IE のフレーム部分に張り付く拡張ソフトウェアで IE が管理しています。
その為、 IE でなければ使用できず IE 以外のフレームが使用するには独自実装(IE がしているのと同様の機能を独自に実装, または再現)するしかありません。
この情報は一般に公開されていない(?)ようで、実装がかなり難しいようです。
海外製の Maxthon(旧 MyIE2)や Lunascape(Lunascape2 以降は一部, Lunascape3 以降は基本的にすべて)などが対応し始めていますが誤動作を起こしたりなど問題も多いようです。
Sleipnir では現在のところ、実装する手間やメリットとデメリットの比較などを考えて実装には消極的のようです*3

メニューバーのお気に入り †

IE のお気に入りメニューはメニューバーに見える独自実装のコントロールです。
一般公開されているコントロールではないため、 IE のお気に入りメニューと同様の事をするには独自実装する必要があります。
こちらも、 Sleipnir では実装する手間やメリットの低さなどから実装には消極的のようです。

FTP サイトのビュー †

インターネットオプションの詳細設定タブのブラウズ項目にある 「FTP サイト用のフォルダ ビューを使用する」にチェックを入れると IE では通常のローカルフォルダと同様の感じで使用できます。
しかし、これは IE が独自実装している機能なのでこのオプションが有効なときに IE 以外の IE コンポーネントブラウザで FTP サイトにアクセスすると動作がおかしくなります。

IE 以外の IE コンポーネントブラウザで FTP サイトにアクセスする場合は上記の設定を無効にしてください。

ローカルフォルダを開いたとき †

ローカルフォルダ(file:// スキーム)を開いたときの描写が IE と IE コンポーネントでは違います。
これも IE が独自に実装している機能*4なので IE コンポーネントでも一応表示することは可能になっていますが IE とまったく同じ動作や表示にはなりません。
(更に IE 側ではメニューなどもローカルフォルダ用になっていたり explorer.exe と iexplore.exe は基本的に統合されており同様に動作するようになっています*5)

尚、これらは XP/IE6 以前の仕様です。Vista/IE7 以降はブラウザエンジンの改良などに伴って仕様が変更され、この Windows Explorer と Internet Explorer の結合機能は廃止されました。

画像の自動縮小など †

これは、フレームの実行ファイル名(実行モジュール)が iexplore.exe だと自動で使用できるようです。
それ以外のファイル名だと何故か使用できなくなります。

情報バー †

Windows XP SP2 の情報バーは画像の自動縮小問題と同様に実行モジュールが iexplore.exe でなければ表示されません。
その為、ActiveXを使用する場合などに情報バーによる保護を受けられず危険です。

Ver 2.49 で Sleipnir 情報バー機能が追加されました。ただし IE のものを直接使用しているわけではないため文言や仕様が微妙に異なります。IE の設定で情報バーを無効にしても Sleipnir には影響しません。ツール→オプション→ビュー→Trident→詳細設定から変更してください。

window.externalオブジェクト †

window.externalオブジェクトが実装されていません(参照するとnullが返ります)。
DHTMLページでIEとは異なる表示になったり、ウェブメールで操作が出来なかったりします。

補足 †

上記はすべて IE が実装を行っているので対応することは不可能ではないはずですが*6情報が公開されていないかまたは限定的なので実装が難しいため簡単には対応できません。
ここが IE コンポーネントと IE の一番大きな違い/差であるといえると思います。

IE コンポーネントの実態 †

より IE コンポーネントを細かく分析するならば IE コンポーネントというのは Microsoft WebBrowser Control という名前のついた COM コントロール(コンポーネント)の一種です。
COM というのは ActiveX コントロールに対して通信を行うためのインターフェース技術の総称です。
IE コンポーネントと呼ばれるのは IE コンポーネントが COM コンポーネントだからです*7
IE コンポーネントは COM を経由することで操作を行えます*8
JScript は WSH という COM コンポーネントを使用して IE コンポーネントにアクセスできます。
Sleipnir Script はこの技術を応用しています*9
COM を使用できる言語なら Sleipnir.API を宣言することで Sleipnir Script を使用できます。

IE コンポーネントと COM の関係などは 「IEコンポーネントの使い方」 を見てもらった方が分かりやすいかも知れません。


*1 =ニアリーイコール, ほぼ等しい/似ているけど違う。というか正確には IE コンポーネント < IEですね。
*2 Sleipnir では Mozilla ActiveX Control を使用して絵を Gecko エンジンに差し替えることもできます。
*3 ただし、実装の可能性が 100% 絶対にないとはいえない。
*4 簡単に云えば Sleipnir2 の Favorites Editor(bookmark:// スキーム) などと同様と見ると分かりやすいと思います。
*5 エクスプローラでもアドレスバーに URI を入力すればネット接続などができる。
*6 現実に IE が対応しているということは他のプログラムでも同様のことをすれば不可能ではないはず。
*7 IE コンポーネントという名称は MS による正式名称ではなく俗称です。
*8 通常は COM 経由でしか操作できない。
*9 WSH を使用するスクリプトなら言語は問わず、 WinOS のデフォルトでは JScript と VBScript が使用できるが ActivePerl をインストールすることで使用できる PerlScript などでも Sleipnir Script は使用できる。ただし、現在はメニューバーのスクリプトメニューが *.js/*.vbs しか対応していないので表示されない。

トップ   差分 バックアップ リロード   一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2008-03-28 (金) 12:15:32 (4521d)