Apa perbedaan antara yang berbeda Build Configuration settings
misalnya Setiap CPU, Platform Campuran, WIN32 dll di Visual Studio.
Jawaban:
Berikut tautan yang membantu menjelaskan pengaturan konfigurasi build yang ditemukan di Visual Studio dan file build-nya:
Pada dasarnya pengaturan menyatakan platform apa yang dapat dijalankan perakitan. Ketika AnyCPU dipilih, DLL yang dihasilkan ditandai sebagai dapat dijalankan di mana saja; ketika x86 dipilih, DLL yang dihasilkan ditandai sebagai hanya dapat berjalan pada sistem 32-bit dan tidak akan berjalan dalam aplikasi atau proses 64-bit (tetapi akan berjalan di Windows 64-bit;) dan seterusnya dan seterusnya.
Ini hanya menetapkan flag pada DLL yang dikompilasi - ini tidak mengubah aspek lain dari proses kompilasi sama sekali.
Seperti yang sudah dijelaskan platform lain. (yaitu X86 untuk 32 bit, x64 hanya untuk 64bit, dan 'Semua CPU' dapat berjalan di Keduanya). Saya akan berkonsentrasi Mixed Platform
dan bagaimana ini berbeda Any CPU
.
Ada Any CPU
di pengaturan tingkat proyek, di mana seperti dalam solusi dunia nyata kami memiliki sejumlah proyek di bawah satu solusi, dan ada kemungkinan beberapa proyek saya menggunakan Any CPU
, tetapi yang lain menggunakan x86
ataux64
membangun platform.
Jadi pada level solusi otomatis Mixed Platform
akan dipilih. hal ini menunjukkan bahwa selama solusi Build / Rebuild, setiap project dibangun berdasarkan platform yang mereka pilih.
Nama konfigurasi build tidak terlalu berarti - mereka berkembang biak jika Anda memiliki proyek C ++ dan C # dalam solusi yang sama (dan bahkan lebih buruk lagi jika Anda memiliki proyek seluler juga), karena berbagai jenis proyek menggunakan nama konfigurasi yang berbeda, jadi Anda mengakhirinya dengan banyak dari mereka.
Kami mencoba untuk terus menghapus semua konfigurasi yang tidak kami gunakan, tetapi terkadang itu kerja keras ketika Anda menambahkan proyek baru, konfigurasi yang tidak diinginkan akan ditambahkan kembali ke solusi.
Rekomendasi saya adalah memutuskan konfigurasi apa yang Anda butuhkan (dengan melihat pengaturan sebenarnya di dalamnya), dan kemudian menghapus yang lainnya.
Dari: posting ini. https://social.msdn.microsoft.com/forums/vstudio/en-US/81c72e8b-6335-4bf4-b7c0-b5c322edcaee/mixed-platforms-vs-any-cpu
Ketika semua proyek dalam solusi memiliki tipe yang sama (misalnya proyek C # / VB) konfigurasi solusi akan cocok persis dengan konfigurasi proyek. Setelah Anda memiliki proyek dalam solusi yang memiliki konfigurasi / platform yang tidak cocok, Visual Studio membuat konfigurasi tingkat solusi "Platform Campuran / Debug" dan mungkin "Platform / Rilis Campuran". Konfigurasi ini hanyalah pemetaan ke konfigurasi tingkat proyek individu.
Misalnya, jika Anda memiliki project C # dan project C ++, biasanya "Mixed Platforms / Debug" akan dipetakan ke "Semua CPU / Debug" untuk project C # dan "Win32 / Debug" untuk project C ++.