Remember to maintain security and privacy. Do not share sensitive information. Procedimento.com.br may make mistakes. Verify important information. Termo de Responsabilidade

Como criar um TcpClient em C# no Windows

O TcpClient é uma classe do .NET Framework que facilita a comunicação via protocolo TCP (Transmission Control Protocol). Este protocolo é amplamente utilizado em redes de computadores para garantir a entrega confiável de dados. No ambiente Windows, o TcpClient é frequentemente utilizado para desenvolver aplicações que necessitam de comunicação em rede, como clientes de chat, aplicativos de monitoramento e sistemas de controle remoto. Este artigo irá guiá-lo através do processo de criação de um TcpClient em C# no Windows, destacando sua importância e fornecendo exemplos práticos.


Exemplos:


1. Criando um TcpClient em C#:


Primeiro, vamos criar um projeto de console no Visual Studio para implementar um TcpClient.


   using System;
using System.Net.Sockets;
using System.Text;

class Program
{
static void Main(string[] args)
{
try
{
// Cria uma instância do TcpClient
TcpClient client = new TcpClient("127.0.0.1", 8080);

// Converte a mensagem em um array de bytes
string message = "Hello, Server!";
byte[] data = Encoding.ASCII.GetBytes(message);

// Obtém o stream para enviar a mensagem
NetworkStream stream = client.GetStream();

// Envia a mensagem
stream.Write(data, 0, data.Length);
Console.WriteLine("Mensagem enviada: {0}", message);

// Recebe a resposta do servidor
data = new byte[256];
int bytes = stream.Read(data, 0, data.Length);
string responseData = Encoding.ASCII.GetString(data, 0, bytes);
Console.WriteLine("Resposta recebida: {0}", responseData);

// Fecha o stream e o cliente
stream.Close();
client.Close();
}
catch (Exception e)
{
Console.WriteLine("Exceção: {0}", e.Message);
}

Console.WriteLine("\nPressione ENTER para continuar...");
Console.Read();
}
}

2. Configurando o Servidor para Teste:


Para testar o TcpClient, podemos criar um simples servidor TCP em C# que escutará na porta 8080 e responderá às mensagens recebidas.


   using System;
using System.Net;
using System.Net.Sockets;
using System.Text;

class Program
{
static void Main(string[] args)
{
TcpListener server = null;
try
{
// Define o endereço IP e a porta para o servidor
Int32 port = 8080;
IPAddress localAddr = IPAddress.Parse("127.0.0.1");

// Cria uma instância do TcpListener
server = new TcpListener(localAddr, port);

// Inicia o servidor
server.Start();

// Buffer para leitura de dados
Byte[] bytes = new Byte[256];
String data = null;

// Aguarda uma conexão
Console.WriteLine("Aguardando uma conexão... ");

// Aceita uma conexão pendente
TcpClient client = server.AcceptTcpClient();
Console.WriteLine("Conectado!");

// Obtém o stream para leitura e escrita
NetworkStream stream = client.GetStream();

int i;

// Lê os dados enviados pelo cliente
while ((i = stream.Read(bytes, 0, bytes.Length)) != 0)
{
// Converte os dados recebidos em string
data = Encoding.ASCII.GetString(bytes, 0, i);
Console.WriteLine("Recebido: {0}", data);

// Processa os dados recebidos
data = data.ToUpper();

// Converte a string processada em bytes
byte[] msg = Encoding.ASCII.GetBytes(data);

// Envia a resposta de volta ao cliente
stream.Write(msg, 0, msg.Length);
Console.WriteLine("Enviado: {0}", data);
}

// Fecha o cliente
client.Close();
}
catch (SocketException e)
{
Console.WriteLine("SocketException: {0}", e);
}
finally
{
// Para o servidor
server.Stop();
}

Console.WriteLine("\nPressione ENTER para continuar...");
Console.Read();
}
}

To share Download PDF

Gostou do artigo? Deixe sua avaliação!
Sua opinião é muito importante para nós. Clique em um dos botões abaixo para nos dizer o que achou deste conteúdo.