parsuser
پنج شنبه 15 دی 1390, 21:43 عصر
سلام
برنامه زیر یه برنامه چت ساده در محیط 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 { }
}
}
}
}
برنامه زیر یه برنامه چت ساده در محیط 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 { }
}
}
}
}