PDA

View Full Version : سوال: برنامه نویسی سوکت - سرویس های ویندوزی



amirali_asa@yahoo.com
یک شنبه 24 خرداد 1394, 08:30 صبح
بهترین راه برای فرستادن یک پیغام به کامپیوتر دیگر روی LAN ، بدون این که آن دستگاه به سرور login کنه (مثل چت روی tcp) چیه؟
فرض کنیم بخواهیم روی سرور یک برنامه در صورت لزوم به یک کامپیوتر (یا چند تا کامپیوتر دیگه روی شبکه workgroup) یک پیغام Popup یا روی taskTray بفرسته، بدون این که کلاینت ها دستی کانکت بشن. یعنی روی کلاینت یه سرویس ویندوزی نصب بشه که وقت بالا اومدن ویندوز اجرا می شه و منتظر پیغام از سرور می مونه.
آیا بهتره از امکانات ویندوز مثل msmq یا msg استفاده کنم یا روی tcp و از سوکت پروگرمینگ؟ آیا msmq می تونه به طور خودکار از صف پیغام ها دریافت کنه و پیغام رو نمایش بده؟
فرایند خودکار سازی چجوری باید انجام بشه؟ برنامه های چت روی tcp زیادن ولی برای همه شون باید ip سرور رو بزنی و کانکت کنی و ...
اگه کسی تا حالا این کارو کرده یا می دونه دقیقا چه باید کرد یا حتی توی نت دنبال چی گشت لطفا بگه.

SabaSabouhi
یک شنبه 24 خرداد 1394, 13:30 عصر
بهترین راه برای فرستادن یک پیغام به کامپیوتر دیگر روی LAN ، بدون این که آن دستگاه به سرور login کنه (مثل چت روی tcp) چیه؟
فرض کنیم بخواهیم روی سرور یک برنامه در صورت لزوم به یک کامپیوتر (یا چند تا کامپیوتر دیگه روی شبکه workgroup) یک پیغام Popup یا روی taskTray بفرسته، بدون این که کلاینت ها دستی کانکت بشن. یعنی روی کلاینت یه سرویس ویندوزی نصب بشه که وقت بالا اومدن ویندوز اجرا می شه و منتظر پیغام از سرور می مونه.
آیا بهتره از امکانات ویندوز مثل msmq یا msg استفاده کنم یا روی tcp و از سوکت پروگرمینگ؟ آیا msmq می تونه به طور خودکار از صف پیغام ها دریافت کنه و پیغام رو نمایش بده؟
فرایند خودکار سازی چجوری باید انجام بشه؟ برنامه های چت روی tcp زیادن ولی برای همه شون باید ip سرور رو بزنی و کانکت کنی و ...
اگه کسی تا حالا این کارو کرده یا می دونه دقیقا چه باید کرد یا حتی توی نت دنبال چی گشت لطفا بگه.

سلام
اون برنامه‌های چت که زیاد هم پیدا می‌شن، فقط یه تمرین هستن. شما می‌تونی خواسته‌های خودت رو روش اجرا کنی و برنامه‌ها رو تکمیل کنی.
مثلاً اگه می‌خوای بدون نیاز به سرور بتونی بقیه‌ی کسانی که این برنامه رو اجرا کردن رو پیدا کنی، می‌تونی broadcast کنی، یعنی یک پیام جستجو
رو بدون هدف خاص ( برای همه ) در شبکه منتشر کنی، حالا هر کسی همین برنامه رو اجرا کرده و طبعاً باید یک socket برای listen اختصاص داده باشه
می‌تونه این پیام رو دریافت کنه و بهش پاسخ بده. به این شکل بدون نیاز به سرور، تمام برنامه‌های چت از همین نوع، می‌تونن همدیگه رو پیدا کنن
و چت رو آغاز کنن.

صبا صبوحی