外部DLL呼び出し関数登録
#cfunc 新規名称 "関数名" タイプ名1,…
外部DLLを呼び出すための新しい関数を登録します。 先に#uselib命令により外部DLL名を指定しておく必要があります。 新規名称、関数名、タイプをスペースで区切って書きます。 新規名称の直前に「global」を入れることで、 すべてのモジュールで永続的に利用することのできる命令を作成することができます。 関数名は、"関数名"のようにダブルクォートで囲むことで、 DLLの完全なエクスポート名を記述することができます。 ダブルクォートで囲んでいない場合は、「_関数名@16」というVC++のエクスポート規約に基づいた名前に変換されます。 タイプ名には、引数の詳細を記述します。 引数パラメーターは、#func命令と同じものを使用することができます。 詳しくは、#funcのリファレンスを参照してください。 #cfunc命令によって登録された新規名称は、関数として式の中に記述することが可能です。 例 : #uselib "test.dll" #cfunc test "_func@16" var,int,int,int res=test(a,1,2,3) ; test.dllのfunc(&a,1,2,3)が呼び出される 登録された関数の戻り値として外部呼出しの結果取得された整数値(32bit int)をそのまま返します。 HSP2.5互換の呼び出しでは、システム変数statに返される値を関数の戻り値とします。
バージョン | 3.3 |
作成日 | 2010/01/05 |
著作者 | onitama |
URL | http://hsp.tv/ |
備考 | ver3.3標準命令 |
タイプ | 内蔵命令 |
グループ | プリプロセッサ命令 |
対応環境 |
|
移植のヒント | HSPLet時は、関数と同名のメソッドが呼ばれることになります。(詳細は、HSPLetマニュアルを参照してください。) |
hs ファイル | hsphelp\i_prep.hs |