Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
An object providing project-level access to any contained code element.
Namespace: Microsoft.VisualStudio.VCCodeModel
Assembly: Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)
Syntax
'Declaration
<GuidAttribute("2FCA4A98-5A65-4895-9FEF-1854182CEDC8")> _
Public Interface VCCodeModel _
Inherits CodeModel2
[GuidAttribute("2FCA4A98-5A65-4895-9FEF-1854182CEDC8")]
public interface VCCodeModel : CodeModel2
[GuidAttribute(L"2FCA4A98-5A65-4895-9FEF-1854182CEDC8")]
public interface class VCCodeModel : CodeModel2
[<GuidAttribute("2FCA4A98-5A65-4895-9FEF-1854182CEDC8")>]
type VCCodeModel =
interface
interface CodeModel2
end
public interface VCCodeModel extends CodeModel2
The VCCodeModel type exposes the following members.
Properties
| Name | Description | |
|---|---|---|
![]() |
Attributes | Gets a collection of all of the attributes for the object. |
![]() |
Classes | Gets a collection of classes for the object. |
![]() |
CodeElements | (Inherited from CodeModel2.) |
![]() |
CodeElements | Gets a collection of code elements. |
![]() |
Delegates | Gets a collection of delegates for the object. |
![]() |
DialogClasses | Gets a collection of dialog classes. |
![]() |
DTE | (Inherited from CodeModel2.) |
![]() |
DTE | Gets the top-level extensibility object. |
![]() |
Enums | Gets a collection of enumerations for the object. |
![]() |
Functions | Gets a collection of functions for the object. |
![]() |
IDLImports | Gets the collection of Import statements from the .idl file of the parent object. |
![]() |
IDLLibraries | Gets the collection of Library elements on the object. |
![]() |
Imports | Gets the collection of #import statements for the parent object. |
![]() |
Includes | Gets the collection of #include statements for the object. |
![]() |
Interfaces | Gets the collection of interfaces for the object. |
![]() |
IsCaseSensitive | (Inherited from CodeModel2.) |
![]() |
IsCaseSensitive | Gets a value indicating whether a code element is case-sensitive. |
![]() |
IsSynchronized | Determines whether VCCodeModel is in sync with the source code for the solution. |
![]() |
Language | (Inherited from CodeModel2.) |
![]() |
Language | Gets the programming language used to author the code. |
![]() |
Macros | Gets the collection of macros (#define statements) for the object. |
![]() |
Maps | Gets the collection of maps for the object. |
![]() |
Namespaces | Gets the collection of namespaces for the object. |
![]() |
Parent | (Inherited from CodeModel2.) |
![]() |
Parent | Gets the immediate parent object of a given object. |
![]() |
Structs | Gets the collection of structure elements for the object. |
![]() |
Typedefs | Gets the collection of Typedef elements for the object. |
![]() |
Unions | Gets the collection of Union elements for the object. |
![]() |
Usings | Gets the collection of #using elements for the object. |
![]() |
Variables | Gets the collection of variables for the object. |
Top
Methods
| Name | Description | |
|---|---|---|
![]() |
AbortTransaction | Cancels the current transaction. |
![]() |
AddAttribute(String, Object, String, Object) | (Inherited from CodeModel2.) |
![]() |
AddAttribute(String, Object, String, Object) | Creates a new attribute code construct and inserts the code in the correct location. |
![]() |
AddClass(String, Object, Object, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddClass(String, Object, Object, Object, Object, vsCMAccess) | Creates a new class code construct and inserts the code in the correct location. |
![]() |
AddDelegate(String, Object, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddDelegate(String, Object, Object, Object, vsCMAccess) | Creates a new delegate code construct and inserts the code in the correct location. |
![]() |
AddEnum(String, Object, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddEnum(String, Object, Object, Object, vsCMAccess) | Creates a new enumeration code construct and inserts the code in the correct location. |
![]() |
AddFunction(String, Object, vsCMFunction, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddFunction(String, Object, vsCMFunction, Object, Object, vsCMAccess) | Creates a new function code construct and inserts the code in the correct location. |
![]() |
AddIDLImport | Adds a new import statement to a specific .idl file. |
![]() |
AddIDLLibrary | Adds a new library statement to a specific .idl file. |
![]() |
AddImport | Adds a #import element to a specific file. |
![]() |
AddInclude | Adds a #include element to a specific file. |
![]() |
AddInterface(String, Object, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddInterface(String, Object, Object, Object, vsCMAccess) | Creates a new interface code construct and inserts the code in the correct location. |
![]() |
AddMacro | Adds a #define element to a specific file. |
![]() |
AddMap | Adds a map entry to the object. |
![]() |
AddNamespace(String, Object, Object) | (Inherited from CodeModel2.) |
![]() |
AddNamespace(String, Object, Object) | Creates a new namespace code construct and inserts the code in the correct location. |
![]() |
AddStruct(String, Object, Object, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddStruct(String, Object, Object, Object, Object, vsCMAccess) | Creates a new structure code construct and inserts the code in the correct location. |
![]() |
AddTypedef | Adds a typedef element to a specific file. |
![]() |
AddUnion | Adds a union element to the VCCodeModel object. |
![]() |
AddUsing | Adds a #using element to a specific file. |
![]() |
AddVariable(String, Object, Object, Object, vsCMAccess) | (Inherited from CodeModel2.) |
![]() |
AddVariable(String, Object, Object, Object, vsCMAccess) | Creates a new variable code construct and inserts the code in the correct location. |
![]() |
CodeElementFromFullName | Gets a collection of the specified code elements for the object. |
![]() |
CodeElementFromFullName2 | Gets a collection of the specified code elements for the object. It is identical to CodeElementFromFullName, except that it ignores namespaces during lookup. |
![]() |
CodeTypeFromFullName(String) | (Inherited from CodeModel2.) |
![]() |
CodeTypeFromFullName(String) | Returns a code element based on a fully qualified name. |
![]() |
CodeTypeFromFullName2 | Returns a code element based on a fully qualified name. It is identical to CodeTypeFromFullName except that it will attempt typedef resolution. |
![]() |
CommitTransaction | Commits the current transaction for the object. |
![]() |
CreateCodeTypeRef(Object) | (Inherited from CodeModel2.) |
![]() |
CreateCodeTypeRef(Object) | A CodeTypeRef object based on the data type indicator passed. |
![]() |
DotNetNameFromLanguageSpecific(String) | (Inherited from CodeModel2.) |
![]() |
DotNetNameFromLanguageSpecific(String) | Translates the namespace to a .NET form. |
![]() |
ElementFromID(String) | (Inherited from CodeModel2.) |
![]() |
ElementFromID(String) | Not implemented. |
![]() |
IsValidID(String) | (Inherited from CodeModel2.) |
![]() |
IsValidID(String) | Returns whether a specified name is a valid programmatic identifier for the current language. |
![]() |
LanguageSpecificNameFromDotNet(String) | (Inherited from CodeModel2.) |
![]() |
LanguageSpecificNameFromDotNet(String) | Translates from the fully qualified name to an unmanaged namespace form. |
![]() |
Remove(Object) | (Inherited from CodeModel2.) |
![]() |
Remove(Object) | Removes the specified project from the solution. |
![]() |
RemoveEx | Removes the specified project from the solution. |
![]() |
StartTransaction | Begins a transaction. |
![]() |
Synchronize() | (Inherited from CodeModel2.) |
![]() |
Synchronize() | Synchronizes all code model objects in the solution with edits made to source files. |
![]() |
SynchronizeCancellable | Displays a dialog box that has a progress bar. The user can cancel waiting and unblock the thread. |
![]() |
SynchronizeFiles | Ensures that the FileCodeModel property on a project file is not null. |
![]() |
ValidateMember | Validates that the proposed name is a valid C++ name for the kind given in the context of the parent object. |
Top
Remarks
The VCCodeModel object provides code model functionality to various languages supported by Visual Studio (including Visual C++) at the project level.
Primarily, this object is used to find any code element accessible within a project (given a fully-qualified name). In addition, the object specifies the programming language in which the project is written.
Hinweis
A large part of the functionality of this object is provided by the Visual Studio CodeModel2 object.
When using a VCCodeModel object within a managed project, include Microsoft.VisualStudio.VCCodeModel.dll as a reference. For more information about adding references to a managed project, see How to: Add or Remove References in Visual Studio.
See How to: Compile Example Code for Visual C++ Code Model Extensibility for information about how to compile and run this sample.
Examples
This function returns the VCCodeModel object representing the first project in a solution.
Function GetVCCodeModel() As VCCodeModel
GetVCCodeModel = Nothing
Dim codeModel As CodeModel
Dim vcCodeModel As VCCodeModel
Dim solution As Solution
solution = DTE.Solution
If (solution Is Nothing) Then
MsgBox("A Solution is not open")
Exit Function
Else
If (DTE.Solution.Count <> 0) Then
codeModel = DTE.Solution.Item(1).CodeModel
vcCodeModel = CType(codeModel, VCCodeModel)
If (vcCodeModel Is Nothing) Then
MsgBox("The first project is not a VC++ project.")
Exit Function
Else
GetVCCodeModel = vcCodeModel
End If
End If
End If
End Function
.gif)
.gif)