Why is a program compiled in Delphi XE almost 2 times larger than in Delphi 7?

There is a very small program. When I compile it in Delphi 7, the size is 590 kb. It is worth compiling this same program in Delphi XE, so it immediately becomes 2 times larger in size - 1,200 kb.

What does Delphi XE add to the executable file that it increases in size?

Author: Kromster, 2014-05-08

1 answers

A lot of different things. Try searching on the Embarcadero website for what exactly was added. If you need to reduce the size of the executable file, add the following to the project file:

programm MyProg;

{$IFNDEF DEBUG}
  {$WEAKLINKRTTI ON}        // если вам не нужны новые возможности RTTI!
  {$RTTI EXPLICIT METHODS([]) FIELDS([]) PROPERTIES([])}    // если вам не нужны новые возможности RTTI!
{$ENDIF}

uses
...
  Windows;

{$IFNDEF DEBUG}
  {$SetPEFlags IMAGE_FILE_RELOCS_STRIPPED} // Удаление из exe таблицы релокаций.
  {$SetPEFlags IMAGE_FILE_DEBUG_STRIPPED} //  Удаление из ехе Debug информации
  {$SetPEFlags IMAGE_FILE_LINE_NUMS_STRIPPED} // Удаление из exe информации о номерах строк
  {$SetPEFlags IMAGE_FILE_LOCAL_SYMS_STRIPPED} // Удаление local symbols
  {$SetPEFlags IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP} //При запуске exe с компакта, флэшки, других извлекаемых устройств, считать exe в свап и запустить оттуда. Полезно, если нужно запустить программу с компакта, а потом попросить вставить другой...
  {$SetPEFlags IMAGE_FILE_NET_RUN_FROM_SWAP} // Аналогично предыдущей, только для сетевых дисков
  {$SetPEFlags IMAGE_FILE_EXECUTABLE_IMAGE}
{$ENDIF}

The file size in the Release configuration will be significantly reduced.

 5
Author: kot-da-vinci, 2014-05-08 06:05:25