Oppure

Loading
25/11/09 20:26
NewAge
Ho un piccolo problema: alla compilazione in modalità debug funziona tutto perfettamente, ma alla compilazione in modalità release mi da questo bellissimo errore! ( le righe in grassetto )

1>------ Inizio compilazione: Progetto: TxFilterController, Configurazione: Release Win32 ------
1>Compilazione in corso...
[b] 1>cl : warning della riga di comando D9035 : l'opzione 'clr:oldsyntax' è obsoleta e verrà rimossa in una futura versione [/b] 
[b] 1>cl : error della riga di comando D8016 : le opzioni della riga di comando '/MT' e '/clr:oldsyntax' non sono compatibili[/b]
1>Il log di compilazione è stato salvato in 'file://f:\Desktop 24 nov\TxFilterController\Release\BuildLog.htm'
1>TxFilterController - 1 errore/i, 1 avviso/i
========== Compilazione: 0 completate, 1 non riuscite, 0 aggiornate, 0 ignorate ==========


Vorrei avere una informazione: che differenza c'è tra release e debug?
Quando uso la dll che riesco ad ottenere via debug e la includo in un progetto vb.net quando lo eseguo in modalità debug tutto bene, ma in release..... c'è qualche collegamento fra queste due cose?
Ultima modifica effettuata da NewAge 25/11/09 20:27
aaa
25/11/09 20:44
HeDo
Postato originariamente da NewAge:
le opzioni della riga di comando '/MT' e '/clr:oldsyntax' non sono compatibili[/b]


beh il problema mi sebra ovvio, controlla le opzioni del linker in proprietà progetto, sicuramente sono checkate due cose incompatibili...
aaa
26/11/09 12:43
NewAge
Il problema è che se tolgo /clr poi mi restituisce questo errore:

1>f:\desktop 24 nov\txfiltercontroller\stdafx.h(7) : fatal error C1190: il codice gestito interessato richiede un'opzione '/clr'



la riga 7 è:

#using <mscorlib.dll>

aaa
26/11/09 13:03
NewAge
Ho risolto, /mt significa multi thread, ma il mio programma essendo una dll dovevo usare /md, multi thread dll

poi devo attivare clr:oldsintax ma durante la compilazione mi dice che la funzione verà eliminata alla prissima versione, ma continuerà a funzionare comunque il mio programma, vero?
aaa
26/11/09 13:11
HeDo
Postato originariamente da NewAge:

Ho risolto, /mt significa multi thread, ma il mio programma essendo una dll dovevo usare /md, multi thread dll

poi devo attivare clr:oldsintax ma durante la compilazione mi dice che la funzione verà eliminata alla prissima versione, ma continuerà a funzionare comunque il mio programma, vero?


sicuramente verrà eliminata in una prossima versione vuol dire che quello switch è obsoleto, cioè inutile o superfluo o soppiantato da altri switch... devi leggerti accuratamente la documentazione dello switch sull'msdn :)
aaa