PDA

View Full Version : نحوه آپدیت شدن برنامه تمامی کلاینتها با آپدیت شدن یکی از کلاینت ها



mah.yar
یک شنبه 12 اردیبهشت 1395, 08:51 صبح
فرض کنید چندتا کلاینت داریم در یک شبکه محلی. و روی تمام کلاینتها یک برنامه نصب هست که با پایگاه داده در سرور در ارتباطند. میخوایم وقتی ورژن جدیدی از برنامه نوشته شد و وقتی یکی از کلاینتها رو آپدیت کردیم اتوماتیک مابقی کلاینتها هم خودشون ور آپدیت کنن. راه حل پیشنهادی؟
نکته مهم صورت مسئله: برای هربار آپدیت کردن، کلایت ثابت یا سرور ثابتی برای برنامه آپدیت مدنظر نیست بلکه هروقت یکی از سیستم ها آپدیت شد مابقی هم از طریق این سییتم خودشونو آپدیت کن.

mah.yar
دوشنبه 13 اردیبهشت 1395, 06:08 صبح
یجورایی میخوام clickonce پیشرفته تری ایجاد کنم. در clickonce هروقت سرور آپدیت شد کلاینتها آپدیت می شند اما من میخوام اگه کلاینتی هم آپدیت شد مابقی کلایتنها هم آپدیت بشند.

reza_ali202000
دوشنبه 13 اردیبهشت 1395, 08:40 صبح
سلام دوست عزیز
شما میتونی یه جدول تک فیلدی به مقدار شماره نرم افزار بزاری.
با هر بار باز شدن کلاینت یه چک کنه ببینه شماره نرم افزاری خودش با اون فیلده یکی هس یا نه اگه نبود درخواست اپدیت بده.
اگه عدد خودش هم که بزرگتر بود اون فیلد رو اپدیت کنه.
فکر نمیکنم کار سختی باشه.

mah.yar
سه شنبه 14 اردیبهشت 1395, 06:21 صبح
سلام دوست عزیز
شما میتونی یه جدول تک فیلدی به مقدار شماره نرم افزار بزاری.
با هر بار باز شدن کلاینت یه چک کنه ببینه شماره نرم افزاری خودش با اون فیلده یکی هس یا نه اگه نبود درخواست اپدیت بده.
اگه عدد خودش هم که بزرگتر بود اون فیلد رو اپدیت کنه.
فکر نمیکنم کار سختی باشه.

سلام. ممنون از پاسختون.
مشکلی که هست اینه که فرضا کلاینت1 که ورژنش بزرگتر(جدیدتر) بود و اون فیلد رو با ورژن خودش آپدیت میکنه سپس کلاینت2 میاد فیلد رو چک میکنه میبینه که ورژنش کمتره(یعنی آپدیت جدید موجود هست) حالا کلاینت 2 چجوری خودشو آپدیت کنه بعبارتی فایلهای اپدیت رو از کجا بگیره چون کلاینت1 به صورت دستی(از روی فلش یا سی دی)آپدیت شده.

محمد آشتیانی
سه شنبه 14 اردیبهشت 1395, 07:34 صبح
سلام
به نظرم کلاینت ها باید خودشون را با سرور آپدیت کنن ، برای این قابلیت اضافی که شما مد نظرتون هست ، به نظرم میرسه اگر موقع چک کردن سرور برای آپدیت (قاعدتا باید از طریق یک وب سرویس پیاده سازی بشه) ، ورژنی که در کلاینت موجود هست از ورژن نسخه موجود روی سرور بالاتر بود ، اون کلاینت باید بتونه نسخه خودش رو روی سرور ثبت کنه و البته فایل های نرم افزار رو هم روی سرور آپلود کنه ، اینجوری کلاینت های دیگه توی اولین باری که سرور رو برای نسخه جدید چک میکنن میتونن خودشون رو آپدیت کنند.
به نظر میرسه همچین سناریویی میتونه جوابگو باشه.




موفق باشید.