Seberapa teknis jawaban yang Anda inginkan? Anda mungkin dapat memaksa exe untuk selalu menjalankan 32bit dengan beberapa alat SDK, tetapi itu memang membutuhkan sedikit kerja.
Jawaban mudahnya adalah memulai dari proses 32bit (mis. Gunakan %SystemRoot%\SYSWOW64\cmd.exe
untuk meluncurkan).
Yang lebih kompleks adalah memeriksa jenis exe apa itu, kemudian memodifikasinya sendiri. Latar belakang di sini adalah untuk memahami bahwa kode yang dikompilasi dari bahasa yang langsung bekerja dengan Windows API dibuat sebagai 32bit atau 64bit pada waktu kompilasi oleh pengembang. Ini tidak dapat diubah tanpa kembali ke kode sumber.
Namun semakin banyak aplikasi yang ditulis melalui lapisan virtualisasi yang membuat penulisan aplikasi lebih mudah. Ada dua yang umum: .NET dan Java. Saya tidak yakin tentang Java kecuali mengetahui bahwa memaksa instalasi runtime Java yang tepat dengan menyelesaikan masalah.
Untuk .NET Anda dapat menggunakan alat SDK untuk:
- Validasi bahwa aplikasi "AnyCPU":
corflags myExe.exe
. Menggunakan utilitas dari .NET SDK untuk membaca tajuk rakitan .NET, untuk exe akan mengembalikan sesuatu seperti:
Versi: v4.0.30319
CLR Header: 2.5
PE: PE32
CorFlags: 0x20003
SANGAT: 1
32BITREQ: 0
32BITPREF: 1
Ditandatangani: 0
yang 32BITREQ
memberitahu saya ini adalah AnyCPU
karena 32bit tidak diperlukan.
- Gunakan
corflags
dengan /32BITREQ+
opsi untuk memodifikasi exe menjadi 32bit saja.