このページはNetscapeNavigator 2.0以降及びMicrosoft Internet Exploler 3.0以降で正常に見られます。
Solly,Japanese only

★ BB研究所 ★
Netscape プラグインの作成法(実習)


 「概要」では、話が見えない方が多いと思います。ここでは、Windows95用の簡単なプラグインを作成します。ここで、動作の一形態について理解し、より複雑なプラグイン開発の弾みにしましょう。

 それでは、私の作ったサンプルプラグイン「BBTIF」を、ここからダウンロードして下さい。
このプラグインは、TIFF形式及びBMP形式のファイルを表示する機能を持っています。その為に、ニュートン(株)のImageKit4という画像ライブラリを使用します。これを購入(定価:39,800円)するか、ニュートン(株)のホームページに体験版があるので、これをダウンロードして使用して下さい。プラグインを動作させるだけでしたら、BBTIF001.LZHに付属のDLLだけでOKです。


まずは、動かしてみましょう!

TIFFイメージ(鳥)と、BMPイメージ(BBロゴ)が表示できたでしょうか?
それでは、このプラグインのソースについて説明していきます。

1.プロジェクトの作成

まず、Visual C++ ver5.0を使用して、プロジェクトを作成します。

2.プラグインSDKから、必要なファイルを集める

Netscape社のSDK(詳細は「概要」をご参照下さい)から、必要なヘッダファイルと、テンプレートを集めます。
以下のファイルを、プロジェクトのディレクトリにコピーします。 また、テンプレートファイルWintemp.cをリネームして、WinCallBack.cを作成します。
※名前は何でもかまいません。
これらのファイルをプロジェクトに追加します。


3.リソースファイルを作る

リソースファイル(NPBTiff.rc)を作成し、プロジェクトに追加します。

4.ImageKit4のAPIを実装する

ImageKit4(画像ライブラリ)のサンプルを参考に、APIをつくります(ImgKitApi.c,ImgKitApi.h)。Imgkdef.hとImagekit.hはサンプルをそのまま利用します。これらの説明については省略します。詳しくはソースファイルを参照して下さい。
BBTIFプラグインでは、以下の関数のみ使用します。 ImgKitApi.cをプロジェクトに追加して、全ての準備は整いました。あとは、WinCallBack.cを編集してプラグインを完成させるだけです。

5.プラグインを実装する

サンプルソースでは、コメントを和訳していますが、実質的に変更したのは以下の内容のみです。

6.動作の説明

 このプラグインは、ファイルモードで作成しているため非常にシンプルになっています。ファイルモードは、NetscapeがURLからダウンロードしたデータをすべてローカル・キャッシュにダウンロードして、その後、 NPP_StreamAsFileを呼出し、キャッシュファイルへのパスをプラグインに渡します。
 全体の流れは以下のようになります。

7.終わりに

(半日で作った)簡単なプラグインを通じて、プラグインの基本について説明しました。私自身、いまのところ知識はこの程度しか持っていませんが、 あと印刷やメニューをサポートすることにより立派なプラグインになると思います。
 尚IEは、ActiveXの仕様が一般的ですが、一応Netscape v.2のプラグインにも対応しています。
この為、今回作成したプラグインの場合、NPP_NewStreamで*stype=NP_ASFILEONLY;には対応していない(v.3機能のため)ので、
ここを、*stype=NP_ASFILE;にすれば、IE3でも動作するはずです(試してはいません)。


【改訂記録】
98/04/05版:公開
98/04/20版:

[ホームへ戻る]


Copyright (c) 1997-1999, BearBeetle, Allrights reserved.