/DYNAMICBASE
(Use address space layout randomization)
Specifies whether to generate an executable image that can be randomly rebased at load time by using the address space layout randomization (ASLR) feature of Windows. ASLR was first available in Windows Vista.
Syntax
/DYNAMICBASE
[:NO
]
Remarks
The /DYNAMICBASE
option modifies the header of an executable image, a .dll or .exe file, to indicate whether the application should be randomly rebased at load time, and enables virtual address allocation randomization, which affects the virtual memory location of heaps, stacks, and other operating system allocations. The /DYNAMICBASE
option applies to both 32-bit and 64-bit images. ASLR is supported on Windows Vista and later operating systems. The option is ignored by earlier operating systems.
By default, /DYNAMICBASE
is enabled. To disable this option, use /DYNAMICBASE:NO
. The /DYNAMICBASE
option is required for the /HIGHENTROPYVA
option to have an effect.
Because ASLR can't be disabled on ARM, ARM64, or ARM64EC architectures, /DYNAMICBASE:NO
isn't supported for these targets.
To set this linker option in Visual Studio
Open the project Property Pages dialog box. For more information, see Set C++ compiler and build properties in Visual Studio.
Select the Configuration Properties > Linker > Advanced property page.
Modify the Randomized Base Address property.