[delphizip] Re: Source code formatting for DLLs

  • From: "Angus Johnson" <ajohnson@xxxxxxxxxx>
  • To: <delphizip@xxxxxxxxxxxxx>
  • Date: Sun, 7 Apr 2002 12:29:10 +1000

Well, I don't want to sound arrogant, after all I'm sure the Borland
software
engineers know a hell of a lot more about these things than I do, but this
seems totally illogical to me.

> And from the BCB5 help
> <quote>
> PE File Options
...
>  Image base gives your executable an image base address. If this setting
is
> turned on, internal fixes are removed from the image and the requested
load
> address of the first object in the application is set to the number you
> specify. All successive objects are aligned on 64K linear address
> boundaries. This option makes applications smaller on disk and improves
both
> load-time and runtime performance (the operating system no longer has to
> apply internal fixes).

Why on earth do they remove the base reallocation table???
What does this achieve??? For dlls, this is potential suicide.

> Although this option can greatly reduce the size of your final application
> module; it is not recommended for producing a DLL.

As a percentage of the final application/dll - "greatly reduce the size" -
this
is nonsense. Perhaps the documentation team got carried away with this.

> Do not use the default setting of 0x400000 if you intend to run your
> application on Win32s systems.

I can only presume this statement is referring specifically to dlls here
(with stripping of the .reloc section) otherwise this is again hard to
explain.

Does anyone have BCB6? Has this been fixed so dlls can be
rebased without stripping the reallocation table? And has the
documentation been changed too?

Angus J.


Other related posts: