delphi4arab منتديات دلفي للعرب
كيف يمكنني حفظ جميع الصور من الـ Clients - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : منتديات دلفي للعرب التعليمية (https://delphi4arab.net/forum/forumdisplay.php?fid=3)
+--- قسم : سؤال و جواب حول دلفي (https://delphi4arab.net/forum/forumdisplay.php?fid=15)
+--- الموضوع : كيف يمكنني حفظ جميع الصور من الـ Clients (/showthread.php?tid=6435)



كيف يمكنني حفظ جميع الصور من الـ Clients - Oman Defender - 12-09-2014

السلام عليكم جميعا
شباب عندي مشكلة في حفظ الصور من الClients
على سبيل المثال 2 كلاينت يرسلون في نفس الوقت صورتين, كيف احفظ الصورتين ؟
ستحفظ صورة واحدة فقط !!
هذا كود الاستقبال في السيرفر
كود :
procedure TForm3.IdTCPServer2Execute(AContext: TIdContext); var fs: TFileStream; begin fs := TFileStream.Create('C:\Documents and Settings\Admin\Desktop\pic\55.png', fmCreate); AContext.Connection.IOHandler.ReadStream(fs, -1, True);



كيف يمكنني حفظ جميع الصور من الـ Clients - Houdini - 12-09-2014

كود يحفظ كلا صورتيتن لاكنك استعملت نفس الاسم لكلا الصورتين فتحفظ الثانية على الاولى و تختفي الاولى
استعمل اسم دينامكي متربط مع AContext الممرر ك رقم ثريد مثلا


كيف يمكنني حفظ جميع الصور من الـ Clients - Oman Defender - 13-09-2014

Houdini كتب :كود يحفظ كلا صورتيتن لاكنك استعملت نفس الاسم لكلا الصورتين فتحفظ الثانية على الاولى و تختفي الاولى
استعمل اسم دينامكي متربط مع AContext الممرر ك رقم ثريد مثلا

بالفعل أخي يحفظ فوق الأولى, للأسف هذه اول مره أتعامل مع مكونات Indy
لا أفهم هذاالسطر استعمل اسم دينامكي متربط مع AContext الممرر ك رقم ثريد مثلا
شكرا جزيلا


كيف يمكنني حفظ جميع الصور من الـ Clients - Houdini - 13-09-2014

اوكي اخي راه فهمك بعض امور اساسية في عمل اندي حتى تستوعب امور من اساسها

اندي تعمل بنظام ارسال blocking يعني في سطر ارسال شيئ ما
لن يتم تنفيد سطر الي يليه حتى يتم ارسال بالكامل للبيانات عبر سوكت لدى و لتجنب توقف برنامج عن عمل قاموا بتطوير بجعل عمليات ارسال تتم عبر ثريد لكل زبون متصل يعني كل زبون له ثريد وحده فعند ارسال ستوقف عمل ثريد فقط و لن يتوقف عمل برنامج

اوكي الحين لكل زبون ثريد فادا تعدد زبائن تعددة ثريدات فاستوجب الامر عمل بنية يتم حفظ فيها معلومات كل زبون كرقم ثريد تبعه و رقم قنات اتصال و ايبي تبعه و بورت و غيرها و هته البنية تممر لك في دالة .IdTCPServerExecut من نوع TIdContext

انت حين يمكنك وصول لمعلومات زبونك عبر هته البنية - انت تستعمل اندي 10 وانا استعمل اندي 9 فالبنية مختلفة حسبما ارى - فيمكنك ان تحصل على رقم ثريد منها و تضيفه لاسم صورة حتى تحصل على اسم مختلف حسب كل زبون

هدا كل ما في الامر و انا اختصرت كل هدا في سطر السابق فقط ^^


كيف يمكنني حفظ جميع الصور من الـ Clients - Oman Defender - 13-09-2014

جميل, شرح وافي وكافي, فهمت آلية عمل هذه المكونات, شكرا لك أخي