![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
В чем ошибка конекта в WinSock [D6, Win95/98, WinME]
KyRo © (2004-03-12 21:41:00)Создаю сокет и начинаю конектится возникает ошибка
{$EXTERNALSYM WSAECONNREFUSED}
WSAECONNREFUSED = (WSABASEERR+61); (10061)
Код создания
with A[NomerAddr] do
begin
sin_family:=AF_INET;
sin_port:=htons(i);
sin_addr.S_addr:=inet_addr(pchar('127.0.0.1'));{Нужно автоопределение}
end;
{ Пытаемся подконнектиться, если удачно - записываем, что порт открыт,
в другом случае - сообщение о том, что порт закрыт (или недоступен) }
Resul:=connect(Soket[NomerAddr],A[NomerAddr],sizeof(A[NomerAddr]));
Polevi (2004-03-17 09:38:00) [1]нет
KyRo (2004-03-17 03:15:00) [2]А может это быть из за того что у меня 98 винда и нету сетевой платки ??
Verg (2004-03-14 08:54:00) [3]
> Так вот у меня все время выдает одну и ту же ошибку и
> как я понимаю это вроде не из за того что на порте не кто
> меня не ждет.
Но ошибка-то WSAECONNREFUSED возникает именно из-за того, что "на порте не кто меня не ждет". Либо порт/адрес задаешь неверно, либо порт никто не обслуживает, либо неверно с сокетами работаешь.
Надо действовать по принципу исключений. Исключи одну хоть причину. Запусти какую-нибудь службу,..... да хоть Telnet Daemon.
Позапускай процедуру соединеия на порт этой службы (23-порт, к примеру), там и будешь дальше разбираться.
KyRo (2004-03-14 02:57:00) [4]Мне надо просканировать порты.
Для этого создаю сокеты и подключаюсь.
В зависимости подключилось или нет определяю открыт порт или
нет.
Так вот у меня все время выдает одну и ту же ошибку и
как я понимаю это вроде не из за того что на порте не кто меня не ждет.
panov (2004-03-14 01:25:00) [5]Ты подойди к проблеме с другой стороны.
Сформулирой, что тебе надо, тогда и будет помощь тебе.
KyRo (2004-03-14 00:50:00) [6]ну это потом есле комп будет подключон к сети
и имеет свой айпи отличный от 127.
Дело не в том . У меня не могут ведь все порты быть закрыты
на компьютере, какая то служба должна быть и при этом
все порты выдают одну и туже ошибку.
Verg (2004-03-13 08:28:00) [7]
> sin_addr.S_addr:=inet_addr(pchar('127.0.0.1')); {Нужно автоопределение}
Ты пытаешься сконектиться на i-й порт собственного компа (127.0.0.1 или localhost). Но этот порт на твоем копе никто не обслуживает. Вот и ошибка возникает "Соединение отвергнуто".
Все логично.
Ну а при чем тут "автоопределение"? И вообще - что это такое?