AI搜索

发需求

  • 发布软件需求
  • 发布代理需求

c#局域网内通信,C#局域网通信技术实现

   2025-03-26 11
导读

在C#中实现局域网内通信,我们可以使用Socket编程。以下是一个简单的示例,展示了如何在局域网内进行通信。

在C#中实现局域网内通信,我们可以使用Socket编程。以下是一个简单的示例,展示了如何在局域网内进行通信:

首先,我们需要创建一个Socket对象,并设置其IP地址、端口和协议。然后,我们可以通过监听特定的端口来接收来自其他计算机的消息。最后,我们可以向其他计算机发送消息。

以下是代码实现:

```csharp

using System;

using System.Net;

using System.Net.Sockets;

using System.Text;

using System.Threading;

class Program

{

static void Main()

{

// 创建一个Socket对象

Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);

// 设置IP地址和端口

IPAddress ipAddress = IPAddress.Parse("192.168.1.100"); // 目标IP地址

int port = 8080; // 目标端口

socket.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.ReuseAddress, true);

socket.Bind(new IPEndPoint(ipAddress, port));

// 监听端口

while (true)

{

byte[] buffer = new byte[1024];

c#局域网内通信,C#局域网通信技术实现

int bytesRead = socket.Receive(buffer);

if (bytesRead > 0)

{

string message = Encoding.ASCII.GetString(buffer, 0, bytesRead);

Console.WriteLine("接收到消息: " + message);

// 向其他计算机发送消息

SendMessageToOtherComputer(message);

}

}

}

// 向其他计算机发送消息

static void SendMessageToOtherComputer(string message)

{

using (TcpClient client = new TcpClient())

{

client.Connect(new IPEndPoint(IPAddress.Parse("192.168.1.101"), 8080)); // 连接到目标计算机

using (NetworkStream stream = client.GetStream())

{

byte[] buffer = Encoding.ASCII.GetBytes(message);

stream.Write(buffer, 0, buffer.Length);

}

}

}

}

```

这个示例中,我们创建了一个Socket对象,并将其绑定到192.168.1.100的8080端口上。然后,我们进入一个无限循环,不断接收来自其他计算机的消息,并将其打印出来。当接收到消息时,我们会调用SendMessageToOtherComputer方法,将其发送到另一个计算机。

请注意,这个示例仅用于演示目的,实际应用中需要考虑更多的安全性和错误处理问题。

 
举报收藏 0
免责声明
• 
本文内容部分来源于网络,版权归原作者所有,经本平台整理和编辑,仅供交流、学习和参考,不做商用。转载请联系授权,并注明原文出处:https://www.itangsoft.com/baike/show-349735.html。 如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除。涉及到版权或其他问题,请及时联系我们处理。
 
 
更多>热门产品
 
 
更多>同类知识

入驻

企业入驻成功 可尊享多重特权

入驻热线:177-1642-7519

企业微信客服

客服

客服热线:177-1642-7519

小程序

小程序更便捷的查找产品

为您提供专业帮买咨询服务

请用微信扫码

公众号

微信公众号,收获商机

微信扫码关注

顶部