#cbmethod

COM コールバッククラスにメソッドを登録する

#cbmethod vtable_idx ret_type arg_types..., *label

vtable_idx : メソッドの vtable インデックス (3 以上)
ret_type   : 戻り値型 (普通は int = HRESULT)
arg_types  : 引数型のカンマ区切り (int / int64 / intptr / wstr / str / comobj / double / float)
label      : メソッドが呼ばれたとき gosub するラベル

(プラグイン / モジュール : hspcbcom)

解説

#defcbcom#endcbcom の中で使い、各 vtable slot に対応する HSP ラベルを宣言する。
ラベルは前方参照可能 (定義より前に書ける)。

引数列の最後はかならず *label で終わる。
引数型 intptr はプラットフォーム依存の整数 (x86=32bit / x64=64bit) で、ポインタ系の
引数を 1 つの HSP ソースで両プラットフォーム対応するために使う。

関連項目

#defcbcomCOM コールバックインターフェース クラス定義開始(hspcbcom)
#endcbcomCOM コールバッククラス定義終了(hspcbcom)

サンプル逆引き (2)

sample_01_urldownload.hsp
sample_02_droptarget.hsp

情報

プラグイン / モジュールhspcbcom
バージョン0.1
作成日2026/04/14
著作者IronHSP project
URLhttps://github.com/inovia/IronHSP
備考hspcbcom (#defcbcom / #cbmethod / #endcbcom / newcomcb / comprm 等) は IronHSP の
hsp3net ランタイムに組み込まれているため、追加の include は不要です。
hsp3net 専用 (vanilla hsp3 では使えません)。
タイプ内蔵命令
グループhspcbcom - COM コールバックインターフェース
対応環境
  • その他 : Win10 22H2+
hs ファイルhsphelp\hspcbcom.hs