CALL identifier を使用すると、呼び出し時に常にターゲット・プログラムがロードされます。この identifier には、実行時にネストなしサブプログラム名を含むデータ項目が入ります。 CALL literal は、静的または動的に解決することができます。この literal には、ネストなしターゲット・サブプログラムの明示的な名前が入ります。
CALL identifier については、DLL の名前が、ターゲット入り口点の名前と一致している必要があります。
CALL literal については、NODYNAM コンパイラー・オプションが有効な場合は、スタティック・リンクとダイナミック・リンクのどちらでも実行できます。 DYNAM が有効な場合は、CALL literal が CALL identifier と同じ方法で解決されます。つまり、ターゲット・サブプログラムは呼び出し時にロードされ、DLL の名前とターゲット入り口点の名前が一致していなければなりません。
これらの呼び出し定義は、COBOL プログラムがネストなしプログラムを呼び出す場合にのみ適用されます。 COBOL プログラムがネストされたプログラムを呼び出す場合は、この呼び出しは、システムが介入せずに、コンパイラーによって解決されます。
制約事項: アプリケーション内の 2 つ以上の別々にリンクされた実行可能モジュール (.EXE ファイルまたは .DLL ファイル) は、同一のネストなしサブプログラムを静的に呼び出さないでください。
関連タスク
ネストなし COBOL プログラムの呼び出し
DLL の作成
関連参照
DYNAM
CALL ステートメント
(「COBOL for Windows 言語解説書」)