IMAGE_FILE_RELOCS_STRIPPED:
Und damit blockierst du gleich ein Sicherheitsfeature des Betriebssystems.
Dort werden (wenn aktiv) die DLLs/EXEn im
RAM willkürlich verschoben, damit mit böse Häcker in ihren Viren/Trojanern/... nicht einfach mit statischen Adressen in fremdem
RAM Programmcode umschreiben können, weil das Gewünschte dann ja jedes Mal wo anders liegt. (beliebt z.B. in Buffer Overflow Exploits)
Und für DLLs ist es auch noch fatal, wenn an dieser Adresse eine andere
DLL oder die EXE bereits geladen ist und Windows somit deine
DLL verschieben müsste, was es aber nicht mehr kann,
vor allem auch deswegen, weil kaum jemand die ImageBase definiert und 99,99% aller Delphi-DLLs und EXEn eigentlich auf der selben Adresse liegen. ($00400000))
Es geht hier aber um die Grösse einer EXE und nicht einer
DLL. Von daher ist das problemlos nutzbar und bringt den grössten Erfolg. Wenn man die Doku zu diesem Flag liest, ist klar, dass man das bei einer
DLL nicht nutzen sollte/darf.