C \ # 소켓 통신 클 라 이언 트 서버 엔 드 코드
클 라 이언 트:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Net;
using System.Net.Sockets;
namespace TcpClient
{
public partial class Form1 : Form
{
public string serverIP = "127.0.0.1";
public int serverPort = 8888;
public IPAddress serverIPAddress;
public System.Net.Sockets.TcpClient tcpClient;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
serverIP = ipbox.Text;
serverIPAddress = IPAddress.Parse(serverIP);
serverPort = int.Parse(portbox.Text);
tcpClient = new System.Net.Sockets.TcpClient();
tcpClient.Connect(serverIPAddress,serverPort);
if (tcpClient == null)
{
MessageBox.Show(" , !",
" ",
MessageBoxButtons.OK,
MessageBoxIcon.Exclamation);
}
else
{
//
NetworkStream networkStream = tcpClient.GetStream();
//
byte[] userName_byte = Encoding.Unicode.GetBytes(userNameBox.Text.Trim());
networkStream.Write(userName_byte,0,userName_byte.Length);
networkStream.Flush();
//
byte[] inforBuffer = new byte[100];
networkStream.Read(inforBuffer,0,inforBuffer.Length);
networkStream.Flush();
string resultFromServer = Encoding.Unicode.GetString(inforBuffer);
this.statusbox.Text = resultFromServer;
}
}
}
}
서버 쪽:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net.Sockets;
using System.Net;
using System.Threading;
namespace TcpServer
{
class Listener
{
public TcpListener tcpListener;
public int port = 8888;
public IPAddress ipAddress = IPAddress.Parse("10.108.13.27");
public void Start()
{
tcpListener = new TcpListener(ipAddress,port);
tcpListener.Start();
Console.WriteLine("begin listen port {0}",port);
while (true)
{
byte[] buffer = new byte[100];
Socket newClient = tcpListener.AcceptSocket();
newClient.Receive(buffer);
string userName = Encoding.Unicode.GetString(buffer).TrimEnd('\0');
Console.WriteLine("user :{0} login",userName);
newClient.Send(Encoding.Unicode.GetBytes("success"));
Thread threadClient = new Thread(new ParameterizedThreadStart(clientProcess));
threadClient.Start(newClient);
}
}
public void clientProcess(object info)
{
Socket socket = info as Socket;
}
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
React 구성 요소에서 소켓 이벤트 리스너가 여러 번 실행됩니다.기본적이지만 종종 간과되는 사이드 프로젝트를 하면서 배운 것이 있습니다. 이 프로젝트에는 단순히 두 가지 주요 부분이 포함되어 있습니다. 프런트 엔드: 반응 및 재료 UI 백엔드: Express, Typescript...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.