Модераторы: gambit
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Bind Port 
:(
    Опции темы
ExMike
  Дата 5.3.2008, 17:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 8
Регистрация: 22.9.2007

Репутация: нет
Всего: нет



Можно ли как-то забиндить порт и потом коннектится к этому порту телнетом и работать как со своей коммандной строкой?
Если такое возможно,скажите в какую сторону копать или же, если есть сорцы дайте,пожалуйста.
PM MAIL   Вверх
Freak_FB
Дата 11.3.2008, 17:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Ктулхувед
**


Профиль
Группа: Участник
Сообщений: 296
Регистрация: 13.10.2006

Репутация: нет
Всего: 4



Можно, бинди. smile Просто нужно открыть сокет на прослушивание на определённом порту. И принимать входящие подключения.

Код

using System;
using System.Collections.Generic;
using System.Text;
using System.Net.Sockets;
using System.Net;

namespace EchoServer
{
    class ChatClient : TcpClient
    {
        private TcpClient _client;
        private string _clientIP;

        private byte[] data;

        public ChatClient(TcpClient client)
        {
            _client = client;
            _clientIP = client.Client.RemoteEndPoint.ToString();

            data = new byte[_client.ReceiveBufferSize];

            _client.GetStream().BeginRead(data, 0,
                Convert.ToInt32(_client.ReceiveBufferSize),
                ReceiveMessage, null);
        }

        public void ReceiveMessage(IAsyncResult ar)
        {
            int bytesRead;

            try
            {
                lock(_client.GetStream())
                {
                    bytesRead = _client.GetStream().EndRead(ar);
                }

                if (bytesRead == 0)
                {
                    Console.WriteLine("Client left");
                    return;
                }

                string messageReceived;
                messageReceived = Encoding.ASCII.GetString(data, 0, bytesRead);
                Console.Write(messageReceived);

                lock (_client.GetStream())
                {
                    _client.GetStream().BeginRead(data, 0,
                        Convert.ToInt32(_client.ReceiveBufferSize),
                        ReceiveMessage, null);
                }

            }
            catch(Exception)
            {
            }
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            IPAddress localAddr = IPAddress.Parse("10.0.0.216");
            TcpListener listener = new TcpListener(localAddr, 123);

            listener.Start();

            ChatClient client = new ChatClient(listener.AcceptTcpClient());

            Console.ReadLine();
        }
    }
}



--------------------
user posted image
user posted image
Тонет Ктулху, все медведы горят в огне.
Я Креведко, очень страшно сегодня мне.

PM MAIL ICQ Skype GTalk Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Прежде чем создать тему, посмотрите сюда:
cully
mr.DUDA
Exception

Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, cully, mr.DUDA, Exception.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Распределённые приложения и сеть | Следующая тема »


 




[ Время генерации скрипта: 0.0390 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.