Компьютерный форум NoWa.cc Здесь может быть Ваша реклама
Правила Форума
редакция от 22.06.2020
Форум .::NoWa.cc::.
Вернуться   Компьютерный форум NoWa.cc > В помощь вебмастеру > Программирование > .NET

Уважаемые пользователи nowa.cc. Мы работаем для вас более 20 лет и сейчас вынуждены просить о финансовой помощи по оплате за сервер.
Окажите посильную поддержку, мы очень надеемся на вас. Реквизиты для переводов ниже.
Webmoney Webmoney WMZ: Z021474945171 Webmoney WME: E159284508897 Webmoney WMUSDT: T206853643180
Кошелёк для вашей помощи YooMoney 4100117770549562
YooMoney Спасибо за поддержку!

Ответ
 
Опции темы Опции просмотра Language
Старый 22.11.2007, 10:27   #1
Пользователь
 
Пол:Мужской
Регистрация: 17.09.2005
Сообщений: 64
Репутация: 8
Post Работа с сокетами в C#

Подскажите пожалуйста.
У меня курсовая работа написать простейший прокси сервер на C#
Разбираю технологию работы с сокетами. Как подключаться к серверу с использованием сокетов я понял

IPHostEntry lipa = Dns.Resolve("localhost");
IPEndPoint lep = new IPEndPoint(lipa.AddressList[0], 80);
//Exception e;
Socket s = new Socket(lep.Address.AddressFamily,
SocketType.Stream,
ProtocolType.Tcp);
try{
s.Connect(lep);
}
catch {

}


Посылать запросы

byte[] msg = Encoding.ASCII.GetBytes("This is a test");

int i = s.Send(msg, 0, msg.Length, SocketFlags.None);

Принимать ответы

byte[] bytes = new byte[1024];
s.Receive(bytes, 0, s.Available, SocketFlags.None);



Но не могу понять, каким образом создать сервер к которому надо можно подключиться.

Насколько я понимаю надо чтобы на другом компьютере сокет прослушивал нужный нам порт и принимал команду при получении данных на этот порт.

Или это надо делать используя другой объект.

Подскажите пожалуйста каким образом это сделать.

Заранее спасибо за ответ.
_Ramzes вне форума
 
Ответить с цитированием Вверх
Здесь может быть Ваша реклама
Здесь может быть Ваша реклама


Реклама:


Старый 22.11.2007, 21:52   #2
Forger
Неактивный пользователь
 
Пол:Мужской
Регистрация: 04.08.2007
Сообщений: 38
Репутация: 52
По умолчанию Ответ: Работа с сокетами в C#

Насколько я понимаю тебе нужно создать приложение клиент-сервер. На каком-нибудь компе располагается клиент, а на компе подключенном к и-нету серверная часть.

Клиентская часть посылает запросы на серверную. Напрмер если у тебя хттп прокси то клиентская часть - это диалог с кнопкой и текстбоксом для ввода URL, а далее просто этот URL передается серверной части серварная часть в ответ на это просто передает хтмл страницы на клиентскую часть.

В клиентской части кроме кнопки и текстбокса можно сделать окно просмотра как в браузере, делается это не сложно. Полученный хтмл от серверной части, локально можно шде-то сохранять в кеш, а от туда путем чтения из памяти или жесткого диска отображать в наше окно "браузера".

Для хттп прокси можно юзать классы:
HttpWebRequest
WebResponse

Для фтп:
FtpWebRequest
WebResponse

По сути у тебя получается серверная часть, это обычный загрузчик веб-страниц, а если для фтп, то достаточно для начала просто давать юзеру листинг фолдеров на фтп.
Forger вне форума
 
Ответить с цитированием Вверх
Старый 16.01.2008, 03:05   #3
__Юрий__
Неактивный пользователь
 
Регистрация: 16.01.2008
Сообщений: 4
Репутация: 0
По умолчанию Ответ: Работа с сокетами в C#

Если желаешь, то я могу тебе сбросить образцы ниписаные на С++
__Юрий__ вне форума
 
Ответить с цитированием Вверх
Старый 26.01.2008, 00:31   #4
DrWolf
Неактивный пользователь
 
Регистрация: 25.01.2008
Сообщений: 6
Репутация: 0
По умолчанию Ответ: Работа с сокетами в C#

если я правильно понял то читай msdn по TcpListener
DrWolf вне форума
 
Ответить с цитированием Вверх
Старый 27.01.2008, 12:27   #5
peppernowa
Неактивный пользователь
 
Пол:Мужской
Регистрация: 05.07.2007
Сообщений: 13
Репутация: 8
По умолчанию Ответ: Работа с сокетами в C#

Читайте первоисточник
пример асинхронного серверного сокета:
http://msdn.microsoft.com/library/ru...ketexample.asp

Пример асинхронного клиентского сокета:
http://msdn.microsoft.com/library/ru...ketexample.asp

Удачи.
peppernowa вне форума
 
Ответить с цитированием Вверх
Старый 20.02.2009, 13:37   #6
DemonSoft
Неактивный пользователь
 
Регистрация: 19.02.2009
Сообщений: 21
Репутация: 0
По умолчанию Re: Работа с сокетами в C#

Пародон что вмешиваюсь... несколько лет рабоатл с сокетами, но сейчас есть прекрасный механизм WCF.. После его освоение сокеты кажутся кошмарным сном
DemonSoft вне форума
 
Ответить с цитированием Вверх
Старый 22.02.2009, 14:04   #7
_NuClear
Неактивный пользователь
 
Регистрация: 17.03.2008
Сообщений: 3
Репутация: 1
По умолчанию Re: Работа с сокетами в C#

WCF интересно, сам собараюсь писать программу типа клиент сервер. как только узнаю подробней отпишусь тут .
_NuClear вне форума
 
Ответить с цитированием Вверх
Старый 28.04.2009, 16:26   #8
status_quo
Неактивный пользователь
 
Регистрация: 27.04.2009
Сообщений: 5
Репутация: 1
По умолчанию Re: Работа с сокетами в C#

Последние 2 года использую XML RPC.
Проще не бывает
http://www.xmlrpc.com/
Ecть библиотека для .net
status_quo вне форума
 
Ответить с цитированием Вверх
Старый 19.05.2009, 06:18   #9
Magilan
Неактивный пользователь
 
Пол:Мужской
Регистрация: 12.12.2008
Сообщений: 6
Репутация: 1
По умолчанию Re: Работа с сокетами в C#

Если не хочеш заморачиваться с FtpWebRequest/WebResponse можеш посмотреть библеотеку BytesRoad.
Если нужно могу выложить
Magilan вне форума
 
Ответить с цитированием Вверх
Старый 02.10.2009, 06:37   #10
iamxor
Неактивный пользователь
 
Регистрация: 01.10.2009
Сообщений: 10
Репутация: 1
По умолчанию Re: Работа с сокетами в C#

http://www.devhood.com/Tutorials/tut...utorial_id=709
iamxor вне форума
 
Ответить с цитированием Вверх
Ответ


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа с .CUE Olegaaator Просмотр, конверторы и монтаж Аудио&Видео 11 08.01.2011 16:00
Работа с PHP Tipsan PHP 8 10.09.2008 02:56
Работа с Bresque 3.0 Kalush UNIX, Linux, MacOs для PC и другие ОС 1 25.09.2006 14:09

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 11:05. Часовой пояс GMT +3.


Copyright ©2004 - 2025 NoWa.cc

Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2026, vBulletin Solutions, Inc. Перевод: zCarot
Время генерации страницы 0.06747 секунды с 11 запросами