Форум программистов, компьютерный форум, киберфорум
C# .NET
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449

Как заставить чат работать через Интернет, а не только в локальной сети

04.02.2012, 22:57. Показов 2383. Ответов 11
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот есть чатик но он работает только по Локальной сети вот код:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
        static void Main() 
        {
            Application.Run(new Form1());
        }
 
        private void button1_Click(object sender, System.EventArgs e)
        {
            try
            {
                TcpClient myclient = new TcpClient(label3.Text, 7007);
                NetworkStream myns = myclient.GetStream ();
                MemoryStream ms = new MemoryStream();
                richTextBox1.SaveFile(ms, RichTextBoxStreamType.RichText);
                myns.Write(ms.ToArray(), 0, ms.ToArray().Length);
                myns.Close ();
                myclient.Close ();
 
            }
            catch (Exception ex)
            {
                MessageBox.Show (ex.Message );
            }
        }
Сервер:

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
        static void Main() 
        {
            Application.Run(new Form1());
        }
 
        private GroupBox groupBox1;
        Thread myth;
        private void Form1_Load(object sender, System.EventArgs e)
        {
            Control.CheckForIllegalCrossThreadCalls = false;
            
            myth= new Thread  (new System.Threading .ThreadStart(our_Server)); // Start Thread Session
            myth.Start ();
        }
 
        void our_Server ()
        {
            mytcpl = new TcpListener (7007);// Open The Port
            mytcpl.Start ();// Start Listening on That Port
            mysocket = mytcpl.AcceptSocket ();// Accept Any Request From Client and Start a Session
            myns = new NetworkStream (mysocket);// Receives The Binary Data From Port
            byte[] buffer = new byte[1024];
            myns.Read(buffer,0,1024);
            MemoryStream ms = new MemoryStream(buffer);
            //richTextBox1.Invoke( new mydelegate(geting), myns);
            richTextBox1.LoadFile(ms, RichTextBoxStreamType.RichText);
 
            // you can add order and Response Here
            
            mytcpl.Stop();// Close TCP Session
            
            if (mysocket.Connected ==true)// Looping While Connected to Receive Another Message 
            {
                while (true)
                {
                    our_Server ();// Back to First Method
                }
            }
        }
 
        TcpListener mytcpl;                      // Objects  Declaration 
        Socket mysocket;
        NetworkStream myns;
        private RichTextBox richTextBox1;
        StreamReader mysr;
 
        private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
        {
            try
            {
                mytcpl.Stop ();
                myth.Abort();
            }
            catch (Exception ex) {MessageBox .Show (ex.Message );}
        }
Хотелось сделать чтобы он работал и по интернету.

Как это осуществить ?

Спасибо)))
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.02.2012, 22:57
Ответы с готовыми решениями:

Как заставить чат работать через интернет или в локальной сети?
What's up, программач. Я писал чат по видеоурокам одного парня с Австралии, на мой взгляд, все очень красиво и лаконично.Он работает в...

Как заставить чат работать через Интернет
Здраствуйте программисты и просто пользователи. Недавно начал новый проект в visual basik но возникла проблемма чат работает только по...

Как раздать интернет по локальной сети только на один компьютер
Здравствуйте! Ребят, проконсультируйте, кто может по след. вопросу: Имеется сервер, который имеет доступ в интернет(через yota) и на...

11
42 / 36 / 2
Регистрация: 18.12.2011
Сообщений: 113
05.02.2012, 01:02
Обзавестись белым айпи
Нужно пробросить порт Смотрите в сторону какого-нибудь upnp и так далее.
0
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
05.02.2012, 01:43  [ТС]
А проще не зя?
С IP пробывал, выдает ошибку.
0
 Аватар для Mr.kto
104 / 105 / 18
Регистрация: 18.08.2012
Сообщений: 308
05.02.2012, 02:30
sasha0192, посмотри здесь
0
 Аватар для sasha0192
51 / 51 / 7
Регистрация: 23.01.2012
Сообщений: 449
05.02.2012, 02:42  [ТС]
Mr.kto, окээ. Эм... там вить тоже вроде по локальной сети!? Хотелось бы пример чтоб по интернету можно было общаться.
0
4 / 4 / 2
Регистрация: 26.10.2015
Сообщений: 21
06.01.2017, 15:30
Я знаю, на дворе 2017, слегка поздновато . TcpListener использует локальный айпи. Я думаю она вообще не может принять сигнал из за моря.
0
Эксперт .NET
 Аватар для kolorotur
17823 / 12973 / 3382
Регистрация: 17.09.2011
Сообщений: 21,261
11.01.2017, 11:03
Цитата Сообщение от Lucinius Посмотреть сообщение
TcpListener использует локальный айпи.
TcpListener может использовать любой айпи, а может вообще никакой не использовать и принимать соединения от любых айпи на определенном порту.
0
4 / 4 / 2
Регистрация: 26.10.2015
Сообщений: 21
11.01.2017, 11:16
Ну да. Что-то типо такого
C#
1
Listener = new TcpListener(IPAddress.Any, LocalPort);
На тот момент я все это хуже понимал.
Я использовал сервис DNS и все заработало по интернету прилежно. Только мороки с динамическим сервером много...
Кстати, обмен сообщениями клиент-серверу и сервер-клиенту аналогично работают, так ведь ?
0
19 / 19 / 9
Регистрация: 14.09.2016
Сообщений: 94
Записей в блоге: 1
12.01.2017, 14:47
sasha0192, dyndns.org тебе очень поможет
0
4 / 4 / 2
Регистрация: 26.10.2015
Сообщений: 21
12.01.2017, 16:31
dkfancsak, поздно уже, он явно все забросил....
0
19 / 19 / 9
Регистрация: 14.09.2016
Сообщений: 94
Записей в блоге: 1
12.01.2017, 16:51
Lucinius, чет я не посмотрел на дату создания
в друг кто то будет искать информацию и она поможет
0
4 / 4 / 2
Регистрация: 26.10.2015
Сообщений: 21
12.01.2017, 19:16
dkfancsak, я использовал noip.com. Кстати почему по глобальному ip не работает знает кто ?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
12.01.2017, 19:16
Помогаю со студенческими работами здесь

Скорость локальной сети как через интернет
Драсце! Проблема в следующем: Допустим скорость инета 10Мбит/с. Хочу передать по локалке файл и он передается с такой же скоростью,...

Как подключиться к БД не по локальной сети, а через интернет
У меня такой еще вопрос. Если подключатся к БД MySQL, которая находится не в локальной сети, а на другом ПК, который подключен к интернет,...

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

Как через интернет связаться с базой (не в локальной сети)?
как через интернет связаться с базой (не в локальной сети) например из японии в россию.... например формы в японии а базы в...

Как подключиться удаленно к mysql в локальной сети через интернет
Здравствуйте. Ситуация следующая. Есть сервер Ubuntu Server 16.04. Подключен к роутеру со статическим ip. По ssh я подключаюсь следующим...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь постоянного тока с R, L, C, k(ключ), U, E, J. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа, решает её и находит переходные токи и напряжения на элементах схемы. . . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru