Partager via


VCMidlTool.StructMemberAlignment Property

Definition

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

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

Property Value

A midlStructMemberAlignOption enumeration.

Attributes

Examples

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  

Remarks

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