Oprette reference til DLL i Visual Studio

Tags:    dll visual-studio references

Jeg har et vildt underligt problem i Visual Studio omkring en 32bit DLL vs. 64bit


Jeg højreklikker på references og siger "Add reference" og peger ned på C:\Windows\Microsoft.NET\Framework64\v4.0.30319\System.Data.OracleClient.dll og den adder fint til projektet.

Men kigger jeg på properties bagefter på referencen, så Path til:

C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Data.OracleClient.dll

Og jeg skal bruge 64bit versionen.

Nogen som kan forklare mig hvad der går galt og hvorfor den opfører sig sådan?

Jeg kører på en 64 bit Windows 7 og alt buildes til Any Cpu. Det er Visual Studio 2010


*EDIT*

Man skal gå ind under properties på projektet og tilføje C:\Windows\Microsoft.NET\Framework64\v4.0.30319 til reference paths, og så virker det.

*EDIT




Indlæg senest redigeret d. 05.12.2012 14:31 af Bruger #9814
8 svar postet i denne tråd vises herunder
0 indlæg har modtaget i alt 0 karma
Sorter efter stemmer Sorter efter dato
Er der forskel på de 2? For så vidt jeg ved så er .NET assemblies hverken x86 eller x64, men nærmere MSIL, og selve referencen du ser betyder intet.
Men når du compiler din kode, bliver .NET assemblien compilet i den korrekte arkitektur.



Jeps, der er forskel på de to - i hvertfald med denne DLL.

Men jeg har så bagefter fundet ud af, at den interne webserver kører 32-bit og så fejler mit program alligevel :-(



Jeg har oplevet det samme, tror også du kan løse det ved at smide din x64 dll ved siden af din .exe fil. Så tvinger du den til at bruge denne i stedet (så vidt jeg husker)




Hvilken DLL er det?



Hvilken DLL er det?


Som skrevet i første indlæg: "System.Data.OracleClient.dll" ;-)



Hov, undskyld, det var mig der lige sov lidt! :-)



Hov, undskyld, det var mig der lige sov lidt! :-)


Det er ok :-)

Lige pt. sidder jeg og koger over 32bit vs. 64bit problematikker. Arrrrrrg :-(



Vil sige det har jeg også mistet meget godt hår på, og ja det giver IKKE mening, men ikke mindre er det dog sandt at det kan forekomme som problematik.
Mit problem var også at jeg lavede et 64 bit dll i et 32 bit program og jeg fik de mest mystiske fejl.
Efter jeg ændrede mit program der skulle bruge DLL'en til at køre 64bit så virkede det, fra at den selv skulle finde ud af det.



t