从IP地址或COM端口获取数据?

时间:2012-05-09 11:25:12

标签: c# .net sockets serial-port cardreader

我要离开极限并问你一个非常具体的问题。我办公室里有一个连接到以太网卡的读卡器设备。下面是该读卡器程序的配置窗口的屏幕截图(随程序一起分发)。

enter image description here

有一个IP地址,一个端口,它说COM3并且有波特率。分布式程序运行正常。它从设备中获取数据。

我的问题是,如何从此设备获取数据?我是否必须建立套接字连接?

注意:在分布式程序的文件夹中没有关联的DLL。只有VB6程序DLL的。 (顺便说一句,分布式程序是在VB6中开发的)。

感谢您的想法。

更新:

这是我的最终代码。

 byte[] b = null;
    TcpClient client = new TcpClient("10.1.2.100", 5005);
    client.SendBufferSize = 6550000;
    NetworkStream stream = client.GetStream();
    MemoryStream ms = new MemoryStream();

    int count = 0;
    do
    {
        byte[] buffer = new byte[1024];
        count = stream.Read(buffer, 0, 1024);
        ms.Write(buffer, 0, count);
    } while (stream.CanRead && count > 0);
    b = ms.ToArray();

但NetworkStream的DataAvailable属性为false ..

1 个答案:

答案 0 :(得分:1)

如果该程序没有在设备链​​接到其COM端口的计算机上运行,​​则必须通过TCP / IP访问它(给出问题中的信息)。

因此,如果您在端口5005上访问IP 10.1.2.100,您应该能够与设备通信。