تعديل ويندوز XP ليستقبل التحديثات الأمنية من مايكروسوفت

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

لكن البعض قد يفضل استخدام XP بدلا من الإصدارات الأحدث لعدة أسباب منها كونه اخف واقل استهلاك لموارد الجهاز خصوصا في حال استخدامه كنظام وهمي (Virtual system) وكذلك كونه نظام قديم قد تلقى الكثير من التحديثات والاختبارات والترقيعات فغالبا سيكون اكثر أمنا واستقرارا من الإصدارات الجديدة والتي ما زالت تحتوي على العديد من المشاكل والثغرات غير المكتشفة وكذلك كونه لا يحتوي على إضافات مايكروسوفت الجديدة والتي تجمع وترسل بعض المعلومات عن المستخدم إلى خوادم الشركة كما في ويندوز 10.

مهما كانت أسباب اختيارك أو قناعتك بنظام XP فهناك طريقة تجعل النظام يستقبل تحديثات أمنية وبشكل رسمي من الشركة، وهذه الطريقة تعتمد على تغيير قيمة في سجلات النظام لتجعله يعتقد أنه نظام XP المخصص للأنظمة المدمجة كما في أجهزة البيع والأجهزة الطبية (Point of Service) إذ أن مايكروسوفت لا زالت تدعم تلك الإصدارة من النظام وذلك بسبب انتشارها في أجهزة كثيرة واستحالة تحديثها لإصدارات جديدة من نظام الويندوز. Continue reading “تعديل ويندوز XP ليستقبل التحديثات الأمنية من مايكروسوفت”

[برمجة اندرويد] تحريك الرسومات في الألعاب

غالبية الألعاب وكذلك بعض التطبيقات تتطلب تحريك صور وشخصيات رسومية خلال الشاشة، تحريك الشخصيات يتم من خلال رسم الشخصية بحالات الحركة المطلوبة (sprite) ثم عرض تلك الرسومات واحدة تلو الأخرى لتعطي إيحاء الحركة كالصورة التالية:
Animation Sprite
وأما تحريك الخلفيات فغالبا يتم من خلال إنشاء صورة خلفية اكبر من حجم مساحة العرض ثم عرض جزء من الصورة وتغيير احداثياتها لتبدو كأنها تتحرك.

يوفر الاندرويد عنصر للصور (ImageView) لكن ذلك مخصص لعرض الصور الثابتة أو التي لا تتطلب تغييرات سريعة ولا يمكن استخدامه للصور المتحركة لأنه بطيء. للتعامل مع الصور المتحركة نحتاج إلى الرسم مباشرة على canvas (سطح الرسم) لكن توجد طريقة تبسط العملية وهي باستخدام عنصر SurfaceView والذي يمكنك من الرسم المباشر على canvas وبطريقة سهلة.
عملية التحريك تحتاج أن تعمل في الخلفية لكي لا تعطل عمل التطبيق (لفهم عمليات الخلفية راجع الشرح السابق). لتنظيم العمل سنجعل النص الخاص بالحركة في كلاس (class) خاص سنسمية AnimGuy:

public class AnimGuy extends SurfaceView implements Runnable {
....
}

Continue reading “[برمجة اندرويد] تحريك الرسومات في الألعاب”