التسجيل الشرطي لبعض DLL (S) أثناء عملية التثبيت. (مشاكل)

StackOverflow https://stackoverflow.com/questions/568268

سؤال

لدي تطبيق سيستخدم جهازا في بعض الحالات (أي الطابعة). في الأساس، في مكتب واحد، سيتم استخدام هذه الطابعة، وفي مكتب آخر لن يتم استخدام هذه الطابعة.

تتمثل الوظيفة في استخدام الطابعة في رمز التطبيق، ويتم الإشارة إلى DLL التي تتواصل مع الطابعة في التعليمات البرمجية. لذلك DLL جزء من حزمة التثبيت .msi.

ومع ذلك، لا يمكن تسجيل هذه DLL أثناء التثبيت إذا لم يتم تثبيت المتطلب السابق (مجموعة من برامج تشغيل الطابعة، التي توفرها الشركة المصنعة كإكس تثبيت واحد). مثبت برامج التشغيل حوالي 50 متر حجم.

لا أريد تضمين ملف إضافي 50 متر في حزمة التثبيت للمكتب الذي لن يستخدم الطابعة أبدا. ما هي الحلول الممكنة للمشكلة؟

في نهاية المطاف، أود أن أرغب خيارا في تخطي التسجيل بطريقة أو بأخرى لهذه DLL أثناء التثبيت. لكنني لا أعرف كيفية الاقتراب من ذلك.

أعتقد أنني أستطيع الحصول على مجموعة مشروطة في التعليمات البرمجية. ولكن من شأنه أن ينطوي على قدر كبير من العمل لفصل الرمز بالكامل الذي يتحدث إلى هذا النوع من الطابعة من بقية رمز التطبيق.

أي حلول ممكنة؟

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

المحلول

مجموعة DLLs التي سيتم تثبيتها مشرويا / مسجل مكون. ثم في MSI الخاص بك عنصر الجدول، استخدم عمود الحالة لتعتمد على الممتلكات المراد تعيينها. في MSI الخاص بك جداول محدد المواقع, ، تكوين الصفوف للبحث عن المتطلبات الأساسية وتعيين الخاصية.

يمكنك معرفة المزيد حول هذا الموضوع عن طريق القراءة:

http://msdn.microsoft.com/en-us/library/aa371564(vs.85).aspx.

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