PDA

View Full Version : [.NET] Confusione su versioni debug, realese


mto89
13-02-2010, 11:39
Ciao, in c#.net ho notato che nell'eseguibile finale, vengono integrati eventuali file come immagini icone ecc, in quanto poi eseguendo lo stesso su una macchina diversa le immagini e il resto sono correttamente visualizzati.

E' così giusto? ma allora il progetto setup a che serve se tutto viene integrato nell'exe? si chiama xCopy questa metodologia?

Altra cosa: debug crea un eseguibile non ottimizzato, mentre realese lo è, e ho notato che nella configurazione del progetto si può scegliere il profilo tra debug e realese.
Però anche se si lascia debug (di default) in realese viene comunque messo un eseguibile durante il build, è lo stesso del debug o viene fatta anche se non settata la modalità realese?

Grazie.

MarcoGG
13-02-2010, 13:44
Ciao, in c#.net ho notato che nell'eseguibile finale, vengono integrati eventuali file come immagini icone ecc, in quanto poi eseguendo lo stesso su una macchina diversa le immagini e il resto sono correttamente visualizzati.

E' così giusto? ma allora il progetto setup a che serve se tutto viene integrato nell'exe? si chiama xCopy questa metodologia?


Questo succede solo se includi le immagini come risorse. Se le carichi ( come tendo a fare sempre io ) da codice no, e hai un .exe più snello e pulito...


Altra cosa: debug crea un eseguibile non ottimizzato, mentre realese lo è, e ho notato che nella configurazione del progetto si può scegliere il profilo tra debug e realese.
Però anche se si lascia debug (di default) in realese viene comunque messo un eseguibile durante il build, è lo stesso del debug o viene fatta anche se non settata la modalità realese?


Se scegli dalla Combo "Configurazioni soluzione", direttamente nell'editor di codice, Debug, allora esegui l'exe di debug, che normalmente non va poi distribuito. Se scegli Release, e non hai ancora fatto alcun "Compila", VS prima va a creare la cartella di Release in bin, e poi ne esegue l'exe.
Se non scegli mai Release durante la scrittura e i test del codice, VS non creerà mai la cartella Release fino al momento in cui farai la prima build.
Se infine fai "Compila", l'exe in Release viene sovrascritto.
In ogni caso l'exe di Debug non è mai lo stesso della Release.