CallXXXメソッドはマクロ化されていない関数を呼び出す際に使用します。llmodのdllprocメソッド相当の機能を有しますが、呼び出し方法が異なります。CallXXXメソッドはCF_XXX修飾子を持って呼び出します。
| 名前 | 説明 |
|---|---|
| CF_FLOAT() | 引数はfloat型を明示 |
| CF_HANDLE() | 引数は何らかのハンドルを明示 |
| CF_INT() | 引数は32bit符号付実数t型を明示 |
| CF_PTR() | 引数は32bitポインタ型を明示 |
| CF_STR() | 引数は文字列型を明示 |
| CF_VAR() | 引数はHSP変数を明示 |
| CF_VAL() |
引数を持つ関数の呼び出しはdllproc同様配列変数に格納します。ただしCF_XXX修飾子は8バイト使用しするため配列のインデックスとサイズに注意してください。
mref bm, 67;
DllParam = CF_HANDLE(bm.13), CF_INT(0);
CallProc hUser, "ShowWindow", 2, DllParam;
関数の戻り値はiResultに返ります。これはモジュール内外とわずiResultでアクセスできます。
CallXXXでエラーが発生した場合デバックモードとリリースモードにより挙動が異なります。デバックモードではエラーの詳細を表示しますが、リリースモードの場合エラーが発生した旨を表示して終了します。