1

I am getting the following error when i build the MSI Package.

Oracle.DataAccess.dll' targeting 'AMD64' is not compatible with the project's target platform 'x86' when creating a msi package

My environment is.

1. Visual studio 2008, oracle 64 bit client.
2. i even made the target platform to be AnyCpu.

Note: It Works fine for X86

Any solutions or workarounds to make it work.

user673700
  • 11
  • 1
  • 3
  • Have you tried using 'x64' target platform? – Mike Park Mar 23 '11 at 19:07
  • Yup i tried it. it shows error related to system.web.dll data.dll and one more dll which i donot remenber. Basically the project itself doesnot build when i change that to X64. But it works fine for X86 – user673700 Mar 23 '11 at 19:14
  • http://stackoverflow.com/questions/5229768/c-compiling-for-32-64-bit-or-for-any-cpu might help a bit. I think you have to compile specifically for x64 for it to run the 64bit assemblies. So maybe post the exceptions you get from using `x64` as the target? – Mike Park Mar 23 '11 at 19:24
  • @climbage: that link doesnot solve my problem, because when i try to build it in X86 or AnyCpu it is working fine and when i do that in X64 it is not working. Now when i am creating the package based on the target platform for X86 or AnyCpu, i get the above error. i cannot create a package with X64 since the project itself doesnot build. – user673700 Mar 23 '11 at 19:30
  • Alright. I'm going to concede that this is beyond me. Good luck – Mike Park Mar 23 '11 at 19:32

1 Answers1

1

You need to get the x86 oracle client, then you can use all x86 components. Or you need to fix the compile to compile in x64, then you can use all x64 components.

Or you could try setting the importing of dependencies to off within msi, which might work, but I don't recommend it.

aflat
  • 4,329
  • 1
  • 20
  • 23