VCProjectConfigurationProperties.WholeProgramOptimization Property

Definition

Enables cross-module optimizations by delaying code generation to link time. Exposes the functionality of the compiler's /GL (Whole Program Optimization) option.

public:
 property Microsoft::VisualStudio::VCProject::WholeProgramOptimizationTypes WholeProgramOptimization { Microsoft::VisualStudio::VCProject::WholeProgramOptimizationTypes get(); void set(Microsoft::VisualStudio::VCProject::WholeProgramOptimizationTypes value); };
public:
 property Microsoft::VisualStudio::VCProject::WholeProgramOptimizationTypes WholeProgramOptimization { Microsoft::VisualStudio::VCProject::WholeProgramOptimizationTypes get(); void set(Microsoft::VisualStudio::VCProject::WholeProgramOptimizationTypes value); };
[System.Runtime.InteropServices.DispId(741)]
public Microsoft.VisualStudio.VCProject.WholeProgramOptimizationTypes WholeProgramOptimization { [System.Runtime.InteropServices.DispId(741)] get; [System.Runtime.InteropServices.DispId(741)] set; }
[<System.Runtime.InteropServices.DispId(741)>]
[<get: System.Runtime.InteropServices.DispId(741)>]
[<set: System.Runtime.InteropServices.DispId(741)>]
member this.WholeProgramOptimization : Microsoft.VisualStudio.VCProject.WholeProgramOptimizationTypes with get, set
Public Property WholeProgramOptimization As WholeProgramOptimizationTypes

Property Value

A WholeProgramOptimizationTypes enumeration.

Attributes

Examples

[Visual Basic]

The following example code modifies the VCConfiguration object's WholeProgramOptimization property in the development environment:

' add reference to Microsoft.VisualStudio.VCProjectEngine  
Imports EnvDTE  
Imports Microsoft.VisualStudio.VCProjectEngine  

Public Module Module1  
    Sub Test()  
        Dim Test As Boolean  
        Dim prj As VCProject  
        Dim cfgs As IVCCollection  
        Dim cfg As VCConfiguration  
        Dim MyDbg As VCDebugSettings  
        prj = DTE.Solution.Projects.Item(1).Object  
        cfgs = prj.Configurations  
        cfg = cfgs.Item(1)  
        cfg.WholeProgramOptimization = True  
    End Sub  
End Module  

Remarks

It is better to set the VCConfiguration object's WholeProgramOptimization property rather than to set the compiler property of the same name and the linker's LinkTimeCodeGeneration property.

The compiler's version of this property and the linker's LinkTimeCodeGeneration property are not available via the property pages.

See How to: Compile Example Code for Project Model Extensibility for information on how to compile and run this sample.

Applies to