installing 32 bit app on 64 bit Windows

  • Thread starter Thread starter Julie
  • Start date Start date
J

Julie

Hey, so I have a C# application that I build on 32 bit Windows XP. I
need to compile it for use on 64 bit Windows, however. It uses (COM)
DLLs that must run in 32 bit address space, so I believe my app should
also be built as a 32 bit app, right?

Up until now, I have been building it and its associated .msi
installer file to run on Windows 2000 (i.e. 32 bit), and that's worked
fine. I have never before built the app to run under 64 bit Windows
before, and I'm not sure what exactly to do.

1. For building the project itself (as opposed to the .msi) do I
select "any CPU" or x64?
2. For the .msi, do I set the target properties to x64?

I actually tried the install a few different ways, but in running it,
it crashed with the following error code: clr20r3

Thanks!
Julie
 
Julie said:
Hey, so I have a C# application that I build on 32 bit Windows XP. I
need to compile it for use on 64 bit Windows, however. It uses (COM)
DLLs that must run in 32 bit address space, so I believe my app should
also be built as a 32 bit app, right?

If you target x86, then on it's first run it will be JIT compiled to 32bit.
 
Thanks as always, Peter, for your help. Your clarification helps.

So, for the settings on the project itself, at the top it says
"Platform" and I have a choice between: "Active (Any CPU)", "Any CPU",
and "All Platforms". Does it matter what I select here?

Below, it says "Platform Target", and I assume I select "x86" here.

For the .msi properties, there's "Target Platform", and I assume I
select "x86" here.
 
Actually, this may be a dumb question, but...

I've always built the project (.exe) prior to building the .msi, but
is that really necessary? Do I really just need to build the .msi (if
deploying on another machine)?
 
I've always built the project (.exe) prior to building the .msi, but
is that really necessary? Do I really just need to build the .msi (if
deploying on another machine)?

I believe the setup project will compile your source project if the source
is out of date. In other words, SOMETHING needs to build the .exe first, but
more than likely it doesn't need to be you.
 
Back
Top