Path: csiph.com!x330-a1.tempe.blueboxinc.net!usenet.pasdenom.info!aioe.org!eternal-september.org!feeder.eternal-september.org!.POSTED!not-for-mail From: Travers Naran Newsgroups: comp.lang.java.programmer Subject: Re: 64-bit gotcha Date: Sun, 04 Dec 2011 09:17:09 -0800 Organization: A noiseless patient Spider Lines: 24 Message-ID: References: <4eda8488$0$287$14726298@news.sunsite.dk> Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Injection-Date: Sun, 4 Dec 2011 17:17:12 +0000 (UTC) Injection-Info: mx04.eternal-september.org; posting-host="3xzUFUyZLIFW3EOcGdAa2w"; logging-data="26140"; mail-complaints-to="abuse@eternal-september.org"; posting-account="U2FsdGVkX19WfbqJhhavpqe9VrlFQuof" User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:8.0) Gecko/20111105 Thunderbird/8.0 In-Reply-To: Cancel-Lock: sha1:yerwfweEtuaQriejNSpN9gIHAU0= Xref: x330-a1.tempe.blueboxinc.net comp.lang.java.programmer:10490 On 03/12/2011 2:01 PM, Peter Duniho wrote: > But as with Java, you cannot call native DLLs using the wrong bitness of > a .NET program. A .NET program running as a 32-bit process can call only > 32-bit DLLs, and a .NET program running as a 64-bit process can call > only 64-bit DLLs. Other than the way that the choice is made for what > kind of bitness the program is running in, it's pretty much the same > situation. That also applies to ADO.Net drivers, as we discovered at work. "I included the Oracle .net driver in the installation package, I don't know what happened!" "Did you remember Oracle's .Net driver will attempt to open DLLs already installed in the system over the ones in the program's directory?" "..." "You're app is compiled & packaged as 32-bit but running on a laptop with 64-bit Windows 7 which already has Oracle drivers installed." ".... Ohhhhh!" So don't forget to ask what OTHER DLL's your DLL is opening.