سؤال

ليس لدي جهاز XP في متناول يدي. إذا استخدمت Windows API CodePack للقيام بشيء جديد في Vista/Win7 (على سبيل المثال "TaskDialog") في C#، كيف يتعامل مع تشغيل أجهزة Windows XP؟

إذا استخدمت CodePack ، فهل قمت بفعالية التطبيق الخاص بي فقط يدعم Vista والإصدارات الأحدث من Windows؟

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

المحلول

إذا نظرت إلى "TaskDialog.cs" ، فستجد أن مُنشئ Tastdialog يتضمن الأسطر التالية:

// Throw PlatformNotSupportedException if the user is not running Vista or beyond
CoreHelpers.ThrowIfNotVista();

إذا قمت بتضمين مرجع فقط إلى مجموعة Windows API Code Pack ، فستكون على ما يرام. ولكن باستخدام ميزة غير موجودة على نظام التشغيل الذي يعمل حاليًا ، فإن تطبيقك سوف يلقي استثناءً. للتحقق مما إذا كانت الميزة آمنة للاتصال (أي مدعوم على نظام التشغيل الحالي) ، تتضمن معظم الفصول الدراسية ثابتة IsPlatformSupported منشأه.

لذلك يمكنك التحقق TaskDialog.IsPlatformSupported أولا ودعوة MessageBox.Show() بدلاً من ذلك ، إذا كان نظام التشغيل الخاص بك لا يدعم TockDialogs.

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