メインコンテンツへスキップ
スクリプトおよびグローバルモジュールで、外部アセンブリを使用できます。標準アセンブリとコンパイル済みのユーザーアセンブリの両方を使用できます。

外部アセンブリの追加

アセンブリは、.NET References タブで、(Administrator) バッチタイプ のプロパティ、プロジェクトのプロパティ、または Document Definition のプロパティ(Developer) バッチタイプのプロパティ、プロジェクトのプロパティ、または Document Definition のプロパティに追加できます。追加したアセンブリに含まれるすべてのクラスは、スクリプトおよびグローバルモジュールで使用できます。 バッチタイプのプロパティおよび Document Definition のプロパティに追加したアセンブリは、それぞれ特定のバッチタイプまたは Document Definition でのみ使用できます。プロジェクトのプロパティに追加したアセンブリは共有アセンブリとなり、そのプロジェクト内のすべてのバッチタイプおよび Document Definition で使用できます。そのため、異なるバッチタイプや Document Definition で同じアセンブリを使用する必要がある場合は、共有アセンブリを使用できます。共有アセンブリを更新する必要がある場合は、プロジェクトのプロパティで更新するだけで済みます。 プロジェクトのプロパティにアセンブリを追加するには、次の手順を実行します。
  1. プロジェクトのプロパティの .NET References で、Add… をクリックします。
  2. 開いた Add Assembly ダイアログで、型として Standard assembly name または Attached file を選択します。
  3. 選択した型に応じて、標準アセンブリ名を入力するか、アセンブリファイルを参照します。
共有アセンブリは、新しく作成したバッチタイプに自動的に追加されます。Document Definition および既存のバッチタイプに共有アセンブリを追加するには、次の手順を実行します。
  1. バッチタイプまたは Document Definition のプロパティの .NET References で、Add… をクリックします。
  2. 開いた Add Assembly ダイアログで、Shared assembly を選択します。
  3. Reference リストからアセンブリ名を選択します。 注: 既存の標準アセンブリと類似した名前の共有アセンブリは追加できません。
以下は、名前空間、クラス、およびそのクラスのメソッドを含むユーザーアセンブリのコード例です。
namespace TestNameSpace
{
public class Test
 {
 public void Show(string text)
  {
// 静的クラス FCTools の静的メソッド void ShowMessage(string text, bool IsError) を使用して、標準の FlexiCapture の方法でテキストを表示します ABBYY.FlexiCapture.FCTools.ShowMessage(text, false);
  }
 }
}
追加したアセンブリのクラスとメソッドをイベントハンドラースクリプトから利用できるようにするには、バッチタイプのプロパティ (特定のバッチタイプの場合) またはプロジェクトのプロパティ (Default バッチタイプの場合) の .NET References タブでそのアセンブリを追加する必要があります。 次のスクリプトでは、外部アセンブリは Document Definition のプロパティの .NET References タブで追加します。 外部アセンブリのクラスとメソッドを使用するスクリプトには、次のコードを記述する必要があります。
TestNameSpace.Test test = new TestNameSpace.Test(); // Test クラスのオブジェクトを作成する
test.Show("hello world"); // Test クラスの void Show() メソッドを呼び出す

外部アセンブリのデバッグ

外部アセンブリをデバッグするには、アセンブリ ファイルと、シンボル情報を含む .pdb ファイルの両方が必要です。.pdb ファイルがロードされているアセンブリのみデバッグできます。.pdb ファイルはかなり大きいため、作業中のプロジェクトではシンボル情報のロードを無効にすることをお勧めします。

シンボル情報のロードを制御するレジストリ キー

次のレジストリ キーを使用して、.pdb ファイルをロードするかどうかを指定できます。
  • HKEY_CURRENT_USER\Software\ABBYY\FlexiCapture\12.0\Controller\ScriptSupport\ [LoadSymbolsFromOriginalPath] - アセンブリ ファイルの元のフォルダーから .pdb ファイルをロードするかどうかを指定します (.pdb ファイルをロードするには、キーの値を true に設定します) 。
  • HKEY_CURRENT_USER\Software\ABBYY\FlexiCapture\12.0\Controller\ScriptSupport\ [PDBSearchLocations] = - .pdb ファイルの検索パスを設定します (パスはセミコロン区切りで指定する必要があります。検索結果として、アセンブリ名と同じ名前のシンボル情報を含む .pdb ファイルが使用されます) 。
これらのキーは、既定ではレジストリに作成されません。必要に応じて、管理者はこれらのキーをユーザーのオペレーティングシステムのレジストリに追加できます。 レジストリの変更を有効にするには、プログラムを再起動する必要があります。 アセンブリをデバッグするには、マネージド コードへの接続を使用する必要があります。