首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Zkemkeeper OnattTransactionex监听器监听多台设备

Zkemkeeper OnattTransactionex监听器监听多台设备
EN

Stack Overflow用户
提问于 2019-06-20 14:46:15
回答 1查看 207关注 0票数 0

我使用axCZKEM1_OnAttTransactionEx(string EnrollNumber,int IsInValid,int AttState,int VerifyMethod,int Year,int could,int Day,int Hour,int Minute,int Second,int WorkCode)将数据插入到数据库中,但是找不到设备ID,我需要知道是哪台机器触发了这个事件。

我已经通过一组axCZKEM完成了,事件工作正常,但无法获得被触发机器的ip

代码语言:javascript
复制
    For i = 0 To LsvMachines.Items.Count - 1
        If LsvMachines.Items(i).SubItems(2).Text = "Connected" Then
            axCZKEMiu(Val(LsvMachines.Items(i).SubItems(3).Text)).Disconnect()
            RemoveHandler axCZKEMiu(Val(LsvMachines.Items(i).SubItems(3).Text)).OnAttTransactionEx, AddressOf AxCZKEM1_OnAttTransactionEx
            bIsConnected = False
            LsvMachines.Items(i).SubItems(2).Text = "Connect"
        Else
            ReDim Preserve axCZKEMiu(mIndex)
            axCZKEMiu(mIndex) = New zkemkeeper.CZKEM
            bIsConnected = axCZKEMiu(mIndex).Connect_Net(LsvMachines.Items(i).Text, 4370) 'IP , Port

            If bIsConnected = True Then
                LsvMachines.Items(i).SubItems(2).Text = "Connected"
                LsvMachines.Items(i).SubItems(3).Text = mIndex
                If axCZKEMiu(mIndex).RegEvent(1, 65535) = True Then
                    'Here you can register the realtime events that you want to be triggered(the parameters 65535 means registering all)
                    AddHandler axCZKEMiu(mIndex).OnAttTransactionEx, AddressOf AxCZKEM1_OnAttTransactionEx
                End If
                mIndex = mIndex + 1
                bIsConnected = False
            End If
        End If
    Next
代码语言:javascript
复制
#Region "RealTime Events"

    Private Sub AxCZKEM1_OnAttTransactionEx(ByVal sEnrollNumber As String, ByVal iIsInValid As Integer, ByVal iAttState As Integer, ByVal iVerifyMethod As Integer, _
                      ByVal iYear As Integer, ByVal iMonth As Integer, ByVal iDay As Integer, ByVal iHour As Integer, ByVal iMinute As Integer, ByVal iSecond As Integer, ByVal iWorkCode As Integer)

       'I want to get ip address of triggered machine before saving 

    End Sub

#End Region
EN

回答 1

Stack Overflow用户

发布于 2020-04-13 15:39:20

你不能通过IP连接解决方案来定义机器ID,只能给它分配数字1。但你可以使用IP地址来识别机器。

代码语言:javascript
复制
namespace XXXXX
{
    internal class DeviceInfo
    {
        public string IPAddress { get; set; }
        public string Port { get; set; }
        public string MachineNumber { get; set; }
    }
}  
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56680425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档