Visual Basic.NET

コールバック関数の作成

コールバック関数は次の書式になります。関数名は任意です。

Protected Sub CallBackProc(ByVal Id As Short, ByVal wParam As Integer, ByVal lParam As Integer, ByVal Param As IntPtr)

 

デリゲートの使用

Visual Basicで関数ポインタを扱うには、デリゲートを使用します。
各コールバックルーチン用のデリゲート宣言は、CCAN.vbファイル中に記述されています。

受信データがあることを通知

PEVENTCALLBACK

 

コールバック関数の登録

コールバック関数の登録には以下の関数を使用します。

受信データがあることを通知

CanNotifyEvent

 

コールバック関数登録の流れ

・デリゲートの初期化
・ガベージコレクション対策のため、割り込み処理用デリゲートに対するGCHandleを取得
・割り込み処理用デリゲートの固定ポインタを取得
・取得した固定ポインタを CanNotifyEvent関数のコールバック関数登録用関数で登録
・割り込み処理用デリゲートに対するGCHandleが必要なくなった時点で解放(アプリケーション終了時など)

これらの具体的なコーディング内容につきましては、サンプルプログラムおよび、Visual Basic .NET 使用時の注意点 をご参照ください。