Chrono Mock
BahasaBahasa Indonesia

Jalankan aplikasi Windows pada tanggal apa pun - tanpa menyentuh jam sistem

Setel jam satu aplikasi ke tahun depan, bekukan, atau percepat sehingga masa percobaan 30 hari habis selagi Anda membuat kopi. Sisa mesin tetap memakai waktu asli - login domain, sertifikat, dan semua program lain berjalan seperti biasa.

Lalu alat ini memberi tahu apakah penggantian waktu itu benar-benar berhasil.

Gratis dan open source, GPL-3.0 Portabel atau terpasang Tanpa hak administrator untuk menjalankan Tidak pernah berkomunikasi dengan internet

Seperti apa sebuah sesi

Aplikasi melihat
2027-12-31
23:59:50
zona sesi -05:00
Mesin masih melihat
2026-09-04
18:12:33
zona host +02:00
Berhasil - penggantian waktu sampai ke proses ini
Kanal waktu yang dipantau hingga 44 · masing-masing dengan jumlah panggilan
Panel sesi Chrono Mock. Jam aplikasi menunjukkan 2038-01-19 03:14:14 dan jam asli di sebelahnya menunjukkan 2026-09-22 15:50:30, masing-masing dengan waktu berjalannya sendiri. Di bawahnya ada kecepatan dari x1 hingga x1440 dengan tombol Freeze, lalu lompatan relatif dan lompatan ke tanggal yang diketik, dan di bagian bawah sebuah tanda centang hijau bertuliskan Works di samping tombol merah Stop session.
Sesi yang sedang berjalan. Aplikasi berada di tahun 2038, mesin tidak, dan putusan menyatakan bahwa penggantian waktu sampai ke aplikasi.

Mengapa ini ada

Menguji apa pun yang bergantung pada tanggal berarti memindahkan waktu. Kedua pilihan yang biasa sama-sama buruk.

Masa berlaku lisensi, masa percobaan, perpanjangan langganan, masa berlaku sertifikat, umur token, laporan akhir bulan dan akhir tahun, perhitungan bunga, pengingat.

Pilihan 1 - ubah jam sistem

Ini merusak login domain dan Kerberos, membatalkan sertifikat TLS sehingga peramban berhenti berfungsi, membingungkan Windows Update, dan membuat setiap aplikasi lain di mesin menulis stempel waktu yang salah. Pada mesin yang tergabung ke domain, kebijakan grup biasanya memblokir perubahan itu atau mengembalikannya beberapa menit kemudian, sehingga pengujian bahkan tidak dapat diulang.

Pilihan 2 - menunggu

Artinya: tidak menguji. Maka kasus yang bergantung pada tanggal terlewat, dan “lisensi tidak pernah kedaluwarsa” sampai ke pelanggan.

Apa yang dilakukannya

Satu proses bergerak melintasi waktu. Tidak ada yang lain di mesin yang ikut.

Momen apa pun

Tanggal dan jam tertentu, atau yang relatif - +30 days, -1 year.

Mengalir, dibekukan, atau dipercepat

Kecepatan normal, jam yang ditahan, atau pengali bilangan bulat. x1440 mengubah satu hari menjadi satu menit.

Zona waktunya sendiri

Selisih tetap untuk proses itu saja, sementara zona sistem tetap persis di tempatnya.

Proses anak ikut serta

Installer dan launcher memunculkan proses anak. Tanpa itu, pengujian hanya mencakup separuh dari yang berjalan.

Melompat di tengah sesi

Maju atau mundur - termasuk lompatan mundur yang dilakukan laptop setelah menyinkronkan ulang dengan server waktu.

Electron dan Chromium juga

Melalui mekanisme yang berbeda, karena jam mereka berada di renderer yang terisolasi tempat injeksi tidak menjangkau.

Bagian yang tidak dilakukan alat lain

Bagaimana Anda tahu itu berhasil?

Dengan alat lain, Anda tidak tahu. Aplikasi menyala, menampilkan suatu tanggal, dan Anda berasumsi. Padahal aplikasi bisa membaca jam lewat kanal yang tidak pernah dicegat alatnya - dari server, dari database, melalui lapisan runtime - dan saat itu “pengujian lulus” sama sekali tidak berarti.

  • →Putusan sebelum pengujian sebenarnya dimulai: berhasil / berhasil sebagian / tidak berhasil
  • →Dari 44 kanal waktu, mana yang tercakup, dan berapa kali aplikasi menanyakan masing-masing
  • →Kanal mana yang tidak tercakup - dinyatakan dengan jelas, tidak pernah dihilangkan
  • →Peringatan beserta konsekuensinya: “aplikasi ini membaca waktu dari jaringan - penggantian lokal mungkin tidak cukup”

Cara kerja audit sumber waktu →

Dua menit bersamanya

Satu jendela untuk menjelajah, satu baris perintah untuk CI. Mesin yang sama di balik keduanya.

# Jalankan aplikasi seolah-olah ini detik terakhir tahun 2027
chrono run "C:\apps\test.exe" --at 2027-12-31T23:59:59

# Saksikan masa percobaan 30 hari habis selagi Anda membuat kopi: x1440 berarti sehari per menit
chrono run "C:\apps\test.exe" --mode x1440

# Pakai skenario bernama alih-alih tanggal, dan tulis buktinya ke file
chrono run "C:\apps\test.exe" --preset year-rollover --report session.txt

Kalkulator menjawab separuh lain dari pengujian tanggal - tanggal mana yang dipakai:

$ 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)

Dibandingkan dengan yang mungkin Anda pakai sekarang

Seperti RunAsDate, dengan bagian yang tadinya tidak ada

RunAsDate mencegat lima fungsi jam dinding dan melakukannya dengan baik. Berikut perbedaan keduanya - dan halaman lengkapnya juga menyebutkan di mana RunAsDate tetap pilihan yang lebih baik.

 RunAsDateChrono Mock
Menjalankan satu aplikasi pada tanggal palsuyaya
Kanal waktu yang dicegat544 (30 digeser, 14 dihitung)
Mempercepat jamtidakya
Zona waktu mandiritidak terdokumentasiya
Mengikuti proses anaktidak terdokumentasiya
Memberi tahu apakah berhasiltidakya, per kanal
Kode sumber tersediafreeware, tertutupGPL-3.0

Perbandingan lengkap, termasuk di mana RunAsDate unggul →

Dapatkan

Ekstrak di mana saja lalu jalankan, atau pasang .msi bertanda tangan untuk setiap akun di komputer. Menjalankannya tidak memerlukan hak administrator, dan berkas zip tidak menulis apa pun ke registry.