Форум: "Сети";
Текущий архив: 2006.07.23;
Скачать: [xml.tar.bz2];
ВнизIndy 10 передача и прием данных Найти похожие ветки
← →
www111 (2006-03-15 17:24) [0]В предыдущих версиях Indy были функции writebuffer и readbuffer. С помощью них легко было передать запись. Как это сделать в Indy 10. Помогите плиз.
← →
Eraser © (2006-03-15 17:30) [1]
> www111 (15.03.06 17:24)
.IOHandler.ReadBytes
.IOHandler.ReadStream
.IOHandler.Write
← →
www111 (2006-03-15 17:36) [2]пробовал) не выходит
отправка:
function TTCPClientClass.SendToServer: boolean;
var
aCI,rec: RClientInfo;
aBuffer: TBytes;
begin
Result := False;
aCI.ClientID := "CLIENT_DEFAULT";
aCI.ClientType := "Client";
aBuffer := RawToBytes(aCI,sizeof(aCI));
TCPClient.Socket.WriteDirect(aBuffer);
// TCPClient.IOHandler.Write(RawToBytes(aCI, SizeOf(aCI)));
Result := True;
end;
прием:
procedure TTCPServerClass._OnExecute(aThread: TIdContext);
var
aBuffer: TBytes;
aCI: RClientInfo;
begin
//
aThread.Connection.Socket.ReadBytes(aBuffer,SizeOf(aCI),false);
BytesToRaw(aBuffer,aCI,SizeOf(aBuffer));
MessageController.SendMessage(aCI.ClientID + ";" + aCI.ClientType,0);
end;
← →
Eraser © (2006-03-15 17:41) [3]
> www111 (15.03.06 17:36) [2]
> TCPClient.Socket.WriteDirect
убери WriteDirect... к хорошему может не привести.
> TCPClient.IOHandler.Write(RawToBytes(aCI, SizeOf(aCI)));
> aCI,rec: RClientInfo;
покажи описание структуры RClientInfo.
← →
www111 (2006-03-15 17:51) [4]RClientInfo = record
ClientID: string[20];
ClientType: string[20];
end;
← →
www111 (2006-03-15 18:14) [5]все нашел ошибку.... спасибо...
Страницы: 1 вся ветка
Форум: "Сети";
Текущий архив: 2006.07.23;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.013 c