![]() |
|
#1
|
||||
|
||||
![]() Код:
TSendStruct = packed record ID: byte; mesg: TChat; Comand: TDrawCommand end; собственно у меня есть такой пакет, вопрос как мне их несколько (неизвестно колличество) с клеить в один, в дальнейшем уже нужно отправить серверу cSocket.Socket.SendBuf("склееный пакет","его размер"); |
#2
|
|||
|
|||
![]() Код:
TSendPacket Size : DWORD; Count : DWORD; Data : Array[0..0] Of TSendStruct; // или Ponter И посылаешь такую структурку. |
#3
|
||||
|
||||
![]() хм, не совсем понял как же мне их склеивать и как использовать
Код:
Size : DWORD; Count : DWORD; ![]() |
#4
|
||||
|
||||
![]() А зачем их вообще склеивать?
Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#5
|
||||
|
||||
![]() действительно, зачем вообще склеивать пакеты, если протокол tcp может их разбить при передаче)
Пишу программы за еду. __________________ |
#6
|
||||
|
||||
![]() Мне нужно слать на сервер команды... Я хочу их собирать в кучу все, и слать.. иначе они слишком часто посылаются...
|
#7
|
||||
|
||||
![]() ну так я и объясняю, что протокол tcp может последовательные пакеты склеить или один пакет разбить на несколько!!!
Пишу программы за еду. __________________ |
#8
|
||||
|
||||
![]() не беда, главное чтобы они у меня слались реже
|
#9
|
||||
|
||||
![]() Выдержка из Педивикии:
Цитата:
Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#10
|
||||
|
||||
![]() мне это не надо, мне нужно только сказать как их сразу кучей отправить, я использую ClientSoket ServerSoket
|
#11
|
||||
|
||||
![]() Код:
type TSendStruct = record ... end; var FMemoryStream: TMemoryStream; data: TSendStruct; dummy: Cardinal; begin FMemoryStream:=TMemoryStream.Create; try FMemoryStream.Write(data, SizeOf(TSendStruct)); FMemoryStream.Write(data, SizeOf(TSendStruct)); FMemoryStream.Write(data, SizeOf(TSendStruct)); FMemoryStream.Write(data, SizeOf(TSendStruct)); WriteFile(h, FMemoryStream.Memory^, FMemoryStream.Size, dummy, nil); finally FMemoryStream.Free; end; end; Пишу программы за еду. __________________ |
#12
|
||||
|
||||
![]() хм вроде ясно..
както так тогда потом Код:
cSocket.Socket.SendBuf(FMemoryStream.Memory^,FMemoryStream.Size); |
#13
|
||||
|
||||
![]() Терзает меня сомнение о здравом смысле этой идеи. ALexandr555 ты хоть скажи, какая задача тобой движет?
Грамотно поставленный вопрос содержит не менее 50% ответа. Грамотно поставленная речь вызывает уважение, а у некоторых даже зависть. |
#14
|
||||
|
||||
![]() в личку тогда...
|