ورود

View Full Version : سوال: ارسال Data با استفاده از UDP



hedi
جمعه 09 تیر 1391, 01:47 صبح
با سلام به دوستان برنامه نويس
می خواستم بپرسم که چگونه می توان با استفاده از UDP و استفاده از دو خصيصه IP و نام پورت اطلاعاتی(اطلاعات متنی نظیر H6A2) را در شبکه به یک سیستم دیگر ارسال کرد و سیستم گیرنده در اصل عمل Listen را انجام می دهد . (لازم به توضيح است که شايد اطلاعات ارسالی حتی از سوی یک سخت افزار هم نظير Printer هم باشد. ولی فعلا من برای دو کامپیوتر می خواهم عملی این کار را انجام بدهم) البته من یکسری برنامه نمونه که برای Chat بود ،کد آنها را بررسی کردم ولی ظاهر نیاز من را تامین نمی کرد در برخی از تاپيک ها هم از Indy ها صحبت شده بود حال با همه این تفاسیر از دوستان تقاضا دارم که یک نمونه کاربردی و روشی کارآمد و آسان برای این امر پیشنهاد یا حتی الامکان به مطالب مفيدی ارجاع دهند.

hedi
جمعه 09 تیر 1391, 15:15 عصر
یعنی این مسئله اینقدر پيچيده است که پاسخی برای آن نیست به نظر میرسد که واقعا بايد فکری به حال خودمان بکنیم و به قول معروف کس نخارد پشت من جز ناخن انگشت من ؟!!! چون این چندمین تاپيک که در سال جاری می زنم که یا جوابگو نداره یا دوستان زیاد توجه ندارد یا خود من به پاسخ آن پرداختم اوضاع بد دنیا انگار روی این سایت هم بی تاثير نبوده خوب ديگه باید چه کرد ؟

Mask
یک شنبه 11 تیر 1391, 11:53 صبح
دوست عزیز. سوالتون رو فقط یک بار بپرسید.
در پست قبلی جوابتون داده شده.

hedi
سه شنبه 13 تیر 1391, 01:24 صبح
من از پست هایی که در این تالارها زدم چیزی دستگيرم نشد حالا یک برنامه چت با UDP پيدا کردم فقط خواستم اگر دوستان وارد هستند یک Edit جهت نام Port در آن تعبیه شود تا از طریق تعريف آن پورت Send Or Recevie با آن سیستم انجام شود از حسن توجه دوستان متشکرم

از طریق لینک زیر دانلود نماييد
89108

mossaferin
چهارشنبه 15 شهریور 1391, 14:24 عصر
سلام

برای ارسال دیتا روی شبکه با استفاده از پروتکل UDP ، بایستی به شکل client , server طراحی بشه ، یعنی یه برنامه به عنوان سرور همیشه به یه پورت گوش کنه تا اگه اطلاعاتی دریافت شد ، بتونه دریافت و یا ذخیرش کنه

نکته 1: کلاینت udp ( در صورت استفاده از کامپوننت های indy) به طور معمول زمانی که اجرا میشه یه پورت رو به صورت رندم برای خودش انتخاب میکنه ( که البته میشه تغییرش داد، ولی نیازی نیست ) .
نکته 2 : توی پروتکل udp تشخیص خطا وجود داره ولی تضمینی وجود نداره که پکت هایی که شما ارسال میکنید به همان ترتیب ارسال شده به گیرنده برسه و ممکنه که پس وپیش بشن ، که در این خصوص بایستی جهت ارسال دیتا ، خودتون با توجه به دیتای دریافتی ترتیبش رو تشخیص بدی

بهترین مثال نیز توی کامپوننت های indy وجود داره که من یه نمونه ارسال می کنم