我想用C#连接生物公制机器.我使用zkemkeeper dll连接机器
我用connect_net方法连接ip地址和端口
public partial class Form1 : Form
{
public zkemkeeper.CZKEM machineObj = new zkemkeeper.CZKEM();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
bool status = false;
status = machineObj.Connect_Net("10.10.32.162", 5005);
if (status)
{
MessageBox.Show("Connect to machine successfully");
}
}
}
Run Code Online (Sandbox Code Playgroud)
现在这台机器Obj.Connect_Net总是返回false这个任何一个解决方案背后的原因是什么?
错误代码是-2
很久以前,当我处理它时,我在这篇文章中发现了一些关于代码项目的有用提示:
1) 连接被防火墙设置拒绝(在您的系统或路由器上):检查防火墙日志。
2) 设备有白名单或黑名单配置,不允许从系统的 IP 地址进行连接:检查设备的配置和日志文件(如果存在)。
3) 当您的系统与设备不在同一子网时,不会路由包:在设备的下一个网关上配置端口转发。
如果您的设备作为白名单或黑名单配置,您最好开始深入研究您的日志和设备配置。
同时也开始探索您的防火墙(如果有的话),以确保您不会被阻止连接到设备。
编辑:我看到你的评论,所以这可能是你的问题的原因。
然而,最常见的原因是第三个,因为它更容易被错过,不引人注目且不引人注目。确保您的系统与设备位于同一子网中。如果没有,请在设备上配置端口转发。