C # soluzione, possono tutti AnyCPU progetti obiettivo, tranne uno che deve essere x86?

StackOverflow https://stackoverflow.com/questions/4093256

  •  28-09-2019
  •  | 
  •  

Domanda

Abbiamo una grande soluzione che comprende molte librerie diverse. Abbiamo appena migrato allo sviluppo su un sistema a 64 bit, e questo ci ha pensare a quello di destinazione piattaforma che dovrebbe specificare per ogni singolo progetto nella soluzione.

Al momento attuale, abbiamo solo un progetto di libreria, che i riferimenti un file DLL a 32 bit. Abbiamo fare riferimento a un Interop di questo file DLL tuttavia che riceviamo un errore quando si mira x86 come la piattaforma per questo progetto pur lasciando i rimanenti progetti nella soluzione come "Any CPU".

La mia domanda è, possiamo target Qualsiasi CPU su tutti i nostri progetti ad eccezione di quella che fa riferimento al 32 bit di interoperabilità? O dovrebbe essere proprio tutto di build per x86 in quanto questo sembra funzionare senza alcun errore.

È stato utile?

Soluzione

Sì.

tutte le DLL, ma si può essere AnyCPU.

Basta essere sicuri di fare il 86 processo, e tutte le DLL viene caricato come 32 bit.

Qual è l'errore hai trovato? Aggiungendo il messaggio di errore sarebbe probabilmente tradursi in risposte più utili.

Altri suggerimenti

penso che se tutti i tuoi di DLL sono AnyCPU, il file exe può essere sia x64 o x86. Ma, se il vostro exe è o x64 o x86 tuoi file .dll non può essere l'altro. Inoltre, se il .exe è AnyCPU, credo che verrà caricato in qualunque modalità è originario della macchina. Il che significa che la DLL del avuto né la modalità nativa per il sistema AnyCPU o.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top