プラグインはシステムモジュール(nsmsgs.exe)のあるフォルダ直下の"Plugins"フォルダ直下に置きます。それより下位のフォルダについては検索されません。
設定ファイルなど、プラグインが参照するファイルについては、他のプラグインとの競合をさけるために、DLLと同名の下位フォルダを作成して、その中に入れてください。
例としてfoo.dllという名前のプラグインの配置を図[プラグインとその設定ファイルの場所]に示します。
プラグインDLLは表[プラグインがエクスポートする関数]に示す3つの関数をエクスポートする必要があります。
関数名 | 機能 |
---|---|
GetPluginInfo | システムモジュールがプラグインの情報を取得するために利用します。 |
Initialize | プラグインが読み込まれたとき、最初に一度だけ、プラグインを初期化するために呼ばれます。 |
Terminate | プラグインを破棄する直前に一度だけ呼ばれます。 |
システムモジュールから呼び出されることが保証されている関数は先の3つだけなので、プラグインの動作を考えた場合、特にInitialize関数における処理は重要です。一般に、Initialize関数では以下のような作業を行います。
また、Initialize関数ですべきでない作業には以下のようなものがあります。