Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
Export (0) Print
Expand All

VCCodeMacro Interface

An object representing a macro (#define statement) code element in the source code of a solution.

Namespace:  Microsoft.VisualStudio.VCCodeModel
Assembly:  Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)

[GuidAttribute("F3F444D1-E125-4910-871B-1533F6F70BEC")]
public interface VCCodeMacro

The VCCodeMacro type exposes the following members.

  NameDescription
Public propertyChildrenGets a collection of objects contained within this code construct.
Public propertyCodeModelGets the VCCodeModel for the project.
Public propertyCollectionGets the collection containing the object supporting this property or contained within this code construct.
Public propertyCommentGets or sets the comment associated with the code element.
Public propertyDisplayNameGets the full name of the object.
Public propertyDTEGets the top-level extensibility object.
Public propertyEndPointGets the edit point that is the location of the end of the code item.
Public propertyEndPointOfGets the end point of the object.
Public propertyExtenderGets the requested Extender object if it is available for this object.
Public propertyExtenderCATIDGets the Extender category ID (CATID) for the object.
Public propertyExtenderNamesGets a list of available Extenders for the object.
Public propertyFileGets the file where this object is defined.
Public propertyFullNameGets the full path and name of the object's file.
Public propertyInfoLocationGets the capabilities of the code model.
Public propertyIsCaseSensitiveGets a value indicating whether a code element is case-sensitive.
Public propertyIsCodeTypeGets a value indicating whether a CodeType object can be obtained from this object.
Public propertyIsInjectedGets a value indicating whether a code element has been injected by an attribute or macro expansion.
Public propertyIsReadOnlyGets a value indicating whether the file containing the object is read-only.
Public propertyIsZombieGets a value indicating whether the object exists.
Public propertyKindGets an enumeration indicating the type of object.
Public propertyLanguageGets the programming language used to author the code.
Public propertyLocationGets the location of the object declaration.
Public propertyNameGets or sets the name of the object.
Public propertyParametersGets a collection of parameters for this item.
Public propertyParentGets the immediate parent object of a given object.
Public propertyPictureGets a picture automation object to be used as an icon in the user interface.
Public propertyProjectGets the Project associated with the object.
Public propertyProjectItemGets the ProjectItem object associated with the given object.
Public propertyReferencesNot currently implemented.
Public propertyStartPointGets a TextPoint object that defines the beginning of the code item.
Public propertyStartPointOfGets the start point of the object.
Public propertyValueGets or sets the data for the object.
Top

  NameDescription
Public methodAddParameterCreates a new parameter code construct and inserts the code in the correct location.
Public methodGetEndPointGets a TextPoint object that marks the end of the code element definition.
Public methodGetStartPointGets a TextPoint object that defines the beginning of the code element definition.
Public methodIsSelfDetermines if the specified code element is the same as another code element.
Public methodRemoveParameterRemoves a parameter from the argument list.
Top

The VCCodeMacroobject represents the #define code element. Primarily, the object is used to access or modify the elements of an existing macro.

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

This example retrieves the first VCCodeMacro object of the current solution and displays it in a message box. It assumes a default MFC project is open.

Sub GetFirstMacro()
    Dim vcCM As VCCodeModel
    Dim vcMacro As VCCodeMacro
    vcCM = DTE.Solution.Item(1).CodeModel
    vcMacro = vcCM.Macros.Item(1)
    MsgBox(vcMacro.DisplayName)
End Sub
Show:
© 2015 Microsoft