【问题标题】:Developing IP messenger in VB.Net在 VB.Net 中开发 IP Messenger
【发布时间】:2011-12-29 20:29:18
【问题描述】:

我想在 VB.Net 中为连接在 LAN 中的所有用户开发一个 Ip messenger 应用程序。 我可以根据 IP 地址向用户发送消息。

我想要一个功能来列出所有连接(使用)到这个应用程序的用户,以便他们可以接收消息。

如何检查其他位置的人是否连接到应用程序。

我首先使用 System.Net.NetworkInformation.Ping 和 PingReply 来获取用户是否可用。

如果不检查我是否开始向未使用的位置发送消息,那么当我尝试在特定端口运行连接用户时会引发 Socket 异常。

            Dim tcpClient As New TcpClient(ip, 2828)

如果我在 try catch 块中编写此代码,也会在延迟后返回错误。有什么快速的方法可以检查特定端口是否有监听器?

【问题讨论】:

    标签: .net vb.net network-programming tcpclient tcplistener


    【解决方案1】:

    如果这只是为了 LAN 使用,我建议查看 UDP 广播。让每个客户端每秒在网络上广播一次其可用性。然后您可以根据自上次更新数据包以来的时间更新本地可用性显示。在发送带有消息的数据包时,侦听应用程序 ACK。如果您在 5 秒内没有收到一份,则表明交付失败。

    【讨论】:

    • 我现在创建了应用程序确认来收听我已经创建了一个单独的线程。不必始终继续此侦听器线程。如何确定运行该侦听器线程的时间。
    猜你喜欢
    • 1970-01-01
    • 2013-01-17
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 1970-01-01
    • 2013-02-14
    • 2013-01-24
    相关资源
    最近更新 更多