動作と制限事項
- 追加のキーワードを使用して オブジェクト メンバーにアクセスすることはできません。たとえば、.NET 言語で記述されたルールでは、ルールのコンテキストは
Contextという名前のパラメーターとして渡されます。 - .NET アセンブリは、Microsoft .NET Framework 4.0 以降でコンパイルしてください。.NET Framework のバージョンは、Visual Studio の Project Properties で設定できます。
- すべての FlexiCapture オブジェクト は COM オブジェクト であるため、.NET スクリプト で オブジェクト field に頻繁にアクセスすると、マネージド コードとアンマネージド コード間の移行により実行速度が低下する場合があります。
- FlexiCapture オブジェクト はマルチスレッドをサポートしていません。
- スクリプト をコンパイルすると、コンパイル済みの body は スクリプト と同じ場所に格納されます。そのため、.NET スクリプト は他の スクリプト よりも多くの容量を占有する場合があります。
- スクリプト および グローバルモジュール で使用する external アセンブリ を追加できます。標準 アセンブリ とコンパイル済みのユーザー アセンブリ の両方を使用でき、含まれるすべての クラス を利用できます。詳細については、External assemblies を参照してください。
名前空間とスクリプトオブジェクト
ControllerInterop.dll および ShellInterop.dll アセンブリに格納されており、それぞれ ABBYY.FlexiCapture および ABBYY.FlexiCapture.ClientUI 名前空間に属しています。これらのアセンブリは、ABBYY FlexiCapture のルートフォルダーにあります。
すべてのスクリプトオブジェクトには、これらの名前空間からそれぞれの名前でアクセスできます。例:
using ディレクティブは、コメントや空行とともにスクリプト本文の先頭に記述します。プログラミング言語ごとに対応する構文を使用します。C#.NET では using、JScript.NET では Import、VisualBasic.NET では Imports を使用します。例:
using を記述すれば、using ディレクティブを使用できます。例:
グローバルモジュール関数
System.null または System.Type.Missing を渡します。
.NET スクリプトをデバッグする
*.pdb ファイルも必要です。このファイルは非常に大きくなる可能性があるため、スクリプトとともにプロジェクトに保存しないでください。.NET スクリプトをデバッグする際は、デバッグ情報を含めてコンパイルするよう指定します。
Microsoft Visual Studio 2010 では、.NET コードを実行しているプロセスにアタッチできます。
非対話的に実行されるスクリプト (FlexiCapture.exe ではなく FlexiEx.exe プロセスで実行されるスクリプト) の場合、ブレークポイントが含まれていても、デフォルトでは Checking for solution ウィンドウに FlexiEx.exe プロセス用の Debug ボタンは表示されません。ボタンを表示するには、タスクバーの Action Center アイコンをクリックし、Change Action Center settings → Problem reporting settings → Never check for solutions を選択します。