View Full Version : چگونه از Binding باید استفاده کرد؟
desatir7316
دوشنبه 12 بهمن 1388, 14:40 عصر
سلام به همه
می خواستم بدونم چطوری از مشخه Binding کامپوننت IdTCPServer میشه استفاده کرد که از طریق اون بشه چند تا کلاینت رو به یک سرور متصل کرد
ممنون می شم کمک کنید
برای پروژه پایان ترم بهش احتیاج دارم
vcldeveloper
سه شنبه 13 بهمن 1388, 00:03 صبح
شما کافیه یک شماره پورت به خصوصیت DefaultPort اختصاص بدید.
خصوصیت Bindings برای سرورهایی هست که به بیش از یک کارت شبکه وصل میشند، و شما برای اون منظوری که قید کردید (اتصال چند کلاینت به سرور)، نیازی به Bindings ندارید.
desatir7316
سه شنبه 13 بهمن 1388, 22:26 عصر
مرسی ولی
یعنی اگه بخوام به وسیله سرور هر سری یکی از کلاینت هارو کنترل کنم(مثلا قفل کردن دسکتاپ و ...) لحتیاجی به Binding ندارم؟
vcldeveloper
چهارشنبه 14 بهمن 1388, 01:24 صبح
یعنی اگه بخوام به وسیله سرور هر سری یکی از کلاینت هارو کنترل کنم(مثلا قفل کردن دسکتاپ و ...) لحتیاجی به Binding ندارم؟
نه، ندارید.
desatir7316
چهارشنبه 14 بهمن 1388, 16:58 عصر
میشه راهنمایی کنید چطوری میشه با یک IdTCPServer چند تا کلاینت رو کنترل کرد در صورتی که همه کلاینت ها در هر لحظه آماده دریافت اطلاعات از سرور باشند؟
ممنون
vcldeveloper
چهارشنبه 14 بهمن 1388, 17:31 عصر
میشه راهنمایی کنید چطوری میشه با یک IdTCPServer چند تا کلاینت رو کنترل کرد در صورتی که همه کلاینت ها در هر لحظه آماده دریافت اطلاعات از سرور باشند؟
دوست عزیز، این چیزی که شما با توجه به پست قبلی تان میخواید؛ برنامه ایی هست که هم خودش به نوعی سرور باشه، و هم کلاینت.
کلاینت های شما در اون موردی که مثال زدید (قفل کردن دسکتاپ)؛ حکم سرور را دارند. سرور یعنی سیستمی که به درخواست ها پاسخ میده. کلاینت هم یعنی سیستمی که درخواست ارسال میکنه.
اون نرم افزار شما که نقش مدیریتی داره، از یک لحاظ خودش کلاینت هست، چون برای سایر سیستم های تحت مدیریت خودش درخواست ارسال میکنه. از لحاظ دیگه سرور هست، چون اون سیستم های تحت مدیریت در زمان شروع به کار خودشان با این سیستم ارتباط برقرار می کنند.
پس شما در برنامه خودتان دو ماجول دارید، یکی از IdTCPServer یا هر سرور دیگه ایی برای پاسخگویی به درخواست ها استفاده میکنه؛ و دیگری از IdTCPClient یا هر کامپوننت کلاینت دیگه ایی برای ارسال درخواست استفاده میکنه.
سیستم های تحت نظارت شما در هنگام شروع به کار، بت ماجول سرور شما ارتباط برقرار می کنند، و مشخصات خودشان را به سرور ارسال می کنند، و احیانا لیست مجوزهای کاربر را از سرور دریافت می کنند.
سیستم ناظر اگر بخواد فرمانی به این سیستم های تحت نظارت ارسال کنه، با ماجول سرور آنها به عنوان یک کلاینت ارتباط برقرار میکنه، و فرمان مورد نظرش را ارسال میکنه.
اگر سیستم ناظر بخواد برای همه سیستم های تحت نظارت فرمانی ارسال کنه، میتونه در هنگام ورود و خروج هر سیستم تحت نظارت که در سرور ثبت میشه، مشخصات آنها را نگهداری کنه، و در صورت لزوم پیامی را به همه این سیستم ها ارسال کنه.
دیگه جزئیات کار، مثل چگونگی کار با IdTCPServer رو می تونید با مراجعه به تاپیک های دیگه و مثال های متعددی که برای کار با این کامپوننت در سایت های مختلف وجود دارند، خودتون به دست بیارید.
desatir7316
پنج شنبه 15 بهمن 1388, 10:13 صبح
ممنونم
شما درست میگید
اگه من نحوه ارتیاط یک سرور با چند کلاینت رو بدونم مشکلم برطرفه
سرچ کردم ولی ...
ممنون می شم اگه راهنمایی کنید
vcldeveloper
جمعه 16 بهمن 1388, 23:53 عصر
اگه من نحوه ارتیاط یک سرور با چند کلاینت رو بدونم مشکلم برطرفه
برای شما در پست قبلی توضیح داده شد که:
اگر سیستم ناظر بخواد برای همه سیستم های تحت نظارت فرمانی ارسال کنه، میتونه در هنگام ورود و خروج هر سیستم تحت نظارت که در سرور ثبت میشه، مشخصات آنها را نگهداری کنه، و در صورت لزوم پیامی را به همه این سیستم ها ارسال کنه.
یعنی سرور برای اینکه بتونه بعدا پیامی به کلاینت های خودش ارسال کنه، باید در زمان اتصال آنها به سرور، آدرس IP آنها را در لیستی نگهداری کنه، و در زمان قطع اتصالشان هم آن IP را از لیست حذف کنه.
هر زمان نیاز داشت پیامی را به کلاینتی بفرسته، از طریق همان آدرس IP برای آن کلاینت پیام ارسال میکنه.
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.