شغّل تطبيق Windows في أي تاريخ دون المساس بساعة النظام
اضبط ساعة تطبيق واحد على العام القادم، أو أوقفها، أو سرّعها حتى تنتهي فترة تجريبية مدتها 30 يومًا بينما تُعدّ فنجان قهوة. أما بقية الجهاز فتبقى على الوقت الحقيقي، فيستمر تسجيل دخولك إلى النطاق وشهاداتك وكل برنامج آخر في العمل كالمعتاد.
ثم يخبرك هل نجح الاستبدال فعلًا.
مجاني ومفتوح المصدر بترخيص GPL-3.0 محمول أو مثبّت لا يحتاج التشغيل إلى صلاحيات المسؤول لا يتصل بالإنترنت أبدًا
كيف تبدو الجلسة
23:59:50
18:12:33
لماذا هذه الأداة
اختبار أي شيء يعتمد على التاريخ يعني تحريك الوقت، وكلا الخيارين المعتادين سيئ.
انتهاء التراخيص، والفترات التجريبية، وتجديد الاشتراكات، وصلاحية الشهادات، وأعمار الرموز المميّزة، وتقارير نهاية الشهر والسنة، واحتساب الفوائد، والتذكيرات.
الخيار الأول - تغيير ساعة النظام
يُفسد تسجيل الدخول إلى النطاق وKerberos، ويُبطل شهادات TLS فيتوقف المتصفح عن العمل، ويُربك Windows Update، ويجعل كل تطبيق آخر على الجهاز يكتب طوابع زمنية خاطئة. وعلى الجهاز المنضم إلى نطاق تمنع سياسة المجموعة التغيير عادةً أو تعيده بعد دقائق، فلا يصير الاختبار قابلًا للتكرار أصلًا.
الخيار الثاني - الانتظار
أي: لا تختبر. فتُهمَل الحالات المرتبطة بالتاريخ، ويصل إلى العميل منتج «الترخيص لا ينتهي أبدًا».
ما الذي يفعله
عملية واحدة تتحرك عبر الزمن، وكل شيء آخر على الجهاز لا يتحرك.
أي لحظة
تاريخ ووقت محدّدان، أو لحظة نسبية - +30 days أو -1 year.
جارية أو متوقفة أو مُسرَّعة
سرعة عادية، أو ساعة مثبّتة، أو مُضاعِف بعدد صحيح. x1440 يحوّل اليوم إلى دقيقة.
منطقة زمنية خاصة به
إزاحة ثابتة لتلك العملية وحدها، بينما تبقى منطقة النظام كما كانت تمامًا.
العمليات الفرعية ترافقه
برامج التثبيت والمشغّلات تُنشئ عمليات فرعية. وبدون ذلك يغطي الاختبار نصف ما جرى تشغيله فقط.
قفز أثناء الجلسة
إلى الأمام أو إلى الخلف - بما في ذلك القفزة إلى الخلف التي يُحدثها الحاسوب المحمول بعد المزامنة مع خادم الوقت.
Electron وChromium أيضًا
عبر آلية مختلفة، لأن ساعتهما تعيش في عملية عرض معزولة لا يصل إليها الحقن.
ما لا يفعله أحد غيرنا
كيف تعرف أنه نجح؟
مع أي أداة أخرى لا تعرف. يبدأ التطبيق ويعرض تاريخًا ما، وأنت تفترض. لكنه قد يقرأ الساعة عبر قناة لم تعترضها الأداة - من خادم، أو من قاعدة بيانات، أو عبر طبقة في بيئة التشغيل - وحينها لا يعني «نجح الاختبار» شيئًا على الإطلاق.
- ←حكم قبل أن يبدأ الاختبار الحقيقي: يعمل / يعمل جزئيًا / لا يعمل
- ←أيٌّ من قنوات الوقت البالغ عددها 44 غُطّيت، وكم مرة استعلم التطبيق عن كل منها
- ←أي القنوات لم تُغطَّ - يُذكر ذلك صراحةً ولا يُحذف أبدًا
- ←تحذيرات مرفقة بعواقبها: «يقرأ هذا التطبيق الوقت من الشبكة - وقد لا يكفي الاستبدال المحلي»
دقيقتان معه
نافذة للاستكشاف، وسطر أوامر لـ CI. المحرّك نفسه خلف الاثنين.
# شغّل تطبيقًا كأنه آخر ثانية من عام 2027 chrono run "C:\apps\test.exe" --at 2027-12-31T23:59:59 # شاهد فترة تجريبية مدتها 30 يومًا تنتهي وأنت تُعدّ القهوة: المضاعف 1440 يعني يومًا كل دقيقة chrono run "C:\apps\test.exe" --mode x1440 # استخدم سيناريو مسمّى بدل التاريخ، واكتب الأدلة في ملف chrono run "C:\apps\test.exe" --preset year-rollover --report session.txt
تجيب الحاسبة عن النصف الآخر من اختبار التواريخ - أي تاريخ تستخدم:
$ chrono calc --preset year-2038 --zone +00:00 Chrono Mock - date calculator preset: year-2038 - 2038 boundary explains: Does the app survive the 32-bit Unix time boundary (2038-01-19T03:14:07Z)? base: 2038-01-19T03:14:07 result: 2038-01-19T03:14:07 formats: ISO date 2038-01-19 ISO datetime 2038-01-19T03:14:07+00:00 US 01/19/2038 PL 19.01.2038 epoch (s) 2147483647 epoch (ms) 2147483647000 FILETIME 137919572470000000 RFC 1123 Tue, 19 Jan 2038 03:14:07 GMT ... what this date lands on: at or past the 2038-01-19T03:14:07Z 32-bit time_t limit (Y2038)
مقارنة بما تستخدمه غالبًا
مثل RunAsDate، مع الأجزاء التي كانت ناقصة
يعترض RunAsDate خمس دوال لساعة الحائط ويؤدي ذلك جيدًا. وفيما يلي الفروق بين الأداتين - وتذكر الصفحة الكاملة أيضًا أين يبقى RunAsDate الخيار الأفضل.
| RunAsDate | Chrono Mock | |
|---|---|---|
| يشغّل تطبيقًا واحدًا بتاريخ مزيّف | نعم | نعم |
| قنوات الوقت المُعترَضة | 5 | 44 (30 مُزاحة، 14 معدودة فقط) |
| تسريع الساعة | لا | نعم |
| منطقة زمنية مستقلة | غير موثّق | نعم |
| يتبع العمليات الفرعية | غير موثّق | نعم |
| يخبرك هل نجح | لا | نعم، لكل قناة |
| الشيفرة المصدرية متاحة | برنامج مجاني مغلق المصدر | GPL-3.0 |
المقارنة الكاملة، بما فيها المواضع التي يتفوّق فيها RunAsDate ←
احصل عليه
فُكّ الضغط في أي مكان وشغّله، أو ثبّت ملف .msi الموقّع لكل حساب على الجهاز. لا يحتاج التشغيل إلى صلاحيات المسؤول، ولا تكتب ملفات zip أي شيء في السجل.