GeckoFX
GeckoFXとは、Geckoエンジンを扱うためのラッパークラスである。大雑把にいうとC#でFirefoxを操るためのライブラリと思ってほぼ間違いない。Linux(Linux Mint 12)上のMonoとFirefoxの組み合わせでも問題なく動いている。
.NET Framework純正のWebBrowserクラスはC#以前、DelphiとVCLの時代から腐っており、その代用として有望である。ただし、別途Firefox(に同梱されるXPCOM)のインストールが必須であるため、場合によっては配布方法などにおいて面倒なことになる。
注意
2012年4月10日現在、Googleのウェブ検索において「geckofx」と検索すると、GeckoFX 1.xまで使われていた古いサイト(Googleコード)が上位表示され、現在の公式サイト(bitbucket)が上位表示されておらず、「古い情報しかない」「更新が止まってる」と誤認識してしまう恐れがあるので、他人に教えるときは注意すること。
利用方法
GeckoFXの利用には、別途Geckoエンジンをコンポーネント化したXPCOM(Cross Platform Component Object Model)が必要であり、利用時にはXPCOMのインストールパスを設定する。XPCOMはMozilla公式サイトから単体でダウンロードしてきてもいいし、Mozilla Firefoxにも同梱されているのでFirefoxのインストールディレクトリを指定しても動く。
バージョン番号
GeckoFX2.0までは独自のバージョン番号であったが、以降は最近はFirefoxのメジャーバージョン番号と同一になっているので、XPCOMとして用いるFirefoxが10.xならばGeckoFX10.xを用いること。
また近年のFirefoxのラピッドリリースサイクルの導入に伴い、GeckoFXも平行して物凄い勢いでフォーク(バージョンアップ)しまくっている。FirefoxおよびGeckoFXの両方のインターフェイスなどもガンガン書き換えられているので、常に最新バージョンを用いればいいというものでもなく、基本的に開発開始時に用いたFirefoxとGeckoFXを拾ってくれば間違いない。
2012年6月26日現在まで使ってみた感じでは、Firefoxの自動アップデート後にGeckoFXを使ったアプリが壊滅したという事例があり、Firefox 10をベースとしたFirefox ESR版[1]を使う、またはFirefoxの自動アップデートを無効化して使うのが望ましいように思われる。
使用例
関連項目
- WebBrowser クラス (System.Windows.Forms)
- gluezilla - Monoプロジェクトにより開発が行われているGeckoベースのブラウザーコンポーネント。
- WebKit# - Monoプロジェクトにより開発が行われているWebKitベースのブラウザーコンポーネント。
- WPF Chromium WebBrowser control - WebKitをDirectX特化型に魔改造したAwesomiumのC#向けラッパークラス。
- C#
- .NET Framework
参考文献
外部リンク
- Firefox
- http://mozilla.jp/firefox/ - Firefox 通常版
- http://mozilla.jp/business/downloads/ - Firefox ESR版
- GeckoFX
- https://bitbucket.org/geckofx
- https://bitbucket.org/geckofx/geckofx-13.0/ - Firefox 13.x用
- https://bitbucket.org/geckofx/geckofx-12.0/ - Firefox 12.x用
- https://bitbucket.org/geckofx/geckofx-11.0/ - Firefox 11.x用
- https://bitbucket.org/geckofx/geckofx-10.0/ - Firefox 10.x用、法人向けのFirefox ESR 10を使っているひとはこれ。