Ethernetデバイスの通信状態を取得する関数です。マルチプロセス対応関数です。
Ret = DioGetNetCommunicationInfo ( Id , InfoType , InfoData )
Id
[ VB.NET: Short ] [ C, C++: short ] [ C#: short ] [ Python: ctypes.c_short
]
DioInitで取得したデバイスIDを指定します。
InfoType
[ VB.NET:Short ] [ C, C++:short] [ C#:short ] [ Python: ctypes.c_short
]
取得する情報のタイプを指定します。情報のタイプは以下の定義値のいずれかの値です。
定義 |
値 [Dec] |
意味 |
IDIO_NET_TYPE_REGISTER_PROCESS |
0 |
プロセスの登録状況 |
InfoData
[ VB.NET:Integer ] [ C, C++:long *] [ C#:out int ] [ Python: ctypes.POINTER(ctypes.c_long)
]
取得情報を格納する変数のアドレスを指定します。
Ret [ VB.NET: Integer ] [ C, C++: long ] [ C#: int ] [ Python: ctypes.c_long ]
定義 |
値 |
意味 |
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_INFO_INVALID_INFOTYPE |
10052 |
指定したデバイス情報タイプが範囲外です。 |
DIO_ERR_SYS_NOT_SUPPORTED |
20001 |
このデバイスではこの関数は使用できません。 |
その他のエラー(参照:エラーコード詳細)
Ethernetデバイスの通信状態を取得する関数です。
指定した情報タイプにより取得できる取得情報を以下に記載いたします。
プロセスの登録状況
関数を実行したプロセスがイベントの通知先としてデバイスに登録されているかどうかを確認できます。
定義 |
値 [Dec] |
意味 |
DIO_IVALUE_PROCESS_UNREGISTERED |
0 |
未登録 |
DIO_IVALUE_PROCESS_REGISTERED |
1 |
登録済み |
プロセスの登録が解除された場合、イベントは通知されなくなります。
イベント通知を再び行う場合、イベント通知設定を再度実行してください。
プロセスの登録状況を取得します。
VB.NET |
Dim Ret As Integer Dim info_data As Integer Ret = DioGetNetCommunicationInfo
( Id , IDIO_NET_TYPE_REGISTER_PROCESS , info_data ) |
C, C++ |
long Ret; long info_data; Ret = DioGetNetCommunicationInfo
( Id , IDIO_NET_TYPE_REGISTER_PROCESS , &info_data ); |
C# |
int Ret; int info_data; Ret = Dio.GetNetCommunicationInfo
( Id , IDIO_NET_TYPE_REGISTER_PROCESS , out info_data ); |
Python |
Ret = ctypes.c_long() info_data = ctypes.c_long() Ret.value = cdio.DioGetNetCommunicationInfo
( Id , cdio.IDIO_NET_TYPE_REGISTER_PROCESS , ctypes.byref(info_data)
) |
DioNotifyInterrupt DioNotifyTrg