سؤال

أنا أعمل على الإعداد الذي يريد تضمين Microsoft.Web.Services3 (WSE 3.0) DLL.ومع ذلك، لا أحب عادةً تضمين ملفات Microsoft DLL في عمليات التثبيت الخاصة بنا إلا عن طريق المواد القابلة لإعادة التوزيع من Microsoft.يتوفر مطور وحزمة تثبيت redist من Microsoft.

لذا، كأفضل ممارسة، هل يجب أن أقوم بتضمين ملف DLL الفردي في التثبيت الخاص بي أو إحالته إلى أحد عمليات تثبيت WSE 3.0 (على افتراض أنه لم يتم تثبيته بالفعل)؟

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

المحلول

عادة، يتم حظر إعادة توزيع أي من ملفات Microsoft DLL خارج الحزمة القابلة لإعادة التوزيع بموجب اتفاقية ترخيص المستخدم النهائي (EULA)، لذا قد ترغب أولاً في التحقق من اتفاقية ترخيص المستخدم النهائي (EULA) المناسبة لمكتبة الارتباط الحيوي (DLL) تلك.

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

نصائح أخرى

تحقق من برنامج التثبيت إذا تم تثبيت WSE 3.0 وإذا لم ينبه الشخص وقم بإلغاء التثبيت، إذا استمر بشكل طبيعي.لن أقوم بتضمين ملف DLL في حزمة الإعداد الخاصة بك، لأنه يمكن أن يصبح قديمًا بسرعة كبيرة، ولا أعرف ما إذا كانت اتفاقية ترخيص المستخدم النهائي (EULA) ستسمح بذلك.

أعتقد أن اتفاقية ترخيص المستخدم النهائي لـ MS تمنعك من إعادة توزيع كود MS، ما لم تكن في حزمة قابلة لإعادة التوزيع.

يجب أن تتعامل عملية إعادة التوزيع المناسبة مع أي متطلبات أساسية أخرى، لذا فمن المحتمل أن يكون الخيار الأفضل على أي حال.

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

ومع ذلك، إذا لم يكن ملف DLL كبيرًا جدًا وكنت تشك في أن عددًا قليلاً من المستخدمين سيحصلون عليه، فمن أجل مستخدم أفضل، سأقوم بتعبئته مسبقًا في برنامج التثبيت الافتراضي.ومع ذلك، يمكنك دائمًا الحصول على مثبت لا يتضمنه لأولئك الذين يريدون مثبتًا أصغر حجمًا...يقوم عدد كبير من البائعين الآخرين بذلك طوال الوقت.

شكرا على الاقتراحات / التعليقات!بعد النضال مع برنامج تثبيت Windows، اكتشفت أفضل طريقة لتضمين Redist WSE30 وإظهار مربع حوار منبثق إذا لم يكن مثبتًا.

أدرك أنه ليس من أفضل الممارسات (وضد اتفاقية ترخيص المستخدم النهائي الخاصة بشركة Microsoft كما هو مذكور) تضمين ملف DLL ببساطة، ولهذا السبب اعتقدت أنه من الغريب أنه كان يحاول تضمين ملف WSE DLL خارج Redist، خاصة عندما يكون Redist كذلك. مسجل لدى المثبت (يظهر كطلب مسبق ضمن الخصائص).

شكرًا لك مرة أخرى.

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