using System; using System.Text; using System.IO; using System.Net; using System.Net.Sockets; public class GetSocket { private static Socket ConnectSocket(string server, int port) { Socket s = null; IPHostEntry hostEntry = null; // Get host related information. hostEntry = Dns.GetHostEntry(server); // Loop through the AddressList to obtain the supported AddressFamily. This is to avoid // an exception that occurs when the host IP Address is not compatible with the address family // (typical in the IPv6 case). foreach(IPAddress address in hostEntry.AddressList) { IPEndPoint ipe = new IPEndPoint(address, port); Socket tempSocket = new Socket(ipe.AddressFamily, SocketType.Stream, ProtocolType.Tcp); tempSocket.Connect(ipe); if(tempSocket.Connected) { s = tempSocket; break; } else { continue; } } return s; } // This method requests the home page content for the specified server. private static string SocketSendReceive(string server, int port) { string request = "GET / HTTP/1.1\r\nHost: " + server + "\r\nConnection: Close\r\n\r\n"; Byte[] bytesSent = Encoding.ASCII.GetBytes(request); Byte[] bytesReceived = new Byte[256]; // Create a socket connection with the specified server and port. Socket s = ConnectSocket(server, port); if (s == null) return ("Connection failed"); // Send request to the server. s.Send(bytesSent, bytesSent.Length, 0); // Receive the server home page content. int bytes = 0; string page = "Default HTML page on " + server + ":\r\n"; // The following will block until te page is transmitted. do { bytes = s.Receive(bytesReceived, bytesReceived.Length, 0); page = page + Encoding.ASCII.GetString(bytesReceived, 0, bytes); } while (bytes > 0); return page; } public static void Main(string[] args) { string host; int port = 80; if (args.Length == 0) // If no server name is passed as argument to this program, // use the current host name as the default. host = Dns.GetHostName(); else host = args[0]; string result = SocketSendReceive(host, port); Console.WriteLine(result); } }
Рассылка закрыта
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
← Октябрь 2011 → | ||||||
1
|
2
|
|||||
---|---|---|---|---|---|---|
3
|
4
|
5
|
6
|
8
|
9
|
|
10
|
11
|
12
|
13
|
15
|
16
|
|
17
|
18
|
19
|
20
|
22
|
23
|
|
24
|
25
|
26
|
27
|
29
|
30
|
|
31
|
Статистика
-1 за неделю
Программирование (VB,C#,ASP,.NET): новости, советы, примеры
Выпуск # 661Приветствую вас, любители высоких технологий! Вот и очередной выпуск рассылки. За неделю на сайте появилось много новых и интересных материалов, некоторые из которых вы сможете увидеть в этом выпуске. Содержание выпускаЧитайте в этом выпуске: Если у вас есть вопросы по программированию или работе с компьютером, не стесняйтесь, спрашивайте.Форумы Kbyte.RuНа форумах Kbyte.Ru постоянно появляются новые интересные темы и обсуждения. В этом выпуске представлены лишь новые темы, с момента прошлой рассылки. Кстати, любой желающий может на форумах Kbyte.Ru совершенно свободно получить помощь грамотных специалистов в области программирования, да и в целом информационных технологий. Задать свой вопрос прямо сейчас Из синхронного сокета в асинхронный @nbit 28.10.2011 05:24 В MSDN есть замечательный пример получения кода html страницы Нам нужен программист JavaScript (удалённо) @Carolina 27.10.2011 17:38 Нам нужен программист JavaScript (удалённо) Требования: — отличные знания JavaScript (Ajax, работа с DOM) — твердые знания HTML и CSS Необходимые навыки: — умение разбираться в чужом коде (опыт работы в команде приветствуется) — умение четко документировать выполненный код — обязательность и исполнительность — желание делиться опытом и перенимать опыт коллег — желание учиться. Условия: — удаленная работа на постоянной основе. 9 часовой рабочий день — $2000 первые 2-3 месяца, далее $2500. Зарплата выплачивается без задержек еженедельно по $500 в первые 2-3 месяца? далее - по $625 в неделю. Оставляйте свои контактные данные и мы с вами свяжемся! Все вопросы сюда: Каролина ICQ - 579900270 e-mail: goodjobhere@mail.ru Прогармный код @valeracorby 25.10.2011 19:34 Люди подскажите у меня в одной форме находится код, и когда я создаю на нем кнопку или что-нибудь другое то этот код копируется на все элементы что там находятся, а удалишь этот код и нигде не будет. Как мне сделать что бы у каждого элемента был свой программный код. Ответ #1 @Aleksey Nemiro 25.10.2011 21:15 В панели свойств раздел События нужно либо удалить обработчик, либо указать другой. Если используется C#, то нужно осторожно работать с конструктором форм, ибо он глючный. Рекомендую почаще делать бэкапы и не провоцировать Visual Studio. В частности, стараться не копировать элементы управления, очень осторожно работать с ресурсами, особенно с удалением и изменением. Следить, чтобы конструктор форм "не выпал в другое измерение", а то все сделанные изменения могут быть безвозвратно утеряны (если есть подозрения, нужно просто закрыть дизайнер формы и открыть заново, проявляется это, как правило, после перекомпиляции и запуска программы (изменений не видно и ошибок в коде нет)). ProfileProvider @Bille Gates 24.10.2011 16:49 Делаю авторизацию, с MembershipProvider все ясно, работает, а Profile не получается реализовать... Стоит ли им вообще пользоваться или забить и написать свой класс под свои задачи? Будет разница? Как лучше, подскажите :) Ответ #1 @Aleksey Nemiro 24.10.2011 18:15 Во вложении небольшой пример (не мой) использования профилей ASP .NET. Но лучше написать что-нибудь свое, ибо в стандартном аспешном много лишнего и это может негативно сказаться на производительности, особенно если с ресурсами напряг. Исходные кодыРекурсивное копирование фалов из указанных папокC#: Файлы и папки @lelity 21.10.2011 23:33 Пример программы на C#, которая рекурсивно копирует файлы в указанные папки. При отсутствии нужных папок, программа их создает.using System; using System.IO; class CopyDir { // Метод копирования: задаем две директории откуда копировать и куда копировать public static void Copy(string sourceDirectory, string targetDirectory) { DirectoryInfo diSource = new DirectoryInfo(sourceDirectory); DirectoryInfo diTarget = new DirectoryInfo(targetDirectory); // Вызываем основной метод копирования CopyAll(diSource, diTarget); } public static void CopyAll(DirectoryInfo source, DirectoryInfo target) { // Если директория для копирования файлов не существует, то создаем ее if (Directory.Exists(target.FullName) == false) { Directory.CreateDirectory(target.FullName); } // Копируем все файлы в новую директорию foreach (FileInfo fi in source.GetFiles()) { // Выводим информацию о копировании в консоль Console.WriteLine(@"Copying {0}\{1}", target.FullName, fi.Name); fi.CopyTo(Path.Combine(target.ToString(), fi.Name), true); } // Копируем рекурсивно все поддиректории foreach (DirectoryInfo diSourceSubDir in source.GetDirectories()) { // Создаем новую поддиректорию в директории DirectoryInfo nextTargetSubDir = target.CreateSubdirectory(diSourceSubDir.Name); // Опять вызываем функцию копирования // Рекурсия CopyAll(diSourceSubDir, nextTargetSubDir); } } // Проверяем работу копирования на примере public static void Main() { string sourceDirectory = @"c:\sourceDirectory"; string targetDirectory = @"c:\targetDirectory"; Copy(sourceDirectory, targetDirectory); } } Вакансии в ITПрограммист SQL ServerРоссия, Москва | Работа в офисе | 110 000.00
RUB Ведущий инженер-программистРоссия, Москва | Работа в офисе | 60 000.00 RUB Разработчик NETРоссия, Москва | Работа в офисе | 30 000.00 RUB Программист игрРоссия, Москва | Работа в офисе | 65 000.00 RUB Программист DelphiРоссия, Москва | Работа в офисе | 45 000.00 RUB Разработчик отчетных формРоссия, Москва | Работа в офисе | 35 000.00 RUB Программист VBAРоссия, Москва | Работа в офисе | 70 000.00 RUB Программист DelphiРоссия, Москва | Работа в офисе | 60 000.00 RUB Системный аналитик / ПрограммистРоссия, Москва | Работа в офисе | 75 000.00 RUB ПрограммистРоссия, Москва
| Работа в офисе | 75 000.00 RUB Все вакансии в IT · Новости мира ITЯпонцы разработали сенсорный экран для пальцев в перчаткахЯпонская компания SMK Corporation представила сенсорный экран, реагирующий на прикосновения пальцев в перчатках. Экран относится к классу емкостных. Он способен работать при температурах от -30 до +85 градусов Цельсия. Разработка будет применяться в автомобильных навигационных системах. 27.10.2011 10:45 · Категория: Железо · Источник: Lenta.ru Nokia анонсировала линейку бюджетных аппаратов AshaКомпания Nokia на открытии конференции Nokia World анонсировала линейку бюджетных аппаратов Asha. В нее вошли четыре телефона: Asha 200, 201, 300 и 303. Все они оснащены сенсорными экранами, а модели Asha 200, 201, 303 располагают также QWERTY-клавиатурой. Цены на телефоны пока обнародованы не были. 27.10.2011 10:45 · Категория: Железо · Источник: Lenta.ru Ученые предлагают питать микросхемы тепломНемецкие ученые говорят, что им удалось справиться с одним из злейших врагов электрической техники - теплом. Исследователи говорят, что они совершили качественно новый прорыв в сфере управления тепловыделением, который до сих пор являлся значительной проблемой для разработчиков электронных устройств. Группа исследователей предлагает применять выделяемое работающей микросхемой тепло для получения электричества.
Специалисты говорят, то пока их идея во многом носит теоретический характер, но создан был практически "вечный двигатель", так как греющаяся микросхема работает за счет выделяемого ею же тепла. Конечно, это не вечный двигатель в полном смысле слова, но коэффициент полезного действия от работы такой конструкции довольно высок. 26.10.2011 15:20 · Категория: Железо · Источник: CyberSecurity.ru Умер разработчик языка программирования LispВ США в возрасте 84 лет скончался Джон Маккарти, создатель одного из старейших высокоуровневых языков программирования Lisp и автор термина "искусственный интеллект". Маккарти также известен как организатор "Дартмутской конференции", положившей начало исследованиям в области ИИ. 26.10.2011 15:18 · Категория: Программирование · Источник: Lenta.ru Project Denver - новая инициатива Nvidia на рынке центральных процессоровНа протяжении последних нескольких лет крупнейший мировой производитель графических чипов Nvidia не раз давал рынку слухи о том, что компания, якобы, готовится выйти на мировой рынок процессоров x86 для использования в серверах и настольных компьютерах. Не так давно компания сделала ожидаемое рынком объявление, правда, оно стало своего рода полумерой, которая одновременно удивила и не удивила рынок. В компании заявили, что пока по-прежнему не отказываются от своих x86-планов и в будущем, вероятно, выпустят соответствующий процессор, но пока его нет и говорить тут более не о чем.
А вот то, что есть, так это проект Denver, представляющий собой разновидность ARM-процессора разработки Nvidia, ориентированного на использование в настольных компьютерах и маломощных серверах. Эта разработка стала первым решением, на котором, судя по всему, сможет работать ARM-версия Windows 8. 26.10.2011 15:18 · Категория: Железо · Источник: CyberSecurity.ru
Подпишитесь на тематические RSS-ленты Kbyte.Ru, чтобы быть в курсе последних новостей: Основная лента · Форумы (темы и сообщения) · Visual Basic 5.0/6.0 · Visual Basic .NET · C# (Си шарп) · Delphi · JavaScript · ActionScript · ASP .NET · ASP .NET MVC Ищите Kbyte.Ru в социальных сетях FaceBook, ВКонтакте, Twitter. Если вы занимаетесь программированием, то наверняка вам пригодятся хитрые инструменты. Международный портал для программистов и разработчиков Kbyte.Ru основан в 2006 году. Целью портала является объединение программистов и специалистов IT-бизнеса, студентов и преподавателей для обмена опытом и знаниями, оказания помощи во всех делах и начинаниях в области IT. |
В избранное | ||