The little bit that I have tested on this shows the following:
1) It will only run in the 64Bit mode if you set the platform to 64bit (which changes a compiler switch - I belive.)
2) When a call is made to code that was compiled as 32bit (either because the platform was not set to 64bit or it is COM) WOW64 kicks in - for the new (newly loaded) assembly.
HTH

Signature
David Williams, VB.NET MVP
> Hi,
>
[quoted text clipped - 8 lines]
> tia
> andrew
Joshua Williams - 09 Jul 2004 06:16 GMT
I wrote a blog entry on this topic, you can find it at:
http://blogs.msdn.com/joshwil/archive/2004/03/11/88280.aspx
-josh [MS]
> The little bit that I have tested on this shows the following:
>
[quoted text clipped - 16 lines]
> > tia
> > andrew
Bruno Jouhier [MVP] - 10 Jul 2004 12:40 GMT
> The little bit that I have tested on this shows the following:
>
> 1) It will only run in the 64Bit mode if you set the platform to 64bit (which changes a compiler switch - I belive.)
>
> 2) When a call is made to code that was compiled as 32bit (either because the platform was not set to 64bit or it is COM) WOW64 kicks in - for the new
(newly loaded) assembly.
Not sure this is right. From reading Joshua's blog and from my own
experience it seems that:
1) It will run in 64 bit mode if you set the platform switch to IA64 (on
Itanium), x64 (AMD 64, IA32e) or MSIL. If will run in the WOW64 if the
platform switch was x86
2) If the process is started in 64 bit mode and if you try to load a 32-bit
only DLL (managed or non managed), you will get a BadImageFormatException.
The process will not switch magically to WOW64 at the time of the call
(would be really hard), you have to mark it as 32-bit only (with the
platform compiler switch) so that it starts in the WOW64.
Note: If the 32-bit DLL is loaded statically (listed in the dependencies of
your EXE), VS 2005 should be smart enough to detect this and should compile
your EXE with the x86 platform flag, but this is only a guess, I have not
tested it. If your DLL is loaded dynamically, VS 2005 won't be able to guess
and you have to mark your EXE explicitly as x86.
Bruno.
> HTH
>
[quoted text clipped - 10 lines]
> > tia
> > andrew