Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

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 ты получишь ту же ошибку уже на сотом клиенте. И догадываешься, почему?

В общем, код ошибки ты привёл сам. Обойти это ограничение не представляется возможным...

ЗЫ не фиг насиловать систему!


Наверх

Титульная страница Поиск, карта сайта Написать письмо