これらの呼び出し規則は、非マネージ コードのみを呼び出す場合に Platform Invoke を使用する際の、.NET COBOL コードに適用されます。
COBOL プログラムおよび他の言語で作成したプログラムは、相互に呼び出せます。ただし、COBOL とは異なる方法で呼び出しを処理する言語もあります。たとえば一部の言語では、COBOL プログラムが予期する順序とは逆の順序でパラメーターが渡されます。COBOL と非 COBOL プログラムが相互に呼び出せるように、COBOL プログラムが使用する、または使用を予期する呼び出しメカニズムを調整できます。
必要な呼び出しメカニズムを指定するには、必要なメカニズムを作成する呼び出し規則番号を最初に構成します。呼び出し規則番号は 16 ビットの数値で、定義は以下のとおりです。
呼び出し規則番号がすでに構成されている場合は、それを 10 進数に変換してから、特殊名段落で定義して、変換された 10 進数を名前に割り当てます。次に、CALL 文で呼び出し規則名を使用します。
たとえば、次の呼び出し規則を定義するとします。
SPECIAL-NAMES. CALL-CONVENTION 0 IS Microsoft-c CALL-CONVENTION 3 IS Pascal.
この場合、次のように C プログラムを呼び出す際に、規則を 1 つ使用できます。
CALL Microsoft-c "routine-name" USING parameter-1,parameter-2
また、Pascal プログラムからの呼び出しを受け取る場合は、次のように別の規則を使用します。
PROCEDURE DIVISION Pascal USING parameter-1,parameter-2
呼び出し規則を指定しない場合は、DEFAULTCALLS コンパイラ指令を使用しない限り、標準 COBOL 規則 (呼び出し規則 0) が想定されます。