PDA

Показать полную графическую версию : windows socket error 10048 on api bind


The_Immortal
20-03-2013, 11:47
Пытаюсь запустить специфичную программу Parma (процесс TransData.exe) на рабочих компах Win XP Pro x32. При запуске (на любой машине) получаю ошибочку:

Windows socket error: Обычно разрешается одно использование адреса сокета (протокол/сетевой адрес/порт) (10048), on API "bind"

1. Глянул netstat -aon. Порт 10048 там не обнаружил.
2. Проверил значение MaxUserPort в HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters. Значение максимальное - 65534.
3. Касперского отключал.

Помогите, пожалуйста, с проблемой.

P.S. На домашнем ноуте Win 7 x32 Starter запускается без проблем.
P.P.S. Лог от ProcessMonitor (напоминаю, процесс TransData.exe) на всякий случай прилагаю.

Petya V4sechkin
20-03-2013, 11:59
The_Immortal, наблюдается ли проблема в Безопасном режиме с загрузкой сетевых драйверов?

The_Immortal
20-03-2013, 12:17
Petya V4sechkin, хм... В данном режиме проблемы не наблюдается - программа запускается нормально.

И что это может быть тогда?

Petya V4sechkin
20-03-2013, 12:26
The_Immortal, таки стороннее программное обеспечение.
С помощью Msconfig (http://support.microsoft.com/kb/310560/ru) отключайте сторонние (не Microsoft) программы и службы из автозагрузки.
Касперского отключал
Это не всегда помогает: при отключении (и даже при выгрузке) драйверы продолжают работать/конфликтовать.

The_Immortal
20-03-2013, 17:49
Petya V4sechkin, в общем проблема оказалась в безобидном VNC-сервере. Он работает как служба.

Не понимаю, чем мог помешать VNC-сервер? Он занимает конкретные порты 5800 и 5900. И все...

А причем тут вышеуказанный порт 10048 тогда?

Есть идеи?

Каждый раз тушить VCN как-то нехорошо...

Petya V4sechkin
20-03-2013, 19:03
А причем тут вышеуказанный порт 10048 тогда?
Это не порт, а код ошибки Winsock.

Он занимает конкретные порты 5800 и 5900
Вот с ними программа и пересекается.
Порты можно изменить в настройках.

The_Immortal
21-03-2013, 15:49
Petya V4sechkin,
Порты можно изменить в настройках. »
Изменил в на сервере VNC порт 5800 на 5801 - теперь проблемная программа работает.
Но что интересно, то запущенный процесс от этой программы (TransData.exe) не занимает ни один порт, о чем свидетельствует netstat -aon. Также юзал tcpview (http://technet.microsoft.com/ru-ru/sysinternals/bb897437.aspx) - там процесс TransData.exe не отображается.

Т.е. может быть такое, что при запуске программа смотрит наличия доступа на порт 5800 и если его нет, то не стартует. Иначе же запускается, но порт не занимает.

? :)

Petya V4sechkin
21-03-2013, 15:53
не занимает ни один порт, о чем свидетельствует netstat -aon. Также юзал tcpview
Может быть, занимает на мгновение.

The_Immortal
21-03-2013, 16:00
Petya V4sechkin, занимает на мгновение. »
А можно как-нибудь глянуть логи занимаемых портов за какой-либо период?




© OSzone.net 2001-2012