バージョン 6.3.3
 —  プラグインによる Natural スタジオの拡張  —

プラグインの開発

このドキュメントでは、次のトピックについて説明します。


プラグインの作成

新規プラグインを作成するには、「クイックスタート」で説明されている手順に従います。

Top of page

プラグインのデバッグ

Natural で記述されたプラグインは、Natural スタジオを実行するプロセスとは異なるサーバープロセスで実行されます。 このため、プラグインをデバッグするには、リモートデバッグを使用する必要があります。 リモートデバッグの一般的な設定および使用方法については、『デバッガ』ドキュメントを参照してください。

以下のトピックでは、リモートデバッガを使用してプラグインをデバッグするために必要な作業について説明します。

単一サーバー

[Single server]オプションを使用して作成されたプラグインは、他のプラグインとは異なり、独自の Natural サーバープロセスで実行されます。 プラグインがプラグインマネージャで有効化されると、この Natural サーバープロセスが開始されます。 このプラグインをデバッグするには、このサーバープロセスをリモートデバッガで実行するように設定する必要があります。

プラグインは Natural パラメータファイル NATPARM の下で実行されています。 このため、プラグインマネージャでプラグインを有効にする前に、以下の設定を Natural パラメータファイル NATPARM に適用する必要があります。

コンフィグレーションユーティリティ』ドキュメントの「リモートデバッグ」も参照してください。

これで、プラグインマネージャでプラグインを有効にすると、Natural デバッガがプラグインのメソッド OnActivate の最初のステートメントで開始され停止します。 この時点で、必要に応じてブレイクポイントを設定できます。

共有サーバー

[Single server]オプションを使用せずに作成されたプラグインは、プラグインマネージャと同じ Natural サーバープロセスで実行されます。 プラグインマネージャがアクティブになると、この Natural サーバープロセスが開始されます。 この状況は Natural スタジオセッションの開始時に発生します。 このモードを "共有サーバー" といいます。 このプラグインをデバッグするには、この共通サーバープロセスをリモートデバッガで実行するように設定する必要があります。

プラグインは Natural パラメータファイル NATPARM の下で実行されています。 このため、Natural スタジオを起動する前に、以下の設定を Natural パラメータファイル NATPARM に適用する必要があります。

コンフィグレーションユーティリティ』ドキュメントの「リモートデバッグ」も参照してください。

これで、Natural スタジオを起動すると、Natural デバッガがプラグインマネージャのメソッド OnActivate の最初のステートメントで開始され停止します。 この時点で、必要に応じて、独自のプラグインのメソッド OnActivate のソースコードをロードし、ブレイクポイントを設定できます。

Top of page

プラグインの展開

Natural で記述されたプラグインを他のマシンに展開するには、オブジェクトハンドラを使用します。 オブジェクトハンドラを開始し、プラグインに属すモジュールをすべて選択してシーケンシャルファイルにアンロードします。 プラグインの作成中に生成されたモジュール INSTALL および INSTAL-N も一緒にアンロードすることを忘れないでください。 これらのモジュールでは、プラグインをターゲット環境にインストールする必要があります。

ターゲット環境で、再びオブジェクトハンドラを使用してシーケンシャルファイルをロードします。 プラグインライブラリでプログラム INSTALL を実行し、Natural を再起動して、新規プラグインがプラグインマネージャに表示されるようにします。

特定のバージョンの Natural スタジオ向けに作成されたプラグインは、そのバージョンにのみインストールしてください。

Top of page

他のプログラミング言語でのプラグインの開発

Natural スタジオプラグインは ActiveX コンポーネントであるため、ActiveX コンポーネントの作成を可能にする任意の言語でプラグインを開発できます。 このセクションでは、開発手順のヒントを示します。 詳細については、それぞれの開発環境のドキュメントを参照してください。

Start of instruction setMicrosoft Visual Basic を使用してプラグインを開発するには

  1. タイプ "ActiveX DLL" の新規プロジェクトを作成します。

  2. タイプライブラリ NATURALSTUDIOPLUGIN.TLB および NATURALSTUDIOAUTO.TLB への参照を追加します。 これらのタイプライブラリはそれぞれプラグインインターフェイスNatural スタジオインターフェイスを記述します。

  3. プラグインを実装するクラスに以下のコードを追加します。

    Implements INaturalStudioPlugIn
    Implements INaturalStudioPlugInTree
    
  4. インターフェイスメソッドを実装します。 メソッド本体は最初は空のままの場合があります。

  5. プロジェクトをビルドし、生成される DLL を regsvr32 を使用して登録します。

  6. Natural スタジオのプラグインマネージャで ActiveX コンポーネントを表示するには、以下の例に示されているようにレジストリエントリを追加します。

    [HKEY_LOCAL_MACHINE\SOFTWARE\Software AG\Natural\n.n\Plug-ins\{617D1BE3-D1D8-4EAC-9633-4FF2842D8B6C}]
    @="Visual Basic Minimal Plug-in"
    "CLSID"="{617D1BE3-D1D8-4EAC-9633-4FF2842D8B6C}"
    "ProgID"="MinimalPlugIn.PlugInClass"
    

    上記の例の先頭行にある n.n は、Natural の現在のバージョン番号を示しています。

    行内の @= で始まる名前がプラグインマネージャに表示されます。

Start of instruction setMicrosoft Visual C++ および ATL を使用してプラグインを開発するには

  1. ATL COM ウィザードを使用して ATL プロジェクトを作成します。

  2. ATL プロジェクトに ATL オブジェクトを作成します。

  3. [インターフェイスの実装]を選択します。

  4. タイプライブラリ NATURALSTUDIOPLUGIN.TLB を選択します。 このタイプライブラリはプラグインインターフェイスを記述します。

  5. インターフェイス INaturalStudioPlugIn および INaturalStudioPlugInTree を選択します。

  6. インターフェイスメソッドを実装します。 メソッド本体は最初は "S_OK" を返すだけの場合があります。

  7. プロジェクトをビルドし、生成される DLL を regsvr32 を使用して登録します。

  8. Natural スタジオのプラグインマネージャで ActiveX コンポーネントを表示するには、以下の例に示されているようにレジストリエントリを追加します。

    [HKEY_LOCAL_MACHINE\SOFTWARE\Software AG\Natural\n.n\Plug-ins\{617D1BE3-D1D8-4EAC-9633-4FF2842D8B6C}]
    @="C++ ATL Minimal Plug-in"
    "CLSID"="{617D1BE3-D1D8-4EAC-9633-4FF2842D8B6C}"
    "ProgID"="MinimalPlugIn.PlugInClass"
    

    上記の例の先頭行にある n.n は、Natural の現在のバージョン番号を示しています。

    行内の @= で始まる名前がプラグインマネージャに表示されます。

Top of page