سوال در مورد ارسال و دریافت در برنامه نویسی سوکت؟
سلام
برنامه زیر یه برنامه چت ساده در محیط cmd هستش ،فقط یه مشکلی داره که چتش دو طرفه نیست
میخوام یکاری بکنم که هر دو طرف هم ارسال داشته باشند وهم دریافت (به صورت بی نهایت )
دوستان هرکسی سوکت پروگرمینگ کار کرده راهنمایی کنه.
از نظر دادن هزینه وقتی که صرفش می کنید هم مشکلی ندارم
کلاینت (ارسال کننده ) :
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace ConsoleApplication7
{
class Program
{
static void Main(string[] args)
{
Socket server = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
server.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 3902));
Console.WriteLine("connected");
while (true)
server.Send(Encoding.ASCII.GetBytes(Console.ReadLi ne()));
}
}
}
سرور (دریافت کننده ):
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
namespace ConsoleApplication8
{
class Program
{
static void Main(string[] args)
{
Socket sock = new Socket(AddressFamily.InterNetwork,
SocketType.Stream, ProtocolType.Tcp);
sock.Bind(new IPEndPoint(IPAddress.Any, 3902));
Console.WriteLine("waiting for a connection");
sock.Listen(10);
sock = sock.Accept();
Console.WriteLine("accpeted");
byte[] buffer = new byte[50];
while (sock.Connected)
{
System.Threading.Thread.Sleep(300);
try
{
if (sock.Receive(buffer) > 0)
{
Console.WriteLine(Encoding.ASCII.GetString(buffer) );
buffer = new byte[50]; // Reset buffer.
}
}
catch { }
}
}
}
}
نقل قول: سوال در مورد ارسال و دریافت در برنامه نویسی سوکت؟
این سورس رو از اینترنت گرفتین قبلا دیدمش خیلی ساده هم عمل میکنه
پیشنهاد می کنم مسنجر سی شارپ کد باز همین فرم رو نگاهی کنید