2011-04-16 14 views
7

Ho una soluzione di Visual Studio 2010 con progetti 40-ish in esso (C# + one C++/CLI). Ho configurato Visual Studio in modo tale che costruisca l'intera soluzione prima di iniziare il debug.In Visual Studio, come rendere la build incrementale altrettanto veloce della build innescata da debug-session?

Supponiamo ora di modificare il codice per un progetto "foglia" da cui nessun altro progetto dipende. Quando costruisco la soluzione in modo esplicito incrementale (F6 o F7), vedo una linea di output di build per ogni progetto nella mia soluzione. Tuttavia, i progetti aggiornati non vengono ricompilati. Ad esempio, non vedi gli avvisi per i progetti. Ci vuole tempo (forse 5-10 secondi).

Ora supponiamo di modificare nuovamente lo stesso file e di avviare il debug (F5). Ora succede qualcosa di diverso. Solo il progetto modificato viene ricompilato (impiega 1 secondo circa) e quindi il debug inizia quasi istantaneamente.

Sembra che Visual Studio abbia due strategie per la build incrementale e quella ottimizzata migliore sembra essere disponibile solo come sottoprodotto di una sessione di debug.

Domanda:

C'è un modo per invocare questa strategia di build più ottimizzato manualmente, senza avviare una sessione di debug?

+0

@BoltClock: Oh, immagino che dipenda dal profilo. Io scelgo sempre lo schema di tastiera C++, lì F7 è la build incrementale. (Risolto il problema) –

+0

Oh, abbastanza giusto ... – BoltClock

risposta

2

Quando si esegue il debug, viene creato solo il progetto che verrà sottoposto a debug. Quando costruisci la soluzione, crea tutti i progetti nella soluzione. Ci sono controlli coinvolti in ogni progetto anche quando non viene compilato nulla. Questi passaggi nel processo di generazione, anche quando non viene eseguita alcuna azione di compilazione, sono i motivi per cui è necessario più tempo per creare la soluzione.

Se vai in Strumenti-> Opzioni ... e guardare sotto Progetti e soluzioni -> costruire e gestire c'è un'impostazione chiamata MSBuild progetto di costruzione di uscita verbosità impostazione a Normale o superiore dovrebbe darti qualche informazione in più su cosa sta succedendo quando costruisci contro debug. Dovrai mostrare la finestra Output e impostarla per mostrare l'output Build per vedere le informazioni da quell'impostazione.

È possibile creare il progetto corrente premendo Maiusc + F6, questo dovrebbe avere la stessa velocità.

Problemi correlati