Library platform keeps switching to 64-bit Windows

2019-07-14 05:17发布

问题:

I have just installed Delphi Seattle Upgrade 1.

If I go to menu Tools\Options\Environment options\Delphi options\Library the Selected platform dropdown keeps reverting to 64-bit Windows.

After installing a lot of 3rd party packages with manual updates of the Library path, it is not funny to find out I put them all in the wrong place ;-(

I run Win32 code on a Win64 Windows 7. Only once did I build a 64-bit package, but it's been 32-bit ever since.

Anything I can/should do to fix this?

Edited to add:

  • In the project manager, all projects in the project group show target platform Win32 only.
  • In my source tree, all dproj files have <Platform value="Win32">True</Platform> and <Platform value="Win64">False</Platform> (5 out of 20 have an additional <Platform value="OSX32">False</Platform>)
  • Explicitly saving the Default Layout does not help

回答1:

One reason could be that you are building a project configured for a 64-bit platform.

I tried the following :

  • Set Library platform to 32-bit
  • Build a project, Target : 64-bit

==> Library platform automatically updated to 64-bit

Check the configuration of your project (target platform), and also all the packages used during the building process. Maybe one is set to 64-bit causing this behavior.



回答2:

No, there is nothing you can do about this. This caught me out a couple of times too. It doesn't seem to be a preference stored anywhere (or contextual based on the current project settings). The form just defaults to showing you the 64-bit Library settings when it is first opened.

The only way to fix this is to remove the mistakenly added entries from the 64-bit library and move them to the 32-bit library. If there are really a lot, you can always script this or do it in the registry rather than via the IDE's GUI.