VCMidlTool.StructMemberAlignment VCMidlTool.StructMemberAlignment VCMidlTool.StructMemberAlignment VCMidlTool.StructMemberAlignment Property


Gets or sets 1-, 2-, 4-, 8-, or 16-byte boundaries for struct member alignment.

 property Microsoft::VisualStudio::VCProjectEngine::midlStructMemberAlignOption StructMemberAlignment { Microsoft::VisualStudio::VCProjectEngine::midlStructMemberAlignOption get(); void set(Microsoft::VisualStudio::VCProjectEngine::midlStructMemberAlignOption value); };
[get: System.Runtime.InteropServices.DispId(57)]
[set: System.Runtime.InteropServices.DispId(57)]
public Microsoft.VisualStudio.VCProjectEngine.midlStructMemberAlignOption StructMemberAlignment { get; set; }
member this.StructMemberAlignment : Microsoft.VisualStudio.VCProjectEngine.midlStructMemberAlignOption with get, set
Public Property StructMemberAlignment As midlStructMemberAlignOption
Property Value


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

The following example modifies the compiler's StructMemberAlignment property in the integrated development environment (IDE):

[Visual Basic]

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

Public Module Module1  
    Sub Test()  
        Dim prj As VCProject  
        Dim cfgs, tools As IVCCollection  
        Dim cfg As VCConfiguration  
        Dim tool As VCCLCompilerTool  
        prj = DTE.Solution.Projects.Item(1).Object  
        cfgs = prj.Configurations  
        cfg = cfgs.Item(1)  
        tool = cfg.Tools("VCCLCompilerTool")  
        tool.StructMemberAlignment = structMemberAlignOption.alignSixteenBytes  
    End Sub  
End Module  


StructMemberAlignment exposes the functionality of the C++ compiler's /Zp (Struct Member Alignment) option, and the MIDL compiler's MIDL Property Pages: Advanced option.

Use the structMemberAlignOption enumeration to change the value of the VCCLCompilerTool property.

Use midlStructMemberAlignOption to change the value of the VCMidlTool property.

The MIDL tool does not allow 16-byte boundaries.

Applies to