سؤال

لذلك ، ها هو الوضع هنا.

لديّ 2 مواقع الويب ASP.NET + بعض تطبيقات WinForm التي تم تثبيتها بإعداد. يتم تمثيلها جميعًا كوحدات دمج في مشروع الإعداد.

حاليًا عندما نريد تحديث الإصدار العالمي من التطبيق ، يجب علينا تحديث جميع الإصدارات إلى مواقع الويب والأشياء ASP.NET. أعلم أنه من الممكن اكتشاف الإصدار في معلومات التجميع لتطبيق ASP.NET ، وهو أمر سهل للغاية. الصعوبة هنا هي اكتشاف إصدار الإعداد "العالمي". (قل هنا الموقع هو الإصدار 1.5 ولكن الإعداد العالمي نفسه هو الإصدار 3.4).

في مرحلة ما ، أعتقد أنه إذا قمت بتحديد موقع ملف SETUP.EXE/SETUP.MSI ، يمكنني تصفحه بانعكاس ، لكنه ليس هو الحل الأفضل تمامًا. نقوم بتخزين كل إعداد لكل إصدار على الخادم على مجلد منفصل (على سبيل المثال C: Setups Product 1.0 Setup.exe ، c: setup product 1.5 setup.exe ، etc ..)

أي اقتراحات ؟

هل كانت مفيدة؟

المحلول

تحديد نسخة الإعداد "العالمية". هل تقول أن كل تصحيح يقوم بتحديث بعض التجميعات ولكن ليس كل التجميعات ، وبالتالي فإن إصدار أي مجموعة واحدة ، أو حتى أي من التجميعات على الإطلاق ، قد لا يعكس آخر تصحيح مثبت؟

3 خيارات:

  • حافظ على معلومات الإصدار العالمية في كل ملف تكوين وادفع التحديثات إلى كل تكوين من كل مكونات مثبتة في كل مرة (غير موصى بها).
  • قم بتوفير ملف تكوين مشترك ، أو مراجع من التكوينات الأخرى إلى تكوين "رئيسي" ، يمكن الرجوع إليه من أي من المشاريع القابلة للتنفيذ ، وتأكد من تحديث التكوين في كل مرة.
  • الحفاظ على مفتاح التسجيل الذي يحتوي على الإصدار العالمي لحزمة البرامج.

من بين الثلاثة ، سأختار الأخير ، نظرًا لأن التثبيت والتصحيح ينتشر على عدة مناطق من النظام ، ولكن يجب أن يكون كل منطقة قادرة على قراءة مفتاح سجل البرامج (إن لم يكن تحديثه). العملية ليست صعبة. يمكنك الرجوع إلى النظام الثابت. win32.registry كائن للحصول على مفاتيح أساسية للمساعد المحلي ، CurrentUser ، وما إلى ذلك ، ومن هناك يمكنك اجتياز الشجرة من خلال التنقل عبر كائنات registrykey (أو إنشاء واحدة من نقطة الصفر مع المسار الرئيسي). يمكنك تحديد مسار المفتاح مع تطبيق تطبيقات في ملفات الويب و App.Config المختلفة ؛ هذا لا ينبغي أن يتغير تقريبا مثل قيمة المفتاح نفسه.

نصائح أخرى

إذا كنت تقوم بتثبيت حزم متعددة من MSI واحدة ، فمن الأفضل أن تدع MSI مدرجة في ARP ، ثم يكون إصدار "الإعداد العالمي" متاحًا بسهولة لمستقبل MSI. دون معرفة التكنولوجيا التي تستخدمها لإنشاء إعدادك ، من الصعب تقديم المزيد من النصائح الصلبة ، ولكن في WIX (Windows Installer XML) ، يجب عليك ببساطة تضمين عنصر ترقية سيعتني بذلك تلقائيًا. يجب أن يكون لدى معظم التقنيات طريقة ما لك للتحقق من إصدار التثبيت الحالي.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top