Технологии

Решено

Ошибка отправки сообщений в локальной сети - вопрос №235639

Здравствуйте. Ставлю программки на свой комп для общения в локальной сети, при отправке сообщения, нажимаю enter, при этом сообщение стирается и у меня в окошке общения моего сообщения нет, хотя другой человек его видит. А программа Lancet Net мне пишет Ошибка сети! Не удается создать сокет для чата! #10048 Ошибка сети! Ошибка отсылки данных. #12417840 26.03.2012, 10:47:09 — Начата новаяконференция… Ошибка сети! Ошибка отсылки данных. #12902184 Ошибка сети! Ошибка отсылки данных. #0 Подскажите пожалуйста, что это значит?

Дополнение автора от март 26, 2012 г., 10:39:05

Сеть работает!, Аська работает без проблем, сообщения уходят и приходят. 

А проблема с сообщениями в программах Unichat, Lancet Net. У другого человека работает программа, по ентеру всё отсылается.

Вот ошибка 10048 : Ошибка сокета 10048 — Адрес уже используется. Как он может использоваться?  и какой адрес? В настройках стоит Броадкаст сети 192.168.255.255. Порт UDP 9567. У другого такое же настройки. Может дело в какой то службе? 

Оксана март 26, 2012 г.

  • Всего ответов: 4

  • Сергей Ковалев - аватарка

    Сергей Ковалев

    159-й в Технологиях

    Добрый день.

    Проверьте подключения и сети. И посмотрите настройки сети. Или возникают ошибки у собеседника.

    март 26, 2012 г.
  • Сергей Ковалев - аватарка

    Сергей Ковалев

    159-й в Технологиях

    Кто — то еще зарегистрирован в ваш счет. А имено с адресом сети 192.168.255.255

    Для таких программ, есть ограничение использовать только один адрес сокета (проткол/адрес IP/порт). В частности ошибки могут возникать и проявлять себя, когда приложение уже привязано к сокету функцией bind(). Комбинация адрес IP и порта уже используется существующим сокетом. В частности если сокет не был корректно закрыт, при этом идет процесс закрытия сокета. И он не будет отвечать на запрос пользователя.

    Чтобы приложения работала, нужно использовать setsockopt(SO_REUSEADDR). Клиентские приложения обычно не используют bind() — функция connect() автоматически выбирает неиспользуемый порт.

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

    март 26, 2012 г.
    Ответ понравился автору
    Лучший ответ по мнению автора
  • Сергей Ковалев - аватарка

    Сергей Ковалев

    159-й в Технологиях

    Если не получается смените порт на другой. У одного из пользователя.

    март 26, 2012 г.
  • Armen - аватарка

    Armen

    8-й в Технологиях

    Запустите редактор реестра start-->>run --> regedit -->>enter

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters

    Динамически увеличить диапазон портов. По умолчанию их 5000, можно установить до 65536.

    На Редактирование меню, нажмите кнопку Добавить значение, а затем добавьте следующий параметр реестра:

    Значение имени: MaxUserPort

    Тип данных: REG_DWORD
    Значение: 65534 (например)
    Диапазон действителен: 5000-65534 (дес.)
    По умолчанию: 0x1388 (5000 в десятичной системе)

    Закройте редактор реестра.

    ИЛИ

    Можно уменьшить время нахождения соединения в состоянии фиксации с 4 минут до 30 секунд

    HKEY_LOCAL_MACHINE\System\CurrectControlSet\services\Tcpip\Parameters

    TcpTimedWaitDelay

    Раздел: Tcpip\Parameters
    Тип значения: REG_DWORD-время в секундах
    Диапазон действителен: 30-300 (в десятичной системе)
    По умолчанию: 0xF0 в системе (240 десятичное)

    Закройте редактор реестра.

    март 26, 2012 г.

Похожие вопросы