SYSTEM 呼び出しインターフェース規約は、Microsoft Windows のアプリケーション・プログラミング・インターフェースのための標準の呼び出し規約です。 CDECL とは異なり、呼び出し先プログラムが、呼び出し側プログラムの代わりにスタックをクリーンアップします。
次の規則が SYSTEM に適用されます。
| 項目のサイズ (単位: バイト) | 値が戻る場所 | コメント |
|---|---|---|
| 8 | EAX-EDX ペア | |
| 5-7 | EAX | 戻り値用のアドレスは、EAX 内で隠しパラメーターとして受け渡される。 |
| 4 | EAX | |
| 3 | EAX | 戻り値用のアドレスは、EAX 内で隠しパラメーターとして受け渡される。 |
| 2 | AX | |
| 1 | AL |
サイズが 5、6、7、または 8 バイトより大きい項目を返すプログラムの場合、戻り値用のアドレスは隠しパラメーターとして受け渡され、アドレスは EAX に渡される。
モジュール定義ファイルでエクスポートまたはインポートのリストを作成する場合は、装飾されたバージョンの名前を使用してください。 モジュール定義ファイルで装飾されていない名前を使用する場合は、ILIB ユーティリティーに対して、モジュール定義ファイルとともにオブジェクト・ファイルを提供する必要があります。 ILIB は、このオブジェクト・ファイルを使用して、各名前が装飾後にどのようになるかを判別します。