Unduh Chrono Mock
Dua build dari mesin yang sama: jendela untuk menjelajah dan baris perintah untuk CI. Ekstrak
salah satunya di mana saja lalu jalankan - tanpa installer, tanpa entri registry, tanpa hak
administrator. Atau pasang .msi bertanda tangan untuk setiap akun di komputer:
hak administrator satu kali, untuk memasang, tidak perlu untuk menjalankan.
| File | Apa itu | Ukuran |
|---|---|---|
ChronoMock-app-win-x64.zip |
Aplikasi desktop, mandiri - tidak perlu memasang .NET | ~70 MB |
ChronoMock-app-win-x64.msi |
Aplikasi desktop dan baris perintah, dipasang untuk setiap akun di komputer: entri
menu Start dan chrono di PATH |
~58 MB |
ChronoMock-cli-win.zip |
Hanya alat baris perintah, untuk CI dan skrip | ~2,4 MB |
Yang Anda butuhkan
- Windows 10 atau Windows 11. Tidak ada build macOS atau Linux - di Linux, libfaketime sudah menangani hal ini dengan baik.
- Tidak ada yang lain. Build desktop membawa runtime sendiri, dan build baris perintah tidak membawa apa pun sama sekali.
- Aplikasi 32-bit maupun 64-bit didukung. Paket ini menyertakan keduanya, dan memilih yang sesuai dengan aplikasi yang Anda tuju.
ARM64 di luar cakupan hingga versi 1.0, dan aplikasi Store yang dikemas (UWP dan MSIX) tidak didukung - model peluncurannya tidak memungkinkannya.
Menjalankannya
Ekstrak, lalu jalankan ChronoMock.exe untuk jendela atau
chrono.exe untuk baris perintah. Sesi pertama adalah tiga keputusan:
aplikasi mana, momen mana, dan secepat apa jam harus berjalan.
# Jalankan aplikasi seolah-olah ini detik terakhir tahun 2027 chrono run "C:\apps\test.exe" --at 2027-12-31T23:59:59 # Hal yang sama, dengan jam berjalan sehari per menit chrono run "C:\apps\test.exe" --at 2027-12-31T23:59:59 --mode x1440
Dua hal yang perlu dibaca lebih dulu
Cadangkan direktori data aplikasi sebelum sesi pertama dengan tanggal di masa depan.
Aplikasi yang berjalan di tahun 2028 menulis tanggal 2028 di mana pun ia menyimpan data: database, konfigurasi, cache, file lisensinya. Nilai-nilai itu tetap ada setelah Anda kembali ke waktu nyata. Untuk perangkat lunak dengan perlindungan lisensi, ini bisa permanen - “clock rollback detected, licence invalidated” adalah pola standar di industri, dan ia akan melakukan persis apa yang dirancang untuk dilakukan.
Chrono Mock membereskan jejaknya sendiri. Ia tidak dapat membereskan jejak aplikasi yang Anda uji.
Antivirus Anda mungkin menandainya, dan itu wajar.
Waktu digeser dengan menyuntikkan pustaka kecil ke proses target. Itu teknik Windows yang sah dan terdokumentasi - dan juga teknik yang dipakai malware, sehingga Microsoft Defender dan lainnya dapat menandai pustaka yang disuntikkan atau memblokir injeksinya sekaligus. Ini positif palsu yang dipicu oleh tekniknya.
Jika sesi menolak dimulai dan Defender melaporkan ancaman, kecualikan pustakanya, bukan folder:
pilih File di Windows Security dan berikan jalur lengkap ke
chrono_hook.dll. Pengecualian folder akan menghentikan pemindaian apa pun tepat di
direktori tempat alat menyuntik. Atau jalankan di mesin tempat Anda diizinkan melakukannya.
Pustaka yang disuntikkan dibangun dari kode di repositori ini di bawah GPL-3.0 - Anda dapat
membangunnya ulang sendiri. Mode Chromium dan Electron tidak menyuntik sama sekali dan tidak
terpengaruh.
Apa yang ditinggalkannya
Tidak ada di sistem Anda: tidak ada hook yang menetap, tidak ada entri registry, dan tidak ada
apa pun di luar foldernya sendiri kecuali tiga hal yang akan disebutkannya - riwayat sesi dan log
diagnostik, yang pindah ke %LOCALAPPDATA%\ChronoMock\ ketika folder alat itu sendiri
tidak dapat ditulisi, dan, untuk target Electron atau Chromium, profil peramban sekali pakai di
bawah %TEMP% yang dihapus ketika sesi berakhir dan dilaporkan dalam ringkasan sesi
jika tidak dapat dihapus.
Itu menggambarkan berkas zip. Installer adalah pengecualian dan menyebutkan apa yang
ditambahkannya: program di Program Files, entri menu Start, chrono
di PATH komputer, entri di Pengaturan, Aplikasi, dan kunci
HKLM\Software\DonislawDev\Chrono Mock. Pencopotan menghapus semuanya dan
membiarkan %LOCALAPPDATA%\ChronoMock\. Satu opsi lagi, mati secara bawaan,
menulis nilai registry selama sesi dan menghapusnya sesudahnya:
--elevated-embedded.
Tidak pernah terhubung ke internet, tidak menyimpan akun, dan tidak mengirim telemetri.