![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
myclient : array [1 .. 65535] of ;TclientSocket;
lord © (2003-08-01 18:49:00)
прога во время выполнения вудает ошибку при создании 3000 объектов ClientSocket:
не возможно выполнить операцию на сокете буфер мал или очередь переполнена.
подскажите в чом проблема ??????
прога создает масив из ClientSocket
var
myclient:array [1 .. 65535] of TclientSocket;
=========================================
begin
myclient[n]:=tclientsocket.Create(nil);
myclient[n].Port:=n;
myclient[n].Host:=ipadres;
myclient[n].OnConnect:=myclientconnect;
myclient[n].OnError:=myclienterror;
myclient[n].Tag:=n;
myclient[n].Active:=true;
statusbar1.Panels[1].Text:="Creating Client : "+inttostr(n);
application.ProcessMessages;
end;
==============================================
в обработчиках myclientconnect myclienterror
поисходит вывод в MEMO инфы и уничтожение созданных
объектов :
myclient[ tclientsocket(sender).Tag].Active:=false;
MyClient[tclientsocket(sender).Tag].free;
Digitman (2003-08-05 14:43:00) [1]
хрень какая
lord (2003-08-05 00:48:00) [2]
ТО ROUSE,DIGITMAN
да ето можно назвать нюкером если видеш только ету часть кода но прога ещо создает и серверы (ошибка таже)
я просто подцепил одну заразу и теперь хочу разобратся как она работает и на каком порту, а вней используется клиент вот и требо создать кучу серверов чтоб порт выявить (не спрашивайте почему я не использую готовые проги )
wal (2003-08-04 11:07:00) [3]
> да но веть я уничтожаю ети обекты веть одновременно открыто
> не более 500 сокетов или система просто не успевает их уничтожать?
После закрытия сокета он переходит в состояние TIME_WAIT, которое длится, если я не ошибаюсь 2*TTL, а TTL в виндах устанавливается в 128 сек. А вообще открой командную строку, набери "netstat -a 1" и увидишь, сколко реально сокетов живет в системе и как они уничтожаются.
С уважением.
Fredericco (2003-08-04 10:34:00) [4]Может это поможет
For Win98:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP]
"MaxConnections"="10000"
For Win95:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WinSock\Parameters\MSTCP]
@="10000"
There was a note that value must be 10000 or higher; the value of
5000 causes the error to appear more recently.
См. также
http://support.microsoft.com/support/kb/articles/Q196/2/71.ASP
( 15.06.2001)Может это поможет
For Win98:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\MSTCP]
"MaxConnections"="10000"
For Win95:
[HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\WinSock\Parameters\MSTCP]
@="10000"
There was a note that value must be 10000 or higher; the value of
5000 causes the error to appear more recently.
См. также
http://support.microsoft.com/support/kb/articles/Q196/2/71.ASP
(15.06.2001)
Polevi (2003-08-04 10:27:00) [5]
для супер мощного сканера портов видимо
Digitman (2003-08-04 09:10:00) [6]
> прога во время выполнения вудает ошибку при создании 3000
> объектов ClientSocket
зачем может понадобиться такое кол-во одновременно созданных гнезд ?
Новенький (2003-08-02 18:20:00) [7]
Я столкнулся с такой же проблеммой, я решил ее став открывать сокеты не посекундно а по-минутно!!!
Rouse_ (2003-08-02 08:07:00) [8]
Прочтите МСДН. Кол-во открытых гнезд обычно ограничено, но конечно, не пятьюстами а намного больше.
Второе, судя по технологии пишется обычный нюкер (извините, если я, к счастью, не прав). Ну а если он, то ICMP....
Желаю успехов.
lord (2003-08-01 20:38:00) [9]
ТО nikus
да но веть я уничтожаю ети обекты веть одновременно открыто не более 500 сокетов или система просто не успевает их уничтожать?
nikus (2003-08-01 19:51:00) [10]
Да, а в Win98 ты получишь ту же ошибку уже на сотом клиенте. И догадываешься, почему?
В общем, код ошибки ты привёл сам. Обойти это ограничение не представляется возможным...
ЗЫ не фиг насиловать систему!