السلام عليكم
كيف بامكاني الحصول على الوقت من Bios مباشرة و ليس من نظام ويندوز
كنت أستخدم توابع عديدة آخذ التوقيت من النظام و لكنني لاحظت بأن المستخدم بامكانه تغيير الوقت في ويندوز و بالتالي يتغير التوقيت في برنامجي
السلام عليكم
كيف بامكاني الحصول على الوقت من Bios مباشرة و ليس من نظام ويندوز
كنت أستخدم توابع عديدة آخذ التوقيت من النظام و لكنني لاحظت بأن المستخدم بامكانه تغيير الوقت في ويندوز و بالتالي يتغير التوقيت في برنامجي
مدونتي
السلام عليكم ,,,
ياأبو أحمد ,, ستكون لديك نفس المشكلة لأن وقت ال BIOS يمكن تغييره أيضا ,,
عموما كل ماتريد أن تفعل شيئا غريبا يتعامل مع ال BIOS أو مع الدوز ,, وهذه الامور من الوندوز ,, فورا عليك بكتابة كم سطر أسمبلي في السي++ ,, بالمناسبة المهمة سهلة جدا ,, ولم أكن في السابق أتوقعها بهذه السهولة ,,
ليست لدي خبرة مطلقا كتلك التي لدى chik ,, لذا فقط أقول هنا عليك استخدام
INT 2AH للحصول على التاريخ ,,
و INT 2CH للحصول على الزمن ,,
ولحسن الحظ الوندوز يتيح التعامل بهذه المقاطعات ,, ولايرسل رسالة تنص بعدم وجود امتيازات لهذه المهمة كما في INT 21H ,,
ننتظر chik ,, للتعليق ,,
السلام عليكم,
يا أخي أنت لما تأخد الوقت من الوندوز أو البيوس فأنت تأخد نفس الوقت. فنحاول أن نفكر , لو كان وقت الوندوز مختلفا عن البيوس فحين نغلق الكمبيوتر تبقى البطارية هي التي تعطي الوقت وحين نشغل الكمبيوتر فنقول أن البيوس سيأخد الوقت من جديد ولكن الوندوز من أين سيأخد الوقت علما أنه لم يكن شغالا عند إطفاء الكمبيوتر.
وللمزيد من التأكد من هدا الكلام يمكن أن نقوم بالتجربة التالية :
نغير الوقت في الوندوز وندهب إلى البيوس ونلاحظ أن الوقت قد تغير أيضا ونقوم بالعكس من جديد نغير الوقت في البايوس ونلاجظ أن هدا تغير أوتوماتيكيا في الوندوز وهدا يدل على أن هدا الأخير يستعمل نفس الوقت.
فلا داعي إدن لاستعمال هدا أو داك بما أنهما متشابهان.
إلى اللقاء.
هذا الموضوع مغلق.