Форум: "Сети";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];
ВнизTServerSocket Найти похожие ветки
← →
SeF (2003-01-08 23:51) [0]Здраствуйте многоуважаемые!!! Спрошедшими и наступающисми Вас праздниками!!!!
Пожалуйста подскажите.
Есть проседура:
procedure TForm1.ServerSocket1ClientConnect(Sender: TObject;
//это место под вопросом
Socket: TCustomWinSocket);
var
ud:TUserData;
begin
ud:=TUserData.Create;
ud.Socket:=socket;
ud.stream:=tmemorystream.Create;
ud.Name:="connecting";
ud.ConnectedAt:=now;
socket.Data:=ud;
end;
есть вторая:
procedure TForm1.ServerSocket1ClientRead(Sender: TObject;
//здесь вылетает с AV
Socket: TCustomWinSocket);
var
data:Tmydata;
ud:tuserdata;
buf:pointer;
i:integer;
begin
i:=socket.ReceiveLength;
getmem(buf,i+1);
socket.ReceiveBuf(buf, i);
ud:=tuserdata(socket.Data);
ud.stream.Seek(0,soFromEnd);
ud.stream.Write(buf, i);
.....
← →
igorkuz (2003-01-09 17:13) [1]Socket.Data это pointer вот и создавай PUserData = ^TUserData и т.д. Тогда все будет ОК;
← →
Verg (2003-01-09 17:49) [2]
> ud.stream.Seek(0,soFromEnd); //здесь вылетает с AV
> ud.stream.Write(buf, i);
Вылетает, скорее всего, строчкой ниже. Т.к. там надо
ud.stream.Write(buf ^, i);
← →
SeF (2003-01-09 17:51) [3]
getmem(buf,i+1);
//
socket.ReceiveBuf(buf, i);
ud:=tuserdata(socket.Data);Ud
все равно nil
ud.stream.Seek(0,soFromEnd);
ud.stream.Write(buf, i);
← →
Verg (2003-01-09 17:52) [4]Да и здесь тоже
socket.ReceiveBuf(buf ^, i);
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2003.02.27;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.008 c