Saya punya aplikasi pihak ketiga (dalam hal ini Cognos Data Manager) diinstal pada Windows Server 2003 64-bit.
Apakah ada cara cepat untuk menentukan apakah suatu aplikasi telah dibangun / dikompilasi sebagai aplikasi 64-bit atau sebagai aplikasi 32-bit?
Secara default, sebuah program ingin diinstal dalam Program Files (x86). Saya menduga itu berarti itu adalah versi 32-bit. Saya harus membuatnya untuk berbicara dengan database Oracle dan untuk membuatnya bekerja saya akhirnya menginstalnya kembali di jalur direktori yang tidak memiliki tanda kurung "(" dan ")" di dalamnya, karena hal itu menyebabkan masalah. Saya juga telah menginstal klien Oracle 64-bit dan 32-bit.
Untuk referensi di masa mendatang, saya ingin dapat mengetikkan perintah "xxxx fred.exe" dan minta saya memberi tahu apakah fred.exe akan membutuhkan pengaturan 32-bit atau 64-bit (misalnya sumber data ODBC dll).
Jawaban:
Jika Anda menjalankan aplikasi, di Task Manager seharusnya memiliki * 32 di sampingnya untuk menunjukkan itu 32-bit. Saya cukup yakin mereka menerapkan ini di Server 2003, tidak positif, semoga seseorang dapat mengklarifikasi.
Anda juga bisa menjalankannya melalui PEiD . PEiD tidak mendukung PE 64-bit, sehingga akan tersedak jika 64-bit.
Ada juga file GNU yang terkenal untuk Windows. Ini akan memberi tahu Anda segala macam informasi tentang executable.
Contoh:
Seperti yang Anda lihat, penginstal WinRAR 64-bit diklasifikasikan sebagai PE32 +, yang menandakan eksekusi 64-bit . Aplikasi 32-bit hanyalah PE32, yang dapat dieksekusi 32-bit.
sumber
file
dari GnuWin32, unduh 'paket lengkap' (bukan 'binari') dari gnuwin32.sourceforge.net/packages/file.htmCara termudah, tanpa menginstal program lain atau menjalankan file, cukup klik kanan pada file, pilih Properties , dan kemudian pergi ke tab Compatibility . Jika tidak ada opsi berwarna abu-abu dan mode Windows XP dan 9x ditawarkan, ini 32-bit. Jika ada opsi abu-abu dan Vista adalah mode paling awal yang ditawarkan, itu 64-bit. Tidak perlu memulai aplikasi sama sekali.
Jika aplikasi sudah dimulai, tentu saja Anda masih dapat menggunakan ide * 32 yang disebutkan dalam jawaban lain. Namun, ini tidak tersedia di Windows 8.x dan task manager baru. Untungnya, Anda dapat mengaktifkan kolom Platform dengan mengklik kanan pada header kolom di tab Detail dan memilih kolom Pilih . Kolom akan berisi "32-bit" atau "64-bit" yang sesuai.
sumber
Jika Anda menginstal Visual Studio atau Platform SDK yang dapat Anda gunakan
dumpbin /headers
untuk melihat nilai header PE.Contoh untuk eksekusi 64-bit:
Dan untuk 32 bit:
Nilai pertama di header file memberi tahu Anda arsitektur: 0x14C untuk x86 atau 0x8664 untuk x64.
sumber
Jika Anda memiliki program hex editor, cukup buka file Anda dan segera setelah hal-hal intro header standar (seperti "Program ini tidak dapat dijalankan dalam mode DOS ...") Anda akan melihat
"PE..L" (kode hex: 504500004C) = 32 bit
atau
"PE..d †" (kode hex: 504500006486) = 64 bit
sumber
*:FACE:B00C:*
Explorer EXE
File Explorer yang Dapat Dieksekusi untuk tipe file OS / 2, NE, PE32, PE32 + dan VxD.
Catatan: Muncul dengan GUI dan memungkinkan Anda 'menjelajahi' struktur file biner Windows.
Sayangnya, tampaknya tidak menerima biner target untuk dibuka dari baris perintah. Tetapi detail yang diberikannya mungkin berguna dalam beberapa kasus.
sumber
Anda dapat memeriksa menggunakan
sigcheck.exe
bagian mana dari Sysinternals Suite , missumber
Cara sederhana lain adalah dengan menggunakan PESnoop:
Satu tempat untuk mendapatkan PESnoop ada di sini: http://www.prestosoft.com/download/plugins/PESnoop.zip
- Dave
sumber
Dan bagi Anda penggemar GUI, cara termudah mutlak adalah menginstal ekstensi Explorer ini:
http://www.silurian.com/win32/inspect.htm
- Dave
sumber
Dependency Walker adalah alat GUI yang berguna untuk memverifikasi tidak hanya file exe tetapi juga file DLL. File DLL atau EXE 64 bit akan memiliki ikon 64 kecil di sebelahnya.
sumber
WAMD64 atau W32i atau W16 akan berada di kolom pertama.
sumber
Jika Anda menjalankan program, Anda dapat menggunakan "Process Monitor" (ProcMon) dari Sysinternal Suite .
Ini portabel dan memberi Anda banyak info tentang proses Anda.
sumber