توافق Windows API CodePack للخلف على Windows XP
-
26-09-2019 - |
سؤال
ليس لدي جهاز 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.