Если будут какие нибудь вопросы спрашивайте все распишу все обьясню. Клиент: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Net; namespace ConsoleApplication1 { class Program { static Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); static void Main(string[] args) { Console.WriteLine("YTUPS Client----->"); socket.Connect("127.0.0.1", 80); string message = Console.ReadLine(); byte[] buffer = Encoding.ASCII.GetBytes(message); socket.Send(buffer); Console.ReadLine(); Console.ReadLine(); } } } Код using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Net; namespace ConsoleApplication1 { class Program { static Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); static void Main(string[] args) { Console.WriteLine("YTUPS Client----->"); socket.Connect("127.0.0.1", 80); string message = Console.ReadLine(); byte[] buffer = Encoding.ASCII.GetBytes(message); socket.Send(buffer); Console.ReadLine(); Console.ReadLine(); } } } Сервер: using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Net; namespace ConsoleApplication1 { class Program { static Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); static void Main(string[] args) { string b = "#start"; Console.WriteLine("YTUPS Server--->"); socket.Bind(new IPEndPoint (IPAddress.Any , 80)); socket.Listen(5); Socket client = socket.Accept(); Console.WriteLine("#connection conducted"); byte[] buffer = new byte[1024]; client.Receive(buffer); Console.WriteLine(Encoding.ASCII.GetString(buffer)); byte[] b1 = Encoding.ASCII.GetBytes(b); if(b1 == buffer) { Console. WriteLine("ZBS"); } Console.ReadLine(); Console.ReadLine(); } } } Код using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net.Sockets; using System.Net; namespace ConsoleApplication1 { class Program { static Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp); static void Main(string[] args) { string b = "#start"; Console.WriteLine("YTUPS Server--->"); socket.Bind(new IPEndPoint (IPAddress.Any , 80)); socket.Listen(5); Socket client = socket.Accept(); Console.WriteLine("#connection conducted"); byte[] buffer = new byte[1024]; client.Receive(buffer); Console.WriteLine(Encoding.ASCII.GetString(buffer)); byte[] b1 = Encoding.ASCII.GetBytes(b); if(b1 == buffer) { Console. WriteLine("ZBS"); } Console.ReadLine(); Console.ReadLine(); } } }
постараюсь но не обещаю поскольку я сам не спец в этом деле мне еще многое предстоит выучить,есть к чему идти а насчет вопросов по данному клиенту и серверу без проблем отвечу)
Разделение на части тут не причем, максимальный размер "пакета" составляет максимальную емкость инт32, что почти 2+ гб. Все зависит как у тебя передает сервер, если он передает полный пакет(не частями), то передатьвать пока у него не закончится возможность передать(данные закончатся) или возможность запись в сетевой поток(соединение отвалится или еще что-то). А клиент соответственно должен проверять свойство Available, оно дает возможность узнать количество байтов в массиве доступных для чтения. Т.е. ты можешь проверять к примеру после подключения, к примеру, 3 минуты - появляются ли новые данные или нет, читать их и записывать в переменную(например, StringBuilder и т.д.), а потом уже создавать событие, или как-то еще обрабатывать все это действо. Реализацию можно сделать как угодно, все зависит от задач и ресурсов.
100 лет искал подобную тему ради вопроса :D Слушай помоги пожалуйста как раз в 1 единственном вопросе, есть чат ( клиент-сервер) что бы он пахал во всем интернете естественно нужно открыть порт и указать IP , открыл порт , пробросил - вот упирается софтина и все, а по локалке пашет, что не так я делаю? По идее все изи а такая тупость...
как знакомо))),кароч я думаю что проблема в том что сервер не видит клиент потому что у тебя провайдер выдает белый айпи,папробуй его прописать,узнать его можно на 2ip.ru заодно проверь на том же сайте точно ли открыт порт потому что я вот все сделал как надо но у меня не открывается порт
спасибо друг) у меня как раз наоборот да я был на 2ip - порт открыт, но я кажется сам дотюхал что не так - у меня же динамику провайдер выдает видимо вот и ответ)
ну если тебе не в падлу можешь там целое расследование провести и да кстати на ютубе полно такого материала,прикол в том что на лолзе об этом мало пишут и как показала практика есть люди которые искали этот материал
ну если тебе не в падлу можешь там целое расследование провести и да кстати на ютубе полно такого материала,прикол в том что на лолзе об этом мало пишут и как показала практика есть люди которые искали этот материал