Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.12;
Скачать: CL | DM;

Вниз

Передача данных в локальной сети   Найти похожие ветки 

 
Темный2   (2007-01-04 15:23) [0]

Как можно передать/получить данные по локальной сети (String, Integer, Byte - без разницы)?


 
Ученик чародея ©   (2007-01-04 15:55) [1]

Открываешь TCP сокет и передаешь данные упакованные в командный протокол

Простейший вариант.
1 - номер команды (4 байта)
2 - длинна команды
3 - данные

Далее на основе CASE номера команды разбираешь данные в опеределенном формате.

из проекта:


Procedure TMailMessage.WriteDateTimeToStream(var MStr:TMemoryStream;DT:TDateTime);
begin
MStr.Write(DT,sizeof(DT));
end;

Procedure TMailMessage.WriteSizeAndStringToStream(var MStr:TMemoryStream;Str:string);
var len:integer;
begin
len:=length(Str);
MStr.Write(len,sizeof(len));
MStr.WriteBuffer(str[1],len);
end;

Procedure TMailMessage.WriteIntToStream(var MStr:TMemoryStream;i:integer);
begin
MStr.Write(i,sizeof(i));
end;

function TMailMessage.ReadIntFromStream(var MStr:TMemoryStream):integer;
begin
MStr.Read(Result,sizeof(Result));
end;

function TMailMessage.ReadDateTimeFromStream(var MStr:TMemoryStream):TDateTime;
begin
MStr.Read(Result,sizeof(Result));
end;

function TMailMessage.ReadSizedStringFromStream(var MStr:TMemoryStream):string;
var len:integer;
var lstr:string;
begin
MStr.Read(len,sizeof(len));
SetLength(lstr,len);
MStr.ReadBuffer(lstr[1],len);
Result:=lstr;
end;



Страницы: 1 вся ветка

Текущий архив: 2007.08.12;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.017 c
3-1177508561
DelphiLexx
2007-04-25 17:42
2007.08.12
DBGrid и опция dgEditing


1-1180596113
Victor_Ked
2007-05-31 11:21
2007.08.12
Завершена ли передача файла по сети


15-1184317388
Desdechado
2007-07-13 13:03
2007.08.12
Значки ушли в историю?


15-1184573704
Vlad Oshin
2007-07-16 12:15
2007.08.12
что за кодировка? какаято стандартная или вычурная?


2-1184682898
Knob
2007-07-17 18:34
2007.08.12
Отключение процесса windows