Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 23.11.2010
Сообщений: 13
1

Вопрос по созданию сокетов

24.11.2011, 12:33. Показов 735. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Добрый день! Для проверки работы программы, мне нужно слать в сеть broadcast пакеты с разных адресов. Для этого я в свойствах сетевого подключения добавил несколько IP адресов. Если отправлять так:


C#
1
2
3
4
5
6
7
8
            Socket sock = new Socket(AddressFamily.InterNetwork, SocketType.Dgram,
            ProtocolType.Udp);
            sock.SetSocketOption(SocketOptionLevel.Socket, SocketOptionName.Broadcast, 1);
            IPAddress serverAddr = IPAddress.Parse("255.255.255.255");
            IPEndPoint endPoint = new IPEndPoint(serverAddr, 11000);
            string text = "Hello";
            byte[] send_buffer = Encoding.ASCII.GetBytes(text);
            sock.SendTo(send_buffer, endPoint);

тогда отправляется столько пакетов сколько и адресов, а как мне сделать чтоб я мог выбрать IP?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
24.11.2011, 12:33
Ответы с готовыми решениями:

Вопрос по созданию html редактора
Делаю сейчас элемент простого html редактора. должно быть несколько клавиш (bold, italic и...

Вопрос по созданию игры жанра roguelike
Всем привет, меня зовут Дмитрий. Итак, на C# я пока новичок, и хочу у вас узнать ответы на...

вопрос по созданию саттелитов
Что лучше сделать для организации сетки сателитов? Регистрировать новые имена доменов,или...

Вопрос по созданию класса
По заданию нужно создать класс пушки. Делаю по образцам, но что-то не выходит. Пока что накидал вот...

1
102 / 102 / 13
Регистрация: 22.10.2011
Сообщений: 328
26.11.2011, 07:24 2
ты хочешь слать на определенный IP - шли! зачем шлешь всем?!...
C#
1
IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 11000);
Добавлено через 31 секунду
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Net;
using System.Net.Sockets;
using System.Threading;
using System.IO;
 
namespace DotaHorn
{
    class Program
    {
        static NetworkStream clientStream;
        static bool write = false;
        static void Main(string[] args)
        {
            Console.WriteLine("Starting up");
            TcpClient client = new TcpClient();
 
            IPEndPoint serverEndPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 5898);
 
            client.Connect(serverEndPoint);
            clientStream = client.GetStream();
            Thread readThread = new Thread(readFromServer);
            Thread writeThread = new Thread(writeGoToServer);
            readThread.Start();
            writeThread.Start();
            while (true) { Thread.Sleep(1000); }
        }
 
        private static void writeGoToServer()
        {
            ASCIIEncoding encoder = new ASCIIEncoding();
            byte[] buffer;
            while (true)
            {
                Console.WriteLine("Check if can write");
                
                    buffer = encoder.GetBytes("Go");
                    clientStream.Write(buffer, 0, buffer.Length);
                    clientStream.Flush();
                    Console.WriteLine("Wrote Go");
                    Thread.Sleep(4000);
                
 
            }
        }
 
        private static void readFromServer()
        {
            StreamReader sr = new StreamReader(clientStream);
            while (true)
            {
                Console.WriteLine("Check if data is available");
                if (clientStream.DataAvailable)
                {
                    Console.WriteLine("Data was available");
                    while (sr.Peek() != -1)
                    {
                        Console.WriteLine("Starts to read:");
                        Console.WriteLine(sr.Read());
                        Console.WriteLine("Done!");
                    }
                }
                Thread.Sleep(1000);
            }
        }
 
    }
}
0
26.11.2011, 07:24
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
26.11.2011, 07:24
Помогаю со студенческими работами здесь

Вопрос по созданию запросов
Народ, доброе время суток. Вопрос следующий: как наиболее грамотно подобрать поисковые запросы (НЧ,...

Вопрос по созданию класса
Подскажите пожалуйста, хотя бы в общих чертах. Мне необходи создать класс, в который входил бы...

Вопрос по созданию макроса.
Добрый день единомышленники!!! У мене маленький, но интересный вопросик. Я создаю макрос для MS...

Вопрос по созданию запроса.
У меня есть таблица. И в одном стобце написаны названия организаций. Некоторые названия организаций...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru