Saya telah menggunakan versi 64-bit Windows 7 sejak CTP dan telah mengalami beberapa masalah dengan aplikasi yang diinstal di C:\Program Files (x86)
folder. Apa tujuan dari memiliki 2 direktori File Program yang terpisah?
Setiap program yang saya instal telah masuk ke C:\Program Files (x86)
folder. Tampaknya tidak masalah jika aplikasinya 32 atau 64 bit. Mengapa aplikasi 64-bit tidak ditempatkan C:\Program Files
?
Apakah ada cara untuk mengubah default menjadi C:\Program Files
? Apakah akan mengacaukan segalanya jika saya hanya memasukkan semuanya ke dalam C:\Program Files
?
Jika memang ada manfaat memiliki folder terpisah untuk aplikasi 64 bit, sepertinya default yang lebih masuk akal akan digunakan C:\Program Files
untuk aplikasi x86 dan membuat C:\Program Files (x64)
folder baru untuk aplikasi 64-bit yang baru. Ini akan membantu menjaga kompatibilitas ke belakang. Saya bekerja sebagai pengembang perangkat lunak dan beberapa proyek saya berisi referensi jalur ke perpustakaan di bawah C:\Program Files
. Sekarang referensi tersebut rusak pada mesin Windows 7 yang telah menempatkannya C:\Program Files (x86)
. Saya bahkan mencoba mengubah lokasi target menjadi installer C:\Program Files
, tetapi itu diabaikan dan aplikasi C:\Program Files (x86)
tetap masuk .
Ini sangat menyebalkan karena saya perlu berbagi kode sumber antara mesin 32 dan 64 bit dan saya tidak ingin harus mengacaukan dengan beberapa file konfigurasi yang menetapkan jalur ke pustaka ini secara berbeda pada mesin yang berbeda.
Edit terkait variabel lingkungan: (Menggunakan hanya nilai-nilai variabel standar bahasa Inggris untuk kesederhanaan.) Pada mesin 64-bit %ProgramFiles%
akan C:\Program Files
sementara variabel baru %ProgramFiles(x86)%
akan C:\Program Files (x86)
. Jadi, jika Anda memiliki program 32-bit yang perlu menemukan jalur folder tempat ia akan diinstal, ia perlu memeriksa untuk melihat apakah program itu berjalan pada Windows versi 32-bit atau 64-bit agar untuk mengetahui variabel lingkungan mana yang digunakan. Aplikasi 32-bit apa pun yang ditulis tanpa pertimbangan ini perlu diperbarui agar berfungsi dengan benar pada mesin 64-bit. Jadi, bahkan menggunakan variabel lingkungan, kompatibilitas mundur rusak.
Juga, %ProgramFiles(x86)%
tidak ada pada Windows versi 32-bit. Jika ya, maka aplikasi 32-bit hanya dapat selalu menggunakan variabel lingkungan itu dan tidak akan memerlukan logika kondisional berdasarkan OS yang mereka jalankan.
%ProgramFiles%
variabel lingkungan akan menyelesaikan ini. Tidak yakin bagaimana ia menangani perbedaan x86 / 64bit.