【问题标题】:ZKTeco Biometric Device -10054 error on connectionZKTeco 生物识别设备 -10054 连接错误
【发布时间】:2017-10-03 12:23:30
【问题描述】:

早安,

所以我有一个连接到zkteco考勤单元的c#项目(k30是设备名称)

尝试连接时有时会随机收到从 sdk 代码 -10054 返回的错误

这是我用来连接的代码

 bIsConnected = BMDevice.Connect_Net(ipAddress, 4370);

这是用于返回错误的代码

 BMDevice.GetLastError(ref ErrorCode);

我似乎无法复制该错误,并且在提供的文档中没有编号为 -10054 的错误代码。我可以 ping 设备并 telnet 到分配有端口号的 ip,我也可以使用设备本身。

要解决这个问题,我必须手动重启设备,然后才能正常连接。

尝试询问 zkteco 的人,但与我交谈的人没有多大帮助

【问题讨论】:

  • 您是否尝试过在谷歌上搜索错误代码 - 这似乎是 sockets error WSAECONNRESET,表明连接已被重置。将此视为可能的解决方案:pcreview.co.uk/threads/…
  • 我有,但我有,但主要是针对设备本身,我会在搜索错误代码时用谷歌搜索,看看是否还有其他信息。我认为您在这里与该链接有关,并且感觉可能是问题所在。我确实有一个可以使用的断开连接方法,但它不带任何参数,即使我使用它,它仍然没有任何区别。感谢您的评论。

标签: c# zkteco


【解决方案1】:

ZKTeco的文档没有解释-10054是什么意思,但是可以推断这个错误是WSAECONNRESETsocket错误。

来自MSDN

连接被对等方重置。现有连接被远程主机强行关闭。如果远程主机上的对等应用程序突然停止,主机重新启动,主机或远程网络接口被禁用,或者远程主机使用硬关闭,这通常会导致(有关远程主机上 SO_LINGER 选项的更多信息,请参阅 setsockopt插座)。如果在一个或多个操作正在进行时,由于保活活动检测到故障而导致连接中断,也可能导致此错误。正在进行的操作因 WSAENETRESET 而失败。后续操作因 WSAECONNRESET 而失败。

根据我的经验,-10054 错误主要发生在网络中有两个具有相同 IP 地址的 ZKTeco 设备时。这就是你必须手动重启设备的原因。

【讨论】:

    猜你喜欢
    • 2018-12-19
    • 2021-12-13
    • 2017-10-10
    • 1970-01-01
    • 2012-11-08
    • 2017-01-12
    • 2021-11-25
    • 2019-12-17
    • 2018-11-20
    相关资源
    最近更新 更多