void __fastcall TGamePoints::Button1Click(TObject *Sender)
{
ServerSocket1->Port=1100;
ServerSocket1->Active=true;
}
//---------------------------------------------------------------------------
void __fastcall TGamePoints::Button2Click(TObject *Sender)
{
ClientSocket1->Port=1100;
ClientSocket1->Host=Edit1->Text;
ClientSocket1->Address=Edit1->Text;
ClientSocket1->Active=true;
}
Socket'ы
Делаю соединение через сокеты и передачу информации по таймеру каждые 10 мс.
Код:
В таймере такаой код :
Код:
if(ServerSocket1->Active==true)
for(int i=0;i<100;i++)
ServerSocket1->Socket->Connections[0]->SendBuf(&CreaturePos[1],sizeof(int));
else
for(int i=0;i<100;i++)
ClientSocket1->Socket->SendBuf(&CreaturePos[1],sizeof(int));
for(int i=0;i<100;i++)
ServerSocket1->Socket->Connections[0]->SendBuf(&CreaturePos[1],sizeof(int));
else
for(int i=0;i<100;i++)
ClientSocket1->Socket->SendBuf(&CreaturePos[1],sizeof(int));
При создании сервера пишет ошибку "List of index out of bounds(0)". Я так понимаю что он даёт ошибку потому что клиент не подрубился а он уже пытается послать информацию ?? Какое нужно написать условие что бы он видел когда подключен клиент а когда нет ? И прав ли я вообще ?
CreaturePos[1] - TPoint Нужно ли делать какието изменения в размере буфера ?
Простите что такое спрашиваю просто вижу сокеты только второй час наверное
Код:
if (ServerSocket1->Socket->Connections > 0) // есть подключение
Выдаёт такую ошибку.
Код:
if (ServerSocket1->Socket->Connections->Count > 0) // есть подключение
Код:
if (ServerSocket1->Socket->Connections->Connected==true)
пишет ошибку [C++ Error] Siege.cpp(127): E2193 Too few parameters in call to '_fastcall TServerWinSocket::GetConnections(int)'.....
Если написать так :
Код:
if (ServerSocket1->Socket->Connections[0]->Connected==true)
Снова пишет "List of index out of bounds(0)"
Может тут в чём то в другом ошибка ?
Код:
if(ServerSocket1->Socket->ActiveConnections>0)