Advanced Compiler Settings Dialog Box (Visual Basic)
Applies to: Visual Studio Visual Studio for Mac
Note
This article applies to Visual Studio 2017. If you're looking for the latest Visual Studio documentation, see Visual Studio documentation. We recommend upgrading to the latest version of Visual Studio. Download it here
Use the AdvancedCompiler Settings dialog box of the Project Designer to specify the project's advanced build-configuration properties. This dialog box applies to Visual Basic projects only.
To access this dialog box
In Solution Explorer, choose a project node (not the Solution node).
On the Project menu, click Properties. When the Project Designer appears, click the Compile tab.
On the Compile Page, Project Designer (Visual Basic), select the Configuration and Platform. In simplified build configurations, the Configuration and Platform lists are not displayed. For more information, see How to: Set debug and release configurations.
Click Advanced Compile Options.
Note
Your computer might show different names or locations for some of the Visual Studio user interface elements in this article. You may be using a different edition of Visual Studio or different environment settings. For more information, see Personalize the IDE.
Optimizations
The following options specify optimizations that can in some cases make a program file smaller, make a program run faster, or speed up the build process.
Remove integer overflow checks
This check box is cleared, by default, to enable integer overflow checking. Select this check box to remove integer overflow checking. If you select this check box, integer calculations might be faster. However, if you remove overflow checking and data type capacities overflow, incorrect results might be stored without an error being raised.
If overflow conditions are checked and an integer operation overflows, an OverflowException exception is thrown. If overflow conditions are not checked, integer operation overflows don't throw an exception.
Enable optimizations
This check box is cleared, by default, to disable compiler optimizations. Select this check box to enable compiler optimizations. Compiler optimizations make your output file smaller, faster, and more efficient. However, because optimizations cause code rearrangement in the output file, compiler optimizations can make debugging difficult.
DLL base address
This text box displays the default DLL base address in hexadecimal format. In Class Library and Control Library projects, you can use this text box to specify the base address to be used when the DLL is created.
Generate debug info
Select None, Full, or pdb-only from the list. None specifies that no debugging information be generated. Full specifies that full debugging information be generated, and pdb-only specifies that only PDB debugging information should be generated. The default value for this option is Full.
Compilation Constants
Conditional compilation constants have an effect similar to that of using a #Const preprocessor directive in a source file, except that constants defined are public and apply to all files in the project. You can use conditional compilation constants together with the #If...Then...#Else directive to compile source files conditionally. See Conditional Compilation.
Define DEBUG constant
By default, this check box is selected, specifying that a DEBUG constant be set.
Define TRACE constant
By default, this check box is selected, specifying that a TRACE constant be set.
Custom constants
Enter any custom constants for your application in this text box. Entries should be delimited by commas, using this form: Name1="Value1",Name2="Value2",Name3="Value3".
Other Settings
Generate serialization assemblies
This setting specifies whether the compiler will create XML serialization assemblies. Serialization assemblies can improve the startup performance of XmlSerializer if you've used that class to serialize types in your code. The default value for this option is Auto. Auto specifies that serialization assemblies be generated only if you've used XmlSerializer to encode types in your code to XML. Off specifies that serialization assemblies never be generated, regardless of whether your code uses XmlSerializer. On specifies that serialization assemblies always be generated. Serialization assemblies are named TypeName
.XmlSerializers.dll.