DioDmSetStopEvent


機能

転送完了のメッセージを通知するように設定します。

書式

Ret = DioDmSetStopEvent ( Id , Direction , hWnd )

引数

Id [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
DioInitで取得したデバイスIDを指定します。

Direction [ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short ]
転送方向を設定してください。

定義

[Dec]

意味

DIODM_DIR_IN

1

入力

DIODM_DIR_OUT

2

出力

hWnd [ VB.NET: IntPtr ] [ C, C++: HWND ] [ C#: IntPtr ] [ Python: ctypes.wintypes.HANDLE ]
転送完了メッセージを受け取るウィンドウハンドルを指定します。
ウィンドウハンドルは、VCの場合は、m_hWndで取得できます。
ウインドウメッセージを使用せず、コールバックを使用されたい場合は0を指定してください。

戻り値

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

このデバイスではこの関数は使用できません。

DIO_ERR_SYS_IODIRECTION

20500

入出力方向が設定範囲外です。

その他のエラー(参照:エラーコード詳細

初期値

なし

説明

この関数を使用すると、サンプリング/ジェネレーティングの完了を通知させることができます。

hWndにウインドウハンドルを指定した場合、サンプリング/ジェネレーティングが完了した時点で、指定したウィンドウハンドルに、DIO_DMM_STOP = 1350HのメッセージがPostMessageされます。メッセージのパラメータである、wParam、lParamには、それぞれ以下の情報が入ります。

LOWORD(wParam)=DioInit関数で取得したID
LOWORD(lParam)=転送方向 DIODM_DIR_IN もしくは、DIODM_DIR_OUT

※HIWORD、LOWORDは、それぞれ上位ワード、下位ワードを表します。
メッセージ処理の記述方法詳細については、各言語のサンプルプログラムを参照してください。

使用例

入力転送完了のメッセージを通知を設定します。

VB.NET

Dim Ret As Integer
Ret = DioDmSetStopEvent ( Id , DIODM_DIR_IN , Handle )
 

C, C++

long Ret;
Ret = DioDmSetStopEvent ( Id , DIODM_DIR_IN , m_hWnd );
 

C#

int Ret;
Ret = dio.DmSetStopEvent ( Id , (short)CdioConst.DIODM_DIR_IN , Handle );
 

Python

Ret = ctypes.c_long()
handle = ctypes.windll.user32.FindWindowW(0, "割り込み")
Ret.value = cdio.DioDmSetStopEvent ( Id , cdio.DIODM_DIR_IN , handle )
 

関連項目

DioDmTransferStart DioSetStopCallBackProc