/DYNAMICBASE
(Randomisierung des Adressraumlayouts verwenden)
Gibt an, ob ein ausführbares Bild generiert werden soll, das zur Ladezeit zufällig neu basiert, indem das AsLR-Feature (Address Space Layout Randomization) von Windows verwendet wird. ASLR war zuerst in Windows Vista verfügbar.
Syntax
/DYNAMICBASE
[:NO
]
Hinweise
Mit /DYNAMICBASE
der Option wird die Kopfzeile eines ausführbaren Images, einer .dll oder .exe Datei geändert, um anzugeben, ob die Anwendung zur Ladezeit zufällig neu basiert, und ermöglicht die Randomisierung der virtuellen Adresszuweisung, die sich auf den virtuellen Speicherort von Heaps, Stapeln und anderen Betriebssystemzuordnungen auswirkt. Die /DYNAMICBASE
Option gilt sowohl für 32-Bit- als auch für 64-Bit-Bilder. ASLR wird unter Windows Vista und höheren Betriebssystemen unterstützt. Die Option wird von früheren Betriebssystemen ignoriert.
Standardmäßig ist /DYNAMICBASE
aktiviert. Um diese Option zu deaktivieren, verwenden Sie /DYNAMICBASE:NO
. Die /DYNAMICBASE
Option ist erforderlich, damit die /HIGHENTROPYVA
Option wirksam wird.
Da ASLR auf ARM-, ARM64- oder ARM64EC-Architekturen nicht deaktiviert werden kann, /DYNAMICBASE:NO
wird für diese Ziele nicht unterstützt.
So legen Sie diese Linkeroption in Visual Studio fest
Öffnen Sie das Dialogfeld Eigenschaftenseiten des Projekts. Weitere Informationen erhalten Sie unter Set C++ compiler and build properties in Visual Studio (Festlegen der Compiler- und Buildeigenschaften (C++) in Visual Studio).
Wählen Sie die Seite "Konfigurationseigenschaften linker>>Advanced".
Ändern Sie die Randomized Base Address-Eigenschaft .
So legen Sie diese Linkeroption programmgesteuert fest
- Siehe RandomizedBaseAddress.