DioDmSetStopEvent関数で設定した転送完了のイベントが発生した場合に呼び出されるコールバック関数を登録します。
Ret = DioDmSetStopCallBackProc ( Id , CallBackProc , Param )
Id
[ VB.NET: Short ][ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
DioInitで取得したデバイスIDを指定します。
CallBackProc
[ VB.NET: IntPtr ] [ C, C++: long * ] [ C#: IntPtr ] [ Python: ctypes.POINTER(ctypes.c_long)
]
コールバック関数のアドレスを指定します。
NULLを指定するとコールバックによる通知設定をクリアします。
Param
[ VB.NET: IntPtr ] [ C, C++: void * ] [ C#: void * ] [ Python: ctypes.c_void_p
]
コールバックに渡すパラメータのアドレスを指定します。パラメータが必要ない場合は、NULLを指定してください。
Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]
定義 |
値 [Dec] |
意味 |
DIO_ERR_SUCCESS |
0 |
正常終了 |
DIO_ERR_SYS_RECOVERED_FROM_STANDBY |
7 |
スタンバイモードから復帰したため、DioResetDevice関数を実行してください |
DIO_ERR_DLL_INVALID_ID |
10001 |
無効なIDが指定されました。 |
DIO_ERR_DLL_CALL_DRIVER |
10002 |
ドライバーを呼び出せません(デバイスI/Oコントロールに失敗)。 |
DIO_ERR_SYS_NOT_SUPPORTED |
20001 |
このデバイスではこの関数は使用できません。 |
その他のエラー(参照:エラーコード詳細)
なし
この関数を使用してコールバック関数の登録を行うことで、転送完了イベントが発生した際にコールバック関数が呼び出されます。
コールバック関数の動作はイベントと似ていますが、イベントと異なりウィンドウハンドルを必要としないため、ウィンドウを持たないアプリケーションでも使用できます。
DioDmSetStopEvent関数用コールバック関数を登録します。
VB.NET |
VisualBasic.NETでご使用の際の注意点を参照してください。 |
C, C++ |
long Ret; |
C# |
VisualC#.NETでご使用の際の注意点を参照してください。 |
Python |
Ret = ctypes.c_long() |
関連項目
DioDmTransferStart DioDmSetStopEvent
コールバック関数
Ret = CallBackProc ( Id , wParam , lParam , Param )
Id
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
DioInit 関数で取得したIDが渡されます。
wParam
[ VB.NET: Integer ] [ C, C++: WPARAM ] [ C#: int ] [ Python: ctypes.wintypes.WPARAM
]
ドライバーからパラメータが渡されます。現在は使用しません。
lParam
[ VB.NET: Integer ] [ C, C++: LPARAM ] [ C#: int ] [ Python: ctypes.wintypes.LPARAM
]
LOWORD(lParam)=転送方向 DIODM_DIR_IN もしくは、DIODM_DIR_OUT
※HIWORD、LOWORDは、それぞれ上位ワード、下位ワードを表します。
Param
[ VB.NET: IntPtr ] [ C, C++: void * ] [ C#: void * ] [ Python: ctypes.c_void_p
]
DioSetTrgCallBackProc関数に指定したパラメータが渡されます。パラメータにNULLが指定された場合、ここにはNULLが格納されます。
"DIO000"のようにデバイス名を指定すれば、どのデバイスに対するイベントか判断することができます。
戻り値
なし