ورود

View Full Version : معادل دستور زیر در iny 10 چیست!!!؟؟؟



rayangostar_co
سه شنبه 19 دی 1391, 14:18 عصر
با سلام و درود فراوان به اساتید و کاربران برنامه نویس
لطفا بگید معادل دستور زیر چیه !!


TIdPeerThread(Hand.Thread).Connection.WriteBuffer( Transfer,SizeOf(Transfer),True);

می دونم که تو indy 10 به جای TIdPeerThread از TAcontext استفاده میکنند
و من به صورت زیر نوشتم اما به نظر درست نیست و از WriteBuffer خطا میده و میگه همچین متدی نداره!
خوب باید چیکار کرد !!!؟ لطفا راهنمایی کنید دوستان.


TIdContext(Hand.Thread).Connection.WriteBuffer(Tra nsfer,
SizeOF(Transfer), True);
البته transfer یه نمونه از رکورد ایجاد شده است.

Type

TDataTransform = Record //Pack Record For Sending
Command : String[30]; //Send Command
UserName : String[30]; //Sender Username
Password : String[30]; //Send Password
Recieve : String[30]; //Reciever User
Level : String[30]; //User Level
Text : String[255]; //Send text from other side with this packet
IP : String[30];
PORT : String[30];
End;

BORHAN TEC
سه شنبه 19 دی 1391, 21:11 عصر
سلام
قبلاً در تاپیک زیر جواب داده ام:
http://barnamenevis.org/showthread.php?364667

rayangostar_co
چهارشنبه 20 دی 1391, 10:26 صبح
سلام
قبلاً در تاپیک زیر جواب داده ام:
http://barnamenevis.org/showthread.php?364667

دوست عزیز در مورد سوال من تو تپیک ارسالی شما فقط یه منبع ذکر کردی که در مورد WriteBuffer توضیح داده ولی به نظر تو اون سایت همه مشکل داشتن و به جوابی نرسیدن !

لطفا شما معادلشو بنویس. با تشکر فراوان

BORHAN TEC
چهارشنبه 20 دی 1391, 11:00 صبح
سلام
اتفاقاً توی اون پست همه به نتیجه رسیده اند، اون آقای Remy Lebeau هم که می بینید جواب داده اند جزو تیم سازنده Indy هستند. اونجا گفته شده که توی Indy 10 متد ReadBuffer و WriteBuffer نداریم و به جای اون اومده از روشی مثل این استفاده کرده که دقیقاً همان کار را انجام می دهد:
برای خواندن:
Buf : TIdBytes;
...
Context.Connection.IOHandler.ReadBytes(Buf, size);
BytesToRaw(Buf, buffer^, size);

و برای نوشتن:
Buf : TIdBytes;
...
Buf := RawToBytes(Buffer, Count);
Context.Connection.IOHandler.Write(Buf);
توی اون لینک هم توضیح داده بودم ولی توجه داشته باشید که برای حفظ سازگاری با Indy 9 فقط کافیه که بنا به نیاز از BytesToRaw و RawToBytes استفاده بشه.
موفق باشید...