La piattaforma di soluzioni attive consente di configurare una combinazione specifica di configurazioni per ciascun progetto. La piattaforma di progetto consente di definire impostazioni di configurazione specifiche per un progetto. Queste due impostazioni in realtà non dicono nulla su quale piattaforma sarà costruita la soluzione e i progetti, è solo un set di configurazione che è possibile modificare le impostazioni effettive per.
Per impostazione predefinita, l'impostazione x64 imposta il progetto da compilare specificatamente per x64, ma è modificabile nelle proprietà del progetto tramite la proprietà Target di progetto Platform (anche se sarebbe molto confuso cambiare la destinazione per un set di configurazione esistente in essere nient'altro che il suo nome).
La proprietà di Platform di ogni progetto è l'impostazione utilizzata per indicare per quale piattaforma è stato compilato l'assembly del progetto. Un'impostazione di AnyCPU è l'impostazione consigliata se quel progetto non ha alcuna dipendenza dai componenti che richiedono una piattaforma specifica per funzionare.
L'impostazione AnyCPU farà sì che l'assemblea sia JIT: ed a
- x86 su piattaforme a 32 bit
- x64 su 64 piattaforme bit
Vedere this question per ulteriori informazioni.
Come per l'esempio, impostando la piattaforma di soluzione attiva su x64, la piattaforma di progetto su x86 e la destinazione del progetto su x64 significherebbe che quando si seleziona la configurazione della soluzione l'assembly del progetto sarebbe costruito su JIT solo a 64 bit, causando un errore se hai provato ad eseguirlo su una piattaforma a 32 bit.
L'impostazione x64 deve essere utilizzata se si ha una dipendenza da una risorsa solo a 64 bit, ad esempio una dll a 64 bit. Corrispondentemente l'impostazione x86 dovrebbe essere usata se si ha una dipendenza da una risorsa solo a 32 bit.
Le impostazioni del Configuration Manager possono essere utilizzate per modificare il modo in cui i progetti vengono creati, ad esempio utilizzare diversi assembly di riferimento per x86/x64 o anche per debug/release, ad esempio in this question.Il set di configurazione è rappresentato come variabili che possono essere utilizzate all'interno della configurazione di build per controllare cosa includere e quali build eseguire per una configurazione specifica. Dai un'occhiata all'interno di un file di progetto con il blocco note e vedrai come viene utilizzato.
Folle complessità, quando sembra sufficiente avere solo due switch nelle proprietà del progetto (x64 | x86 | Qualsiasi CPU). – SerG